我在magento 1.7.0.2中创建了一个自定义模块,可以完成两件事。好吧,目前它做了一件事,这就是为什么我在这里。
它成功做的是通过sku对我的分组产品的相关产品进行排序。
但是,我也试图覆盖模板文件,但它无法正常工作。我有10个小时不间断进入这个。
我想用groupedproductfilter / product / view / type / grouped.phtml替换catalog / product / view / type / grouped.phtml。
等/模块/ Lightsnholsters_GroupedProductFilter.xml
<config>
<modules>
<Lightsnholsters_GroupedProductFilter>
<active>true</active>
<codePool>local</codePool>
</Lightsnholsters_GroupedProductFilter>
</modules>
</config>
Lightsnholsters / GroupedProductFilter的/ etc / config.xml中
<config>
<modules>
<Lightsnholsters_GroupedProductFilter>
<version>0.1.0</version>
</Lightsnholsters_GroupedProductFilter>
</modules>
<global>
<models>
<catalog>
<rewrite>
<product_type_grouped>Lightsnholsters_GroupedProductFilter_Model_Product_Type_Grouped</product_type_grouped><!-- sort grouped products by sku -->
</rewrite>
</catalog>
</models>
<helpers>
<groupedproductfilter>
<class>Lightsnholsters_GroupedProductFilter_Helper</class>
</groupedproductfilter>
</helpers>
<blocks>
<groupedproductfilter>
<class>Lightsnholsters_GroupedProductFilter_Block</class>
</groupedproductfilter>
</blocks>
</global>
<frontend>
<layout>
<updates>
<groupedproductfilter>
<file>groupedproductfilter.xml</file>
</groupedproductfilter>
</updates>
</layout>
</frontend>
</config>
布局/ groupedproductfilter.xml
<?xml version="1.0"?>
<layout>
<catalog_product_view>
<PRODUCT_TYPE_grouped>
<reference name="product.info">
<remove name="product.info.grouped"/>
<block type="groupedproductfilter/product_view_type_grouped" name="grouped" as="product_type_data" template="groupedproductfilter/product/view/type/grouped.phtml"/>
</reference>
</PRODUCT_TYPE_grouped>
</catalog_product_view>
</layout>
layout / groupedproductfilter.xml成功删除了product.info.grouped,但是我将使用groupedproductfilter / product / view / type / grouped.phtml替换它的块在任何情况下都不会显示。我现在要做的就是回声'测试',这样我才能看到它出现然后我会从那里拿走它。
我购买的其他模块以相同的方式替换模板文件,但我正在做的那个模块无效。
非常感谢你让我朝着正确的方向前进。
答案 0 :(得分:1)
你试过setTemplate吗?
如果你这样做
<layout>
<PRODUCT_TYPE_grouped>
<reference name="product.info.grouped">
<action method="setTemplate">
<template>groupedproductfilter/product/view/type/grouped.phtml</template>
</action>
</reference>
</PRODUCT_TYPE_grouped>
</layout>
结果如预期,产品信息块将被重新编辑
如果你想重写整个页面,试试这个
<layout>
<PRODUCT_TYPE_grouped>
<reference name="product.info">
<action method="setTemplate">
<template>groupedproductfilter/product/view/type/grouped.phtml</template>
</action>
</reference>
</PRODUCT_TYPE_grouped>
</layout>
您将重新获得整个产品页面
答案 1 :(得分:0)
<?xml version="1.0"?>
<layout version="0.1.0">
<PRODUCT_TYPE_grouped>
<reference name="product.info">
<remove name="product.info.grouped"/>
<block type="groupedproductfilter/product_view_type_grouped" name="grouped" as="product_type_data" template="groupedproductfilter/product/view/type/grouped.phtml"/>
</reference>
</PRODUCT_TYPE_grouped>
</layout>
它现在忽略catalog / product / view / type / grouped.phtml并使用groupedproductfilter / product / view / type / grouped.phtml。