opencart如何在一个页面显示所有商品?
How to display all products in a single page in opencart?
我想在主菜单中单击单个按钮时在一页中显示所有产品,并且还需要在主菜单中显示类别...
提前致谢...!
我是这样做的
控制器:ControllerProductCategory
在索引函数内替换
if (isset($this->request->get['limit'])) {
$limit = $this->request->get['limit'];
} else {
$limit = $this->config->get('config_product_limit');
}
和
if (isset($this->request->get['viewall'])) {
$limit = "";
} else if (isset($this->request->get['limit'])) {
$limit = $this->config->get('config_product_limit');
} else {
$limit = $this->config->get('config_product_limit');
}
同时进行此更改以显示没有类别过滤器的所有产品
替换此代码
if ($category_info) {
$this->document->setTitle($category_info['meta_title']);
$this->document->setDescription($category_info['meta_description']);
$this->document->setKeywords($category_info['meta_keyword']);
使用此代码
if (($category_info) || ($category_id == 0)) {
if ($category_id == 0) {
$this->document->setTitle('all products');
$this->document->setDescription('all products');
$this->document->setKeywords('all products');
$this->data['heading_title'] = 'all products';
$category_info['description'] = '';
$category_info['image'] = '';
} else {
$this->document->setTitle($category_info['name']);
$this->document->setDescription($category_info['meta_description']);
$this->document->setKeywords($category_info['meta_keyword']);
$this->data['heading_title'] = $category_info['name'];
}
最后创建一个新类别,您可以将其命名为任何您想要的名称。并给 link 这样的东西
https://www.yourwebsite.com/yourCategoryname?viewall=viewall?viewall=viewall
您可以将此 link 放在任何您想要的位置,它会加载所有产品而无需任何分页。
如果您仍然不明白这里的任何内容,请告诉我。
我建议不要对默认主题代码和结构进行任何更改。如果您已经在使用自定义主题,您可以轻松地创建一个菜单并定义所有类别,包括一个菜单或按钮下的所有产品。
让我们以这种方式结束:
例如,您有 5 个类别。每个类别包括十多个产品或更多。
- 创建品牌(制造商)。该品牌将仅包含 1 个类别。给它起一个像 "All Products"
这样的名字
- 创建一个类别并将其命名为"All Products"。
- 创建一个将显示所有产品的菜单并将菜单显示定义为类别。 Select 您刚刚创建的 "All Products" 类别。
- 转到产品页面并为每个页面单击编辑。单击 "link" 选项卡和类别文本框,选择 "All Products" 类别。为每个产品做这个简单的编辑。我为你试过了,需要 4 / 5 秒。
- 转到主题中的 "Theme Setting"。查找 "Display Products" 或 "Products in Category" 设置。每个主题总是有预定义的显示限制,接下来是分页。像那样做一个简单的计算;你店里有多少产品,50? 100?
- 设置显示限制大于您的产品总数。
就是这样!
也许您想玩一下菜单 css。就像我之前说的,如果您已经在使用自定义主题,则不需要分叉您的核心代码,尤其是默认主题。
如果有任何帮助,请告诉我。
在一个页面中显示所有产品
您必须创建单独的页面来显示所有产品。
- 创建模型文件
catalog\model\catalog\allproduct.php
并粘贴
编码此 http://pastebin.com/suF5TP3z
- 创建控制器文件
catalog\controller\productallproduct.php
和
粘贴下面的代码 http://pastebin.com/jZq3hZyc
- 创建视图文件
catalog\view\theme\default\template\productallproduct.tpl
并粘贴
下面的代码 http://pastebin.com/1HNh3x73
4.创建语言文件 catalog\language\en-gb\product\allproduct.php
并粘贴下面的代码 http://pastebin.com/EcyJH7F9
- 从后端启用模块您可以在菜单中看到link
- 在菜单中显示所有类别
- 打开并编辑您的类别:
- Select标签数据:
- 查找Check:Top:显示在顶部菜单栏中。
注意: 仅适用于顶级父 categories.You 需要检查所有顶级 categories.It 的 Opencart 错误。
我想在主菜单中单击单个按钮时在一页中显示所有产品,并且还需要在主菜单中显示类别...
提前致谢...!
我是这样做的
控制器:ControllerProductCategory
在索引函数内替换
if (isset($this->request->get['limit'])) {
$limit = $this->request->get['limit'];
} else {
$limit = $this->config->get('config_product_limit');
}
和
if (isset($this->request->get['viewall'])) {
$limit = "";
} else if (isset($this->request->get['limit'])) {
$limit = $this->config->get('config_product_limit');
} else {
$limit = $this->config->get('config_product_limit');
}
同时进行此更改以显示没有类别过滤器的所有产品
替换此代码
if ($category_info) {
$this->document->setTitle($category_info['meta_title']);
$this->document->setDescription($category_info['meta_description']);
$this->document->setKeywords($category_info['meta_keyword']);
使用此代码
if (($category_info) || ($category_id == 0)) {
if ($category_id == 0) {
$this->document->setTitle('all products');
$this->document->setDescription('all products');
$this->document->setKeywords('all products');
$this->data['heading_title'] = 'all products';
$category_info['description'] = '';
$category_info['image'] = '';
} else {
$this->document->setTitle($category_info['name']);
$this->document->setDescription($category_info['meta_description']);
$this->document->setKeywords($category_info['meta_keyword']);
$this->data['heading_title'] = $category_info['name'];
}
最后创建一个新类别,您可以将其命名为任何您想要的名称。并给 link 这样的东西
https://www.yourwebsite.com/yourCategoryname?viewall=viewall?viewall=viewall
您可以将此 link 放在任何您想要的位置,它会加载所有产品而无需任何分页。
如果您仍然不明白这里的任何内容,请告诉我。
我建议不要对默认主题代码和结构进行任何更改。如果您已经在使用自定义主题,您可以轻松地创建一个菜单并定义所有类别,包括一个菜单或按钮下的所有产品。 让我们以这种方式结束: 例如,您有 5 个类别。每个类别包括十多个产品或更多。
- 创建品牌(制造商)。该品牌将仅包含 1 个类别。给它起一个像 "All Products" 这样的名字
- 创建一个类别并将其命名为"All Products"。
- 创建一个将显示所有产品的菜单并将菜单显示定义为类别。 Select 您刚刚创建的 "All Products" 类别。
- 转到产品页面并为每个页面单击编辑。单击 "link" 选项卡和类别文本框,选择 "All Products" 类别。为每个产品做这个简单的编辑。我为你试过了,需要 4 / 5 秒。
- 转到主题中的 "Theme Setting"。查找 "Display Products" 或 "Products in Category" 设置。每个主题总是有预定义的显示限制,接下来是分页。像那样做一个简单的计算;你店里有多少产品,50? 100?
- 设置显示限制大于您的产品总数。
就是这样!
也许您想玩一下菜单 css。就像我之前说的,如果您已经在使用自定义主题,则不需要分叉您的核心代码,尤其是默认主题。
如果有任何帮助,请告诉我。
在一个页面中显示所有产品
您必须创建单独的页面来显示所有产品。- 创建模型文件
catalog\model\catalog\allproduct.php
并粘贴 编码此 http://pastebin.com/suF5TP3z - 创建控制器文件
catalog\controller\productallproduct.php
和 粘贴下面的代码 http://pastebin.com/jZq3hZyc - 创建视图文件
catalog\view\theme\default\template\productallproduct.tpl
并粘贴 下面的代码 http://pastebin.com/1HNh3x73
4.创建语言文件catalog\language\en-gb\product\allproduct.php
并粘贴下面的代码 http://pastebin.com/EcyJH7F9- 从后端启用模块您可以在菜单中看到link
- 从后端启用模块您可以在菜单中看到link
- 创建模型文件
- 在菜单中显示所有类别
- 打开并编辑您的类别:
- Select标签数据:
- 查找Check:Top:显示在顶部菜单栏中。
注意: 仅适用于顶级父 categories.You 需要检查所有顶级 categories.It 的 Opencart 错误。
- 打开并编辑您的类别: