I have a 18 fields ACF module, full of tabs for making step configurations & gather options per group.
Also i added some conditional logic for displaying blocs options.
All that mixed, i get the same problems…
I noticed that all performances issues i get, comes from AJAX requests that timeout & behaviors associated on the client side.
Here is AN IDEA on how you could handle that for making BETTER performance with your ACF module :
On load, parse arrays of modules & instanciate them like this :
> Module is in a Tab ?
1. Yes : Is it the default TAB ?
1.1. Yes : conditionalLoad()
1.2. No : wait the tab has focus for conditionalLoad()
2. No : conditionalLoad()
THEN, conditionalLoad() check if the field is activated by the conditional logic
You can also add another layer of performance optimisation : load a module WHEN it is also in viewport (tabLoad() > conditionalLoad() > inViewportLoad())
I use flexible but also repeater fields with rows or blocs that have each SELECT field 😉 so imagine what i have…
actually i get 100+ async requests on load… from that !!
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!
© 2023 Advanced Custom Fields.