如何在opencart中显示从子类别到父类别的产品?

Aav*_*iya 10 product categories opencart

我想找到一个解决方案,但仍然没有运气.我想显示从子类别到父类别的所有产品.

我正在使用Opencart 1.5.3.1

Nac*_*cho 33

阅读完资料后,我想出来了:

在目录/ controller/product/category.php中(或者在您调用函数model_catalog_product-> getProducts的任何地方),您必须添加filter_sub_category = true:

$data = array(
    'filter_category_id' => $top_category,
    'filter_sub_category' => true,
    'sort'               => $sort,
    'order'              => $order,
    'start'              => ($page - 1) * $limit,
    'limit'              => $limit
);

$product_total = $this->model_catalog_product->getTotalProducts($data);
Run Code Online (Sandbox Code Playgroud)

如果您使用的是更高版本,请务必查看其他答案;)

  • 这真的很有帮助.简单的解决方案,对用户体验影响很大. (3认同)

jay*_*ams 7

另一种解决方案,而不是直接修改核心文件,是使用vQmod为您修改文件.这样,当您升级到新版本时,您不必重新安装您所做的任何自定义修改.

下面是您在vQmod中用于完成此操作的代码:

<?xml version="1.0" encoding="UTF-8"?>
<modification>
    <id>Display products in sub-categories while browsing a parent category</id>
    <version>1.0.0</version>
    <vqmver>2.4.0</vqmver>
    <author>Jay Williams - jay@myd3.com</author>
    <file name="catalog/controller/product/category.php">
        <operation>
            <search position="after"><![CDATA['filter_category_id' => $category_id,]]></search>
            <add><![CDATA['filter_sub_category' => true,]]></add>
        </operation>
    </file>
</modification>
Run Code Online (Sandbox Code Playgroud)

资料来源:https://gist.github.com/jaywilliams/8044763