Hi,
I think that you didn't create yet any product on your website, and the "apply on" setting will load one product randomly from the database to look at the available columns of the hikashop_product table in order to fill this setting.
However, the brand name is not in the hikashop_product table, so even if you create a product and get the list of columns in the "apply on" setting, you won't be able to have the filter work on the name of the brands. You can only select the product_manufacturer_id column in there, which contains the id of the brand linked to the product, so that won't help you.
There are three ways to go about it I think:
- instead of using brands as locations, you could use a custom field of the table "product" and of the type "single dropdown". With this, the custom field column name will be available in the "apply on" setting (you still need to create one product to be able to select the columns) and you'll be able to make it work like you want.
- you could create several product custom fields. For example, one for the country selection, one for the state selection and one for the city selection. In each custom field of the type "single dropdown", you would enter the list of possible values (like the different countries where you have locations, the different states where you have locations, and the different cities where you have locations).
Then, in each product, you would select the country, state and city in these fields.
Then, you would create three filters, one for each field, with the "dynamic display" setting turned on and the type "single dropdown".
That way, on the frontend, the customer would be able to select the country/state/city and it would filter the products based on his selection.
What that "dynamic display" setting does is that instead of taking all the possible values configured in the custom field, the filter will only display the values actually selected in the products of the current listing. So when a customer doesn't have any filter selected yet and see all the products, the city filter will contain all the possible cities. However, once the customer selects a country, the system will:
1. refresh the products listing with only the products where that country is selected
2. refresh the filters so that they display only the values selected in the products that are currently listed. So for example, the state filter will only display the states of the current country which are selected in the products of the current country.
That way, the customer can then select the state, and the same thing will happen. The system will :
1. refresh the products listing with only the products where that country is selected and where the state is selected.
2. refresh the filters so that they display only the values selected in the products that are currently listed. So the city filter will only display the cities of the current country and state which are selected in the products of the current country and current state.
And the the customer only has to select the city among the cities of the current state in order to get a listing of the products in his city.
- the third way to go about it could be to use My Maps location:
www.joomunited.com/products/my-maps-location
With it, you could associate products with locations and allow for easy searches for your customers with maps, etc.
While the first solution is way simpler to setup, it is less accurate for customers. For example, you might have the location called "Italy Texas USA" (
en.wikipedia.org/wiki/Italy,_Texas
) and the location "Roma Italy" available. And if you search for "Italy" in the search field, products with both locations will show up while you likely only want products from the country named Italy.
Also, the customer can make a typo when writing the name of what he is searching. For example, the city Villeurbanne in France (
en.wikipedia.org/wiki/Villeurbanne
) where someone might wrongly write it vileurbanne or villeurbane or vileurbane which wouldn't yield any result.
Also, composed names would also be a problem. For example, if you search for "baton rouge" (
en.wikipedia.org/wiki/Baton_Rouge,_Louisiana
) in the filter, you might get results with "baton" or "rouge" in them and not only results with "baton rouge".
With My Maps, you rely on a third party extension, but it should be the best solution for simplifying the search for your customers.