A developer built your site with Advanced Custom Fields, so each property listing, team member or product page has neat boxes for price, location, phone number and photos. Then one day the boxes are gone from the edit screen. Or they are still there, you filled them in, and nothing appears on the live page.
ACF fields not showing is really two separate problems that share a name. Fields can be missing from the editor, where you type values in, or missing from the front end, where visitors should see them. The causes barely overlap, so decide which one you have before going further.
ACF fields not showing? First, what ACF does and does not do
This explains most of what follows. ACF does two jobs. It adds input boxes to the WordPress editor according to rules you set, and it saves what you type into the database. It does not decide where those values appear on the website. That is done by the theme’s template files, or by a page builder’s dynamic content settings, which ask ACF for a value and print it in a particular spot.
So if the values are saved but not displayed, ACF has usually done its part, and the question is what the template is or is not asking for.
Problem A: the fields are missing from the edit screen
The field group’s location rules no longer match
Every field group in ACF has “Location” rules: show this group if the post type is “Property”, or if the page template is “Team page”, or if the page is the front page. If anything about the post changed so the rule no longer matches, the fields disappear from that edit screen. They still exist, and any saved values are still in the database.
Go to ACF, then Field Groups, open the group that should appear, and read its Location rules. Common mismatches:
- The rule says a specific page template, and someone switched the page to a different template.
- The rule says a post type that was renamed, or a custom post type that is now registered by a different plugin under a new name.
- The rule says “Page is equal to Home” and a new homepage was created.
- The rule uses a category or taxonomy term that was renamed or deleted.
The field group is inactive, or was never synced
Field groups can be switched off with an “Active” toggle. Check it. Separately, many developers store ACF field definitions as JSON files inside the theme, in a folder usually called acf-json. After the site moves, or the theme is replaced, those files may show up under a “Sync available” notice on the Field Groups screen. Until they are synced, or if the theme carrying them was swapped out, the field groups may not exist on this copy of the site. If you see a sync notice, that is very likely your answer, but read the next paragraph first.
Syncing replaces the database version of a field group with the file version. If someone edited the field group in the dashboard since the file was written, those edits are lost. Take a quick backup before syncing on a live site.
The field type needs ACF Pro
Repeater, Flexible Content, Gallery and Options Page fields are features of ACF Pro, not the free version. If the Pro licence lapsed and the plugin was replaced with the free version, or Pro was deactivated during a plugin clean-up, groups that depend on those field types stop working. Look at Plugins and check which version of ACF is active.
Screen Options or the block editor’s panels
Less often, the field group is hidden in the edit screen’s options. In the classic editor, open Screen Options at the top right and check the field group’s box is ticked. In the block editor, the three-dot menu leads to Preferences, where panels can be turned on and off. ACF field boxes appear below the content or in the sidebar, depending on the group’s position setting; scroll to the bottom of the editor before concluding they are gone.
Problem B: custom fields not displaying on the live site
The values are in the editor. The page does not show them. Work through these in order.
1. The template does not ask for that field
If the field is new, nobody may have added it to the template yet. Adding a field group in ACF does not change the website’s design. A developer has to edit the template, or you have to place it with a page builder’s dynamic tag. It is a common reason for custom fields not displaying, and it is not a bug, just unfinished work.
2. The field name changed
Templates ask ACF for a field by its name (for example property_price), not by its label (“Price”). If someone tidied the field group and edited the name, the template is now asking for a field that does not exist, and gets nothing back. Open the field group and compare each field’s name with what the developer used. Changing a name back usually restores the display, though values saved under the new name will need re-entering or moving.
3. The theme was updated and the template edits went with it
If the code that displays ACF fields was added directly to a theme’s files, a theme update replaces those files with the author’s originals and the custom code disappears. The fields still save, the page stops showing them. This is why developers put such changes in a child theme. If your fields vanished right after a theme update, this is the first thing to check, and our guide to editing a theme without losing changes explains the child-theme approach.
4. The template is looking at the wrong post
On archive pages, sliders, related-posts sections and anything that lists several posts, the template has to ask for each post’s field explicitly. If it asks without saying which post, ACF returns the value for the main page instead, which may be empty. The symptom is a field that shows on the single post page but not in a listing. This one needs a developer.
5. The return format does not match the template
Image, file, link and relationship fields have a “Return Format” setting: an array, a URL, or an ID. If someone changes it, a template that expected a URL might receive an array and print nothing, or print the word “Array”. Check the field’s Return Format against what the template was built for.
6. HTML inside a field is being stripped
ACF has tightened how it escapes HTML output in recent versions, for security. If a field holds an iframe, a script or other markup and the output started appearing stripped or blank after an ACF update, read the plugin’s release notes and any notice it shows in the dashboard. The fix is in the template, not in loosening security settings.
How to see whether a value is saved at all
Before blaming the template, confirm the value is really there. Open the post in the editor and look at the field. If it shows the value after a reload, it is saved. If the field is blank after reloading, the save did not work, which points back to Problem A or to a JavaScript error in the editor. For deeper checks, a developer can turn on WordPress’s debug log; our page on using WordPress debug mode explains what that involves and why it should be switched off afterwards.
Things not to do
- Do not delete and recreate a field group to “reset” it. New fields get new internal keys, and existing values may no longer be linked to them.
- Do not rename fields on a live site without knowing where each one is used.
- Do not edit the parent theme’s template files to add the field back. The next update undoes it again.
When to bring someone in
If the location rules and versions look right and the fields are still missing, or the display code lives in templates you are not comfortable editing, testing changes on a staging copy of the site is the safe route. If that is more than you want to take on, this falls under the work described on our paid wordpress bug fixing page. It helps to send the field group’s name, one post where the field is filled in, and where on the page it should appear.
Editor or front end: once you know which side the fields went missing from, the list of suspects is short.
Next in this series: WordPress Gallery Not Working? Images, Layout or Lightbox