如何使用Impex在Hybris中创建导航节点? 如何将类别映射到导航节点? 如何将类别登陆页面或PLP映射到导航节点? 如何建立导航栏和jsp页面之间的关系?
答案 0 :(得分:0)
在使用项目特定定义填充宏之后在import/sampledata/contentCatalogs/yourCatalog/cms-content.impex
中:
INSERT_UPDATE CMSNavigationNode;uid[unique=true];$contentCV[unique=true];name;children(uid,$contentCV)[mode=append]
;root;;root;;
##- level 1. SiteRoot -##
INSERT_UPDATE CMSNavigationNode;uid[unique=true];$contentCV[unique=true];name;parent(uid, $contentCV);links(&componentRef);&nodeRef
;SiteRootNode;;SiteRootNode;root;;SiteRootNode
##-- level 2. children of SiteRoot --##
INSERT_UPDATE CMSNavigationNode;uid[unique=true];$contentCV[unique=true];name;parent(uid, $contentCV);links(&componentRef);&nodeRef
;YOUR-SITE-NAMENavNode;;YOUR-SITE-NAME Site;SiteRootNode;;YOUR-SITE-NAMENavNode
##--- level 3. children of <YOUR-SITE-NAME>NavNode ---##
INSERT_UPDATE CMSNavigationNode;uid[unique=true];$contentCV[unique=true];name;parent(uid, $contentCV);links(&componentRef);&nodeRef
;YOUR-SITENAMECategoryNavNode;;Categories;YOUR-SITE-NAMENavNode;;YOUR-SITE-NAMECategoryNavNode
##---- level 4. children of Category Nav ----##
INSERT_UPDATE CMSNavigationNode;uid[unique=true];$contentCV[unique=true];name;parent(uid, $contentCV);links(&linkRef);&nodeRef
;FIRST-CATEGORYNavNode;;FIRST-CATEGORY;YOUR-SITE-NAMECategoryNavNode;;FIRST-CATEGORYNavNode
## entries of the above navigation nodes ##
INSERT_UPDATE CMSNavigationEntry;uid[unique=true];$contentCV[unique=true];name;navigationNode(&nodeRef);item(CMSLinkComponent.uid,CMSLinkComponent.$contentCV);
;FIRST-CATEGORYNavNodeEntry;;FIRST-CATEGORY Navigation Node Entry;FIRST-CATEGORYNavNodeFIRST-CATEGORYCategoryLink;
## links of the above navigation nodes ##
INSERT_UPDATE CMSLinkComponent;$contentCV[unique=true];uid[unique=true];name;url;&linkRef;&componentRef;target(code)[default='sameWindow']
;;FIRST-CATEGORYCategoryLink;FIRST-CATEGORY Category Link;/Open-Catalogue/FIRST-CATEGORY/c/FIRST-CATEGORY-ID;FIRST-CATEOGRYCategoryLink;FIRST-CATEGORYCategoryLink;
请注意,/c/FIRST-CATEGORY-ID
会导致该类别
有了这个id。您还必须配置页面模板
coredata/contentCatalogs/yourCatalog/cms-content.impex
(这个暗示
通常由hybris系统自动填充)
SearchResults页面,以便显示该类别中的产品。
您必须在projectNamecore中配置根类别 在春天扩展xml
<bean id="PROJECT-NAMECategorySource" parent="abstractCategorySource">
<property name="rootCategory" value="ROOT-CATEGORY-NAME"/>
</bean>
<bean id="PROJECT-NAMECategoryCodeValueProvider" parent="abstractCategoryCodeValueProvider">
<property name="categorySource" ref="PROJECT-NAMECategorySource"/>
</bean>
<bean id="PROJECT-NAMECategoryNameValueProvider" parent="abstractCategoryNameValueProvider">
<property name="categorySource" ref="PROJECT-NAMECategorySource"/>
</bean>
这样做是为了让hybris了解您的类别系统,以便能够提供正确的结果并在页面中配置PATH。
ROOT-CATEGORY
- 所有类别的父类别的主要类别;
PROJECT-NAME
- 您的项目名称;
SITE-NAME
- 您的网站名称;
如果您仔细查看项目的抽样数据中的powertoolsstore/apparelstore/electronicsstore
或更准确的cms内容impex,那么您将更容易理解。
希望它有所帮助!