Best way to setup CPT and with when large amount of fields and search facets

Support General Best way to setup CPT and with when large amount of fields and search facets

Viewing 1 post (of 1 total)
  • Author
    Posts
  • #50015
    TomTom
    Participant

    I am creating a directory website using Bricks that will have a number of different listing types (12 to start). There are about 200 fields (a variety of types but mainly text and select fields) that can be grouped in 35 different groups.

    Depending on the listing type certain groups of fields will not be used or displayed.

    There is also a CPT called reviews which will be related to the Listing CPT.

    I know this is a lot of fields so I am trying to build this to make adding new listings easy while still considering performance.

    Listings when displayed on the front end could also be filtered by search facets. There will also be a taxonomy for Categories.

    Considering all this what is the best way to build this out?

    I am planning to use custom tables with the field groups.

    I was thinking for the Listing having one CPT and one Listing Field Group. The fields are organized using tabs. I am assuming this offers the best performance? My one issue with this is that I have to use conditional logic on any field that needs to be hidden depending on what listing type is selected (which will be a lot). I also have to hide tabs using a code snippet.

    I was going to use Groups field and then add sub fields to make the conditional logic much easier as I can just hide the group. The problem I assume with this is that the Group and it's sub fields are just stored in one column of the table correct? Will this lead to a great decrease in performance? Will doing it this way also limit what I can use search facets on?

    I had also considered splitting the fields into different custom field groups and then creating 1 CPT for each listing type...

    I would then assign the field groups to the appropriate CPT (there by not having to worry about conditional logic on individual fields or the group field inside a field group). This way feels much messier though as listings are split apart in the Admin. While in some ways I think performance would improve since the group field is not being used I wonder about performance when combining multiple tables to display the listings in one list and with using search facets.

    Thoughts on this? Anyone see where I can approve things?

Viewing 1 post (of 1 total)
  • You must be logged in to reply to this topic.