[ 
https://issues.apache.org/jira/browse/OFBIZ-5312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13939978#comment-13939978
 ] 

Anil K Patel edited comment on OFBIZ-5312 at 3/19/14 12:04 AM:
---------------------------------------------------------------

SEO is not just about URL, it also includes setting up Meta data for the 
webpage, keeping URL alive after product is discontinued etc. This is why using 
OFBiz CMS is better then trying to just generate SEO friendly URL. 

A document you can refer to: 
https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Content+Management+How+to

Step 1: in this direction is to learn How to setup CMS managed webpage using 
OFBiz CMS. A good example to learn it is to study code in cmssite application.

Step 2: Study Website, WebsiteContent, WebsitePathAlias entity, Study code in 
org.ofbiz.content.cms.CmsEvents, observe when following controller entry in 
ecommerce component gets called
   <request-map uri="cms">
        <event type="java" path="org.ofbiz.content.cms.CmsEvents" invoke="cms"/>
        <response name="success" type="none"/>
        <response name="error" type="view" value="error"/>
    </request-map>
 
After going through all this code you will be able to setup Content as webpage, 
associate it with Website and setup WebsitePathAlias for the content. Here is 
example from my test data, 

<WebSite webSiteId="WebStore" siteName="HWM Shop Demo" productStoreId="9000" 
allowProductStoreChange="N"/>
<Content contentId="FIRST_EDITION" contentTypeId="WEB_SITE_PUB_PT" 
contentName="Webstore Site Publish Point" description="Root publish point for 
shopdemo website" statusId="CTNT_PUBLISHED"/>
<WebSiteContent webSiteId="WebStore" contentId="FIRST_EDITION" 
webSiteContentTypeId="PUBLISH_POINT" fromDate="2001-01-01 00:00:00"/>
<Content contentId="PRODUCT_WEB_PAGE" contentTypeId="DOCUMENT" 
contentName="Product Web Page" decoratorContentId="PRODUCT_PAGE_DEC" 
statusId="CTNT_PUBLISHED"/>
<WebSiteContent webSiteId="WebStore" contentId="PRODUCT_WEB_PAGE" 
webSiteContentTypeId="PRODUCT_PAGE" fromDate="2001-01-01 00:00:00"/>
<ContentAssoc contentId="FIRST_EDITION" contentIdTo="PRODUCT_WEB_PAGE" 
contentAssocTypeId="SUB_CONTENT" fromDate="2001-01-01 00:00:00"/>
<ProductContent productId="SUN_HAT" contentId="PRODUCT_WEB_PAGE" 
productContentTypeId="WEB_PAGE" fromDate="2012-01-11 12:00:00.0"/>

<WebSitePathAlias webSiteId="WebStore" pathAlias="Sun-Hat-Content-Page" 
contentId="PRODUCT_WEB_PAGE"/>

The above webpage can be accessed with following URL,
https://locahost/Sun-Hat-Content-Page

If you setup website/webpage using OFBiz cms then, there is no need of 
CatalogUrlFilter. Like code in this Jira ticket, all the code related to 
CatalogUrlFilter is not needed and should be removed from OFBiz.

Many thanks to Jacopo and Scott for helping me learn OFBiz CMS.


was (Author: anilpatel):
SEO is not just about URL, it also includes setting up Meta data for the 
webpage, keeping URL alive after product is discontinued etc. This is why using 
OFBiz CMS is better then trying to just generate SEO friendly URL. 

Step 1: in this direction is to learn How to setup CMS managed webpage using 
OFBiz CMS. A good example to learn it is to study code in cmssite application.

Step 2: Study Website, WebsiteContent, WebsitePathAlias entity, Study code in 
org.ofbiz.content.cms.CmsEvents, observe when following controller entry in 
ecommerce component gets called
   <request-map uri="cms">
        <event type="java" path="org.ofbiz.content.cms.CmsEvents" invoke="cms"/>
        <response name="success" type="none"/>
        <response name="error" type="view" value="error"/>
    </request-map>
 
After going through all this code you will be able to setup Content as webpage, 
associate it with Website and setup WebsitePathAlias for the content. Here is 
example from my test data, 

<WebSite webSiteId="WebStore" siteName="HWM Shop Demo" productStoreId="9000" 
allowProductStoreChange="N"/>
<Content contentId="FIRST_EDITION" contentTypeId="WEB_SITE_PUB_PT" 
contentName="Webstore Site Publish Point" description="Root publish point for 
shopdemo website" statusId="CTNT_PUBLISHED"/>
<WebSiteContent webSiteId="WebStore" contentId="FIRST_EDITION" 
webSiteContentTypeId="PUBLISH_POINT" fromDate="2001-01-01 00:00:00"/>
<Content contentId="PRODUCT_WEB_PAGE" contentTypeId="DOCUMENT" 
contentName="Product Web Page" decoratorContentId="PRODUCT_PAGE_DEC" 
statusId="CTNT_PUBLISHED"/>
<WebSiteContent webSiteId="WebStore" contentId="PRODUCT_WEB_PAGE" 
webSiteContentTypeId="PRODUCT_PAGE" fromDate="2001-01-01 00:00:00"/>
<ContentAssoc contentId="FIRST_EDITION" contentIdTo="PRODUCT_WEB_PAGE" 
contentAssocTypeId="SUB_CONTENT" fromDate="2001-01-01 00:00:00"/>
<ProductContent productId="SUN_HAT" contentId="PRODUCT_WEB_PAGE" 
productContentTypeId="WEB_PAGE" fromDate="2012-01-11 12:00:00.0"/>

<WebSitePathAlias webSiteId="WebStore" pathAlias="Sun-Hat-Content-Page" 
contentId="PRODUCT_WEB_PAGE"/>

The above webpage can be accessed with following URL,
https://locahost/Sun-Hat-Content-Page

If you setup website/webpage using OFBiz cms then, there is no need of 
CatalogUrlFilter. Like code in this Jira ticket, all the code related to 
CatalogUrlFilter is not needed and should be removed from OFBiz.

Many thanks to Jacopo and Scott for helping me learn OFBiz CMS.

> Proposal: URL-Generation Changes (mostly for SEO reasons but not only)
> ----------------------------------------------------------------------
>
>                 Key: OFBIZ-5312
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-5312
>             Project: OFBiz
>          Issue Type: New Feature
>          Components: specialpurpose/ecommerce
>    Affects Versions: SVN trunk
>            Reporter: Jacques Le Roux
>            Assignee: Jacques Le Roux
>            Priority: Minor
>              Labels: changes, ecommerce, friendly, seo, url
>             Fix For: SVN trunk
>
>         Attachments: OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 
> - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, 
> OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 
> - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, 
> OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, OFBiz-5312-product-ecommerce-seo-20131031.patch, 
> OFBiz-5312-product-ecommerce-seo-for-seo-branch.patch, 
> OFBiz-5312-product-ecommerce-seo.patch, SeoContextFilter.java.patch
>
>
> [This was proposed by Paul Piper in Nabble 7 months 
> ago|http://ofbiz.135035.n4.nabble.com/Proposal-URL-Generation-Changes-td4639289.html].
>  Here is quoted Paul's proposal
> {quote}
> Hey Everyone,
> over at ilscipio (www.ilscipio.com) we developed a set of functional OFBiz 
> changes that we believe the entire community could benefit from. The changes 
> have been implemented in parts in Syracus (www.syracus.net) for a while now, 
> but we figured that some of which are too crucial for ofbiz' success in the 
> long run, so we are considering the contribution (as we did with the SOLR 
> component).
> As you are probably aware, OFBiz has a pretty uncommon way of generating 
> URLs. Most of this has to do with the fact that OFBiz uses a servlet 
> (ControlServlet)  to handle all requests. The servlet is mounted at /control, 
> so that it won't interfere with other servlets. Though functionally valid, 
> this has the sideeffect that all urls are actually created on /control, which 
> is neither pretty, nor good by any measures of SEO. It also means that a few 
> 302 redirects are necessary to forward the user from / to /control/main. It 
> also makes requests more complicated, since many forwards are necessary 
> whenever somebody wants to move away from this implementation.
> Since this is hurtful to many of the implementers, I wanted to discuss 
> whether or not you guys would be interested in the changes we have made. The 
> functional changes contain:
> * Removal of /control out of all the urls
> * SEO-friendly URLS
> * Configurable product/category and other URLs
> * Frontpage mapping from /main to /
> It was tested on our end and contains all necessary improvements (Transforms, 
> Sample Configuration, Servlets & Filters) for it to be applicable.
> If interested, I would create a new JIRA ticket for this and after a few 
> minor internal discussions, we will gladly provide the rest of you with it.
> Regards,
> Paul 
> {quote}
> There is even a patch, mostly done by Jinghai Shi, that I attach here. Even 
> if it has been already used in [Syracus|http://syracus.net/] since early this 
> year, some help would be needed to test it thoroughly in OFBiz.
> Then we should discuss if it's the way to go. I believe it is. Who needs a 
> /control/ or /main by default in ecommerce urls? Would you not prefer 
> http://localhost:8080/ecommerce/ over 
> http://localhost:8080/ecommerce/control/main ?



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to