0

我正在尝试创建一个可以列出特定类别产品的 magento 侧边栏框。

我创建了一个文件,该文件在名为 most_sold_list.phtml 的某个类别中创建产品列表,其中包含以下内容...

    <?php
        $_productCollection_1 = $this->getLoadedProductCollection();
    ?>
    <div class="link_list_with_title">
        <p class="catagory_title">Best Sellers</p>

        <ul>
        <?php foreach ($_productCollection_1 as $_product_1): ?>
            <li>
                <a href="<?php echo $_product_1->getProductUrl() ?>" title="<?php echo $_product_1->getName(); ?>"><?php echo $_product_1->getName(); ?></a>
            </li>
        <?php endforeach ?>
        </ul>
    </div>

然后我更新我的 local.xml 以包含(在<default><reference name="left">)...

    <block type="catalog/product_list" name="most_sold.leftnav" template="most_sold_list.phtml">
        <action method="setCategoryId"><category_id>18</category_id></action>
    </block>            

正如我所期望的那样,这会将块添加到页面中。但是当我转到产品页面时,我收到以下错误...

Fatal error: Cannot redeclare get_quatity_weight_string_view() (previously declared in /.../app/design/frontend/superchef/default/template/catalog/product/view.phtml:37) in /.../app/design/frontend/superchef/default/template/catalog/product/view.phtml on line 54

我已经检查过,该函数没有在其他任何地方声明,并且一旦我删除我的新块,这个错误消息就会消失。另请注意,第 54 行是函数的右大括号。

我已经尝试通过将其代码内联来完全删除该功能,但随后我得到了 magento 错误消息页面。

我能得出的唯一结论是 view.phtml 被加载了两次。我已经搜索过这个,我看到提到 zend loader 加载文件两次。

任何人都可以帮我解决这个问题,这对我来说毫无意义。

4

2 回答 2

1

我现在已经通过阅读以下内容解决了这个问题: http ://www.bwigg.com/2010/01/magento-featured-products-in-sidebar/

所以这就是我所做的,以防其他人遇到这个奇怪的问题。

更新布局 xml 文件,使块类型为“目录/导航”。

所以它现在看起来像这样......

<block type="catalog/navigation" name="most_sold.leftnav" template="most_sold_list.phtml">
            <action method="setCategoryId"><category_id>18</category_id></action>
 </block>
于 2012-11-19T20:08:31.420 回答
0
  <remove name="category.products" />
于 2013-12-27T22:47:50.370 回答