在Enfinity 6.4中,我们使用重写PrimeTech墨盒的ISML模板来定制店面页面。例如,可以将自定义墨盒中的依赖项添加到"sld_ch_consumer_app“中,并通过在自定义墨盒中添加具有相同名称和层次结构的模板来替换任何Primetech ISML模板。
在Intershop7中这样的事情可能发生吗?例如,我们希望更改ProductTile.isml中ISML元素的顺序,而不覆盖页面模型。如果我们将自定义墨盒中的依赖项添加到"app_sf_responsive_cm“中,并在自定义墨盒中创建具有相同名称和文件夹层次结构的ISML模板,则系统仍然会从"app_sf_responsive_cm”加载ISML模板。
唯一能看到店面变化的方法是重写页面模型并将呈现模板名更改为"ProductTileCustom“。如下所示:

如果我们不使用自定义名称作为呈现模板,系统将首先从ProductTile.isml中加载app_sf_responsive_cm,而不是我们的定制墨盒(app_sf_a1_shop_cm)。
cartridgelist.properties中的墨盒顺序如下:
....
bc_urlrewrite_test \
bc_product_rating_orm_test \
commerce_management_b2c_component \
app_core_a1 \
app_sf_a1_shop \
app_sf_a1_shop_cm \
app_bo_a1 \
app_sf_responsive \
app_sf_responsive_cm \
app_sf_responsive_b2c \
app_sf_responsive_smb \
as_responsive \
as_a1 \是否有比重写页面模型更简单的方法来覆盖响应存储ISML模板?
发布于 2018-06-29 13:12:41
除了Bas de Groot在使用intershop studio向导重写ISML模板时提到的内容外,我还要指出,您的问题在cartridgelist.properties中的墨盒顺序错误。因此,与其:
bc_urlrewrite_test \ bc_product_rating_orm_test \ commerce_management_b2c_component \ app_core_a1 \ app_sf_a1_shop \ app_sf_a1_shop_cm \ app_bo_a1 \ app_sf_responsive \ app_sf_responsive_cm \ app_sf_responsive_b2c \ app_sf_responsive_smb \ as_responsive \ as_a1 \
您必须在这里使用此命令:
bc_urlrewrite_test \ bc_product_rating_orm_test \ commerce_management_b2c_component \ app_sf_responsive \ app_sf_responsive_cm \ app_sf_responsive_b2c \ app_sf_responsive_smb \ as_responsive \ as_a1 \ app_core_a1 \ app_sf_a1_shop \ app_sf_a1_shop_cm \ app_bo_a1 \
换句话说,您的项目墨盒必须在intershop内容之后加载
发布于 2018-06-29 11:59:50
不需要覆盖页面模型,只要覆盖ISML模板就可以了。通过执行以下操作,您可以轻松地覆盖Intershop 7中的ISML模板:
new > ISML Template。Override Existing...。open。Finish。Intershop Studio现在将自动在指定的墨盒中创建模板并纠正文件夹结构。
根据您在appserver.properties文件中的设置,在新模板出现在前端之前,您可能需要重新启动甚至重新部署应用程序服务器。
https://stackoverflow.com/questions/51099654
复制相似问题