Hi Guys,
I am thinking about this for a while already. I will be touching a series of features with this request, feel free to split them if you think it's useful. Right now, I see them as a whole.
The use case that triggered this request is ecommerce shop with Product Category Fields (see problem.jpg).
In the previous Index method, the shop admin could manage all aspects of the Search Filters from Product Category Fields creation to the definitions of the Search filters. What goes where and how it is displayed.
With the introduction of the New Index, these tasks are more prone to errors if the Admin is not careful on how to define them.
That's why I think we need a way to allow the admin to manage them as before.
One simple way that I could think of, is to add a checkbox next to the Field when it is defined in a Product Category (see image1.jpg). BAsed on my Image, this checkbox will suppose to add the Material field to the Query and Create a Facet Group called "Accesorii chei si carduri" with a Facet called Material.
This approach will solve the problem of displaying the right facets for the right Product Groups (in case one product inherits product category fields from different Product Categories) and also the interface problem when trying to select an Attribute in the Query (see Image2.jpg) when the attributes have identical names (that's actually another feature request that should be handled separate from this current request. The name of the product Category should be added next to the Field Name or they should be displayed grouped as they are on the Search Filter Definition. See Image3)
Another solution would be to use the Search Filter interface and let the user define them as they previously did and just create the necessary Query and Facets files.
This solves the above issues and is also easing the transition to the New Index for solutions that are already using the Old Index and Search Filters.
Of course, there might be other implications of this as to what happens if a user manually edits the query or the facets after they have been automatically defined. But I am sure you can find ways of dealing with the technical solutions.
We have already played a bit with the automatic generation of the files using the methods and functions already implemented, and I know Nuno and his team have started something similar, but the fact that this change requires the use of some functions that are not public and also make some changes to the interfaces, makes me think this is better to be dealt with as a core functionality rather than a custom development.
It would be nice to hear the opinion of other partners and users but based on the history so far, I do not have high hopes this will happen. Therefore it's up to you to decide if this worths the effort or not. One way or the other, we will need to find a way to solve it for our projects if we want to move to the new index and keep the admins happy.
Thank you,
Adrian