ACF & PHP-API (WordPress)
Versie door Jeroen Strompf (overleg | bijdragen) op 1 aug 2022 om 09:29 (→Retrieve a post-related field)
How can you automatically manage ACF fields? In particular, fill in, delete and edit?
Not directly at database level
To start with some bad news: While ACF fields are stored in tables wp_options
or wp_postmeta
, you cannot write directly to these tables to create ACF fields. Then the 'context' is missing, eg a repeater. So you have to do it via an API call.
Two kinds of fields
There seems to be a distinction between two kinds of ACF fields and how to approach them:
- Fields that are associated with specific posts
- Fiels that are not asssociated with specific posts.
The distinction will be clear in the examples below.
As an example: The home page of a site has ID=7. It has a custom field hero text. How to fetch its value:
<?php require_once("/var/www/example.com/wp-load.php"); the_field("hero_text",7);
Output:
Eat more chips!
- Function
the_field()
displays the value of a field directly - Alternatively, function
get_field()
returns the value rather than directly displaying it.
Retrieve an option field
Let's fetch the value of a field that is available through wp-admin » Options:
- Name of the field figured out by looking up its field group at wp-admin » Custom fields » Field Groups:
webshop_country_code
- This is a scalar. Not a repeater, array or object. Just a single value
See also
Sources
- https://www.advancedcustomfields.com/resources/
- https://www.advancedcustomfields.com/resources/#functions - All PHP functions together. It's not complete, though!
- https://www.advancedcustomfields.com/resources/code-examples/