Posted on 15/05/2018 10:06:18
Hi Nicolai
Thank you for the reply and for your thoughts.
Rapido and Dynamicweb can be configured to a certain extent. It is possible to configure the Lucene index for products and the query by adding one field (ShopID), and to filter out the products based on that value, on the product list page only.The navigation is unaware of the shopID field on the products index. It would simply render all the products in the index, or rather their categories, regardless of the shop that is configured.
For this reason the navigation that deals with rendering the product categories has to be re-written, as it is now at least.This set - up will work for one website with one shop, also for more websites with one shop, but not for multiple websites and multiple shops.
The set-up that I made for a client is as follows: one dynamicweb installation with 4 websites (in the content area) and 4 shops (in the e-commerce area).
The 4 url's are: http://testhjj.hjj.dk/, http://testarmadan.hjj.dk/, http://testairconteknik.hjj.dk/, http://testbkfklima.hjj.dk/.
The solution is simply a copy of Rapido v 2.0.
Refer to case number CAS-05401-B7G3M1 CRM:00760848 for login credentials.
If you look at it now - it simply renders the same products on every shop in the navigation. If I navigate to the armadan shop for example, and choose a product category (for instance Mountain bikes) it will redirect to the test.hjj.dk. The same behavior is applicable for airkonteknik and bkfklima.
In fact the navigation should be different since each website should only show products from its own shop.
There are no parameters for the product navigation that allow choosing a data source.
As far as I saw there are two files that can be used in order to render the product navigation: BaseMegaMenu.xslt, or BaseMenuWithDropdown.xslt.
I believe that our solution is using the BaseMegaMenu.xslt. As far as I can see the issue could be solved if I had the possilibity of adding a ShopID when calling the xslt template.
Currently the call to .xslt looks like this:
@RenderNavigation(new
{
id = "topnavigation",
cssclass = "menu dw-mod dwnavigation",
startLevel = @startLevel,
ecomStartLevel = @startLevel+1,
endlevel = 5,
expandmode="all",
template = "BaseMenuWithDropdown.xslt"
});
If I had a ShopID parameter I could just add that from the master layout.
What do you suggest ?
Gheorghe