SnakeO / acf-admin-button-field

Create a button in the admin screen that will either open another URL
17 stars 3 forks source link

Injecting ACF values #1

Open PthPndr opened 7 years ago

PthPndr commented 7 years ago

Hello, I recently stumbled across your ACF field and had a question.

If I try an AJAX GET with the following it works great: /wp-admin/admin-ajax.php?action=some_action

If I try following your example and inject an ACF value nothing happens when I click the button: /wp-admin/admin-ajax.php?action=some_action&var={acf[field_5691f90569c3a]}

Admittedly, I do not have a lot of experience when it comes to AJAX and it could be entirely me but is this still the correct format for injecting ACF values?

SnakeO commented 7 years ago

You need to pull the fieldid from the ACF field. If you are in the custom fields page, click on "screen options" and then select "show field slugs" (or something along those lines). That's where you get the field* identifier.

samjco commented 7 years ago

Hey Snake!

Can you write up an full example of how the AJAX GET works with screenshots?

RURAWEB commented 6 years ago

Hello SnakeO, I'm using your plugin with ACF Pro. I need a button that open this url with some ACF field injected :

https://www.google.com/calendar/render?action=TEMPLATE&text=&dates={acf[field_5b41d7b3afe8b]}T{acf[field_5b41e65c385ae]}/{acf[event-date-start]}T{f[acf[field_5b41e65c385ae]}T{acf[field_5b41e9367f162]}&details=&location={acf[field_5b41d82496b23]}&sf=true&output=xml

But I receive an issue: Error: Syntax error, unrecognized expression: input[name=acf[field_5b41d7b3afe8b]]

What's wrong with my syntax? However I pull the field_id from the ACF field. I'm lost!

webarter commented 4 years ago

I believe the plugin is broken in that regard

webarter commented 4 years ago

got to adjust it manually

file button-v5.php in the source code, line 235

there have to be brackets in input[name="field_...."]

otherwise jquery throws exception.

so line 235 to make it work: var val = $('input[name="' + name + '"]').val();

SnakeO commented 4 years ago

Thanks, I see there was a pull request for that. I've added it into the code.