In the plugin “Advanced Custom Fields”, repeaters and flexible contents are recursive fields. They are containers for other simple fields (text, select, …), or other recursive fields.
For instance, a flexible content can contain a files repeater. The files will then be at the third level of the ACF fields hierarchy. And, in that example, the files are the only indexable content. Neither of the 2 containers are relevant for searching.
Can I select the fields to be indexed ?
All ACF fields can be indexed, as soon as they are not containers. WPSOLR digs in the containers structures, extracts the field definitions that can be indexed and display them for selection in the screen “Indexed data”. Container fields are not shown.
WPSOLR also replaces the sub-fields instances with the field name. For instance, “color” is displayed instead of its sub-fields “_acf_0_color”,_”acf_1_color”,_”acf_2_color”.
Are all good WPSOLR features available with containers ?
Incredibly, yes indeed. Act with sub-level fields as with “normal” fields. Index, search, set a Solr type (number, string sortable, multi-valued string …), facet, even boost.
Does it work with ACF files ?
Yes, it does. ACF files, or repeated ACF files at any level, will be extracted and indexed in the post body.
Why can’t I select the ACF files for indexing?
The ACF file fields are automatically indexed with the post body, if your post WPSOLR metabox options says so.
Are they performance issues with all those recursive structures ?
Indexing will be a bit slower, as parsing through all levels takes time. But the search is not impacted at all, and continues to work as though no containers existed in your posts.