First off: wonderful plugin, I really like it. This is more of a pre-purchase question.
I’ve been a long-time user of the competition plugin. Not going to mention the name but I believe it’s the 2nd most popular metabox-related one, right after ACF.
Anyways, I’m starting a new, pretty big project for a client and by an accident, I was asked to do some tweaks on another client’s website where ACF PRO is being used. I allowed myself to look around and I really like the way ACF works visually. It’s simply perfect.
I tend to code all metaboxes programmatically and I was glad to find out it’s possible with ACF as well. I was nearly sold on making a switch over to ACF for all my future projects but… I noticed something that I’m concerned about which is related to performance & optimization.
I created a repeater field and I found out that every single field inside is actually stored as a separate meta field meaning if I create a repeater field including 4 subfields and someone creates 10 items based on that, it will result in 40 meta fields… I got scared as I was expecting a serialized data inside a single meta field to what I’m used to.
I noticed the same thing happens with the Options Page (creating a WP settings page with ACF). Every option field is actually a new record in the options table in the database. I was expecting a possibility to attach all of my option fields to a single option that would store the serialized data.
I’ve been trying to find the reason why the plugin is designed this way but with no results which is why I’m creating this very topic.
The question is: why is the approach of creating so many separate fields taken? Is there any specific reason for it? Am I missing some positives here? Why wouldn’t the repeater field data be stored serialized field but create so many meta fields creating all this bloat in the database? Why can’t I store options in a single option field instead of creating so many different option fields?
Or does it all NOT affect the performance and I’m getting it all wrong? I’d really, really like to make a switch over to ACF but this is truly holding me back.