[ https://issues.apache.org/jira/browse/OFBIZ-4412?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14135650#comment-14135650 ] mz4wheeler commented on OFBIZ-4412: ----------------------------------- Jacques, here is an example of this patch. Josip has created two mount points, setting the currency and language: "/shophr" = Croatian kuna "/shopde" = German EUR Also, assuming there is a sitemap.xml that lists all URLs with the various mount points. wget -S -O - http://www.mikrotron.hr/shophr/products/ArduinoBoards/p_10000 2>&1 | grep -i lang= <html xmlns="http://www.w3.org/1999/xhtml" lang="hr" xml:lang="hr"> wget -S -O - http://www.mikrotron.hr/shopde/products/ArduinoBoards/p_10000 2>&1 | grep -i lang= <html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de"> Google would see the LANG variable and index the page in each language. I also did this (this is what google would do): wget -S -O - http://www.mikrotron.hr/shophr/products/ArduinoBoards/p_10000 2>&1 | grep regularPrice Your Price: <span class="regularPrice">113,00 kn</span> wget -S -O - http://www.mikrotron.hr/shopde/products/ArduinoBoards/p_10000 2>&1 | grep regularPrice Ihr Preis: <span class="regularPrice">14,79 €</span> This is all with a single store. He married OFBIZ-4412 and OFBIZ-5767. > Set initial ecommerce Locale/Currency based on mount point specified in specialpurpose/ecommerce/ofbiz-component.xm > ------------------------------------------------------------------------------------------------------------------- > > Key: OFBIZ-4412 > URL: https://issues.apache.org/jira/browse/OFBIZ-4412 > Project: OFBiz > Issue Type: Improvement > Components: specialpurpose/ecommerce > Affects Versions: Trunk > Environment: Not specific > Reporter: mz4wheeler > Priority: Trivial > Labels: patch > Attachments: OFBIZ-4412.patch > > Original Estimate: 2h > Remaining Estimate: 2h > > Using the specified patch, it is now possible to set a users initial Locale (and even currency) based on the webapp mount point. This works with a single store, and does not require the use virtual hosts. This is especially useful when setting up sitemap.xml, which allows crawlers (like google) to correctly locate and traverse products and services in multiple languages. > Here is an example where "ecomclone" has been modified to Locale=fr with a mount point of "/fr". > specialpurpose/ecommerce/ofbiz-component.xml: > <!-- <init-param name="Currency" value="EUR"/> --> > <webapp name="ecommerce" > title="eCommerce" > server="default-server" > location="webapp/ecommerce" > mount-point="/ecommerce" > app-bar-display="false"> > </webapp> > <webapp name="ecomclone" > title="eCommerce Clone" > server="default-server" > location="webapp/ecomclone" > mount-point="/fr" <------- SPECIFY MOUNT > app-bar-display="false"> > <init-param name="Locale" value="fr"/> <------- SPECIFY LOCALE > </webapp> > The below sitemap.xml would allow products with the "/fr" path to be indexed in french. > <?xml version="1.0" encoding="UTF-8"?> > <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> > <url><loc>http://ofbizsite.com/ecommerce/products/10002/p_1001TANGRAMPUZ</loc></url> > <url><loc>http://ofbizsite.com/fr/products/10002/p_1001TANGRAMPUZ</loc></url> > </urlset> > The patch: > The attached patch modifies setDefaultStoreSettings in ProductEvents.java, which is called once during the initial session creation. > After a user enters the URL, they are still free to modify the language, as long as the page supports it (like the default demo store). The patch also allows the Currency to be forced as well, and it does appear to work, but should be more throughly tested. > Although this patch bypasses the requirement for multiple stores, there may be issues with other aspects of the store, like emails. However, it is no different than a user who enters your English-based ecommerce store, selects "french", and attempts a checkout. -- This message was sent by Atlassian JIRA (v6.3.4#6332) |
Free forum by Nabble | Edit this page |