0

我在 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 替换它的块在任何情况下都不会显示。我现在要做的就是回显“测试”,这样我就可以看到它出现了,然后我会从那里拿走它。

我购买了其他模块,它们以相同的方式替换模板文件,但我正在做的那个不起作用。

非常感谢你让我朝着正确的方向前进。

4

2 回答 2

1

您是否尝试过设置模板?

如果你做这样的事情

<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>

您将重写整个产品页面 整页

于 2013-11-01T23:40:16.077 回答
0

谢尔盖·古克,感谢您帮助我。我终于让它工作了。在我的布局 xml 文件中,我将其更改为这个。

<?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。

于 2013-11-02T01:56:26.563 回答