acf-admin-button-field icon indicating copy to clipboard operation
acf-admin-button-field copied to clipboard

Injecting ACF values

Open PthPndr opened this issue 8 years ago • 6 comments

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?

PthPndr avatar Jan 19 '17 22:01 PthPndr

You need to pull the field_id 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.

SnakeO avatar May 23 '17 04:05 SnakeO

Hey Snake!

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

samjco avatar May 23 '17 19:05 samjco

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!

RURAWEB avatar Jul 08 '18 19:07 RURAWEB

I believe the plugin is broken in that regard

webarter avatar Mar 10 '20 13:03 webarter

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();

webarter avatar Mar 10 '20 13:03 webarter

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

SnakeO avatar Mar 10 '20 13:03 SnakeO