OpenCart类别未显示

时间:2014-01-01 23:08:10

标签: php e-commerce opencart

类别包括:

  1. 已标记“顶部”选项
  2. 他们被分配到商店
  3. 他们被分配给制造商
  4. 他们仍然没有出现。我不认为这是一个代码问题,因为它与默认产品/类别的工作正常,我还没有触及代码。

    我研究了很多,但人们总是说标记“顶级”选项应该可以解决问题。

    请查看以下屏幕截图。

    http://postimg.org/image/yv6p186kf/
    http://postimg.org/image/wcl00jku7/
    postimg.org/image/pbx07rj27

    由于

    编辑:

    我正在使用OpenCart v1.5.6

    编辑2:

    这是父类别。 对于那些仍在研究这个问题的人,请阅读我的答案。

4 个答案:

答案 0 :(得分:5)

这似乎是一个OpenCart错误 以下是我为解决这个问题所做的工作:

不要将“父”字段留空,而是尝试在字段中键入无效名称,以便显示 - 无 - 选项,选择它并单击保存。它解决了我的问题。 请看屏幕截图。

http://i.stack.imgur.com/WWPBY.png

答案 1 :(得分:3)

执行以下步骤:

  1. 打开并修改您的类别:
  2. 在标签数据中:
  3. 查找并检查:

    顶部:显示在顶部菜单栏中。仅适用于顶级父母
        类别。

答案 2 :(得分:0)

我没有在表单字段中获取子类别,所以我这样做了。

  1. 创建没有父级的类别
  2. 将此类别添加到您想要的产品中。
  3. 现在编辑类别并添加父类。

答案 3 :(得分:0)

编写该组件仅返回5个顶级结果,出现类别超载后就会出现问题

修复问题转到文件

/admin/controller/catalog/category.php

function autocomplete()
{
$json = array();
if (isset($this->request->get['filter_name']))
    {
    $this->load->model('catalog/category');
    $filter_data = array(
        'filter_name' => $this->request->get['filter_name'],
        'sort' => 'name',
        'order' => 'ASC',
        'start' => 0,
        'limit' => 5
    );
    $results = $this->model_catalog_category->getCategories($filter_data);
    foreach($results as $result)
        {
        $json[] = array(
            'category_id' => $result['category_id'],
            'name' => strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8'))
        );
        }
    }

$sort_order = array();
foreach($json as $key => $value)
    {
    $sort_order[$key] = $value['name'];
    }

array_multisort($sort_order, SORT_ASC, $json);
$this->response->addHeader('Content-Type: application/json');
$this->response->setOutput(json_encode($json));
}

,并将限制从5更改为更高的数字,最好是20 in

 $filter_data = array(
        'filter_name' => $this->request->get['filter_name'],
        'sort' => 'name',
        'order' => 'ASC',
        'start' => 0,
        'limit' => 20
    );