Jump to content
Sign in to follow this  
Lyuma

Не открываются подкатегории при нажатии на родительскую

Recommended Posts

Помогите, пожалуйста!

Не открываются подкатегории при нажатии на родительскую категорию в левой колонке. Т.е. 

 

(схема1)

Категория

   Подкатегория1

   Подкатегория 2

 

в Подкатегории1 есть еще Подкатегория11, Подкатегория12

 

(схема2)

Категория

   Подкатегория1

      Подкатегория11

      Подкатегория12

   Подкатегория 2

 

При нажатии на Подкатегорию1 в левой колонке ничего не меняется, она одна и остается, без Подкатегорий11,12 (схема1), а надо чтобы выводилось как схеме2.

Share this post


Link to post
Share on other sites

движок? версия? шаблон/модуль категорий?

еще лучше - ссылку на сайт

 

что делали, после чего перестало работать?

 

без этого можно только гадать

Share this post


Link to post
Share on other sites

сайт thaicaravan.com

OC 2.0.1.1

 

думаю, произошло после переноса сайта с денвера на хостинг, не обращала внимание на отсутствие.

Share this post


Link to post
Share on other sites

а раньше вообще - открывалось?

 

если да и сами ничего не правили в коде - имеет смысл уточнить у автора темы

Share this post


Link to post
Share on other sites

Раньше открывалось, я удалила все вемо-товары и демо-категории, после этого создавала уже свои, после этого и перестало думаю работать, просто не так давно подкатегории ввела и заметила.

так тема вроде дефолтная

Share this post


Link to post
Share on other sites

так тема вроде дефолтная

 

нет

попробуйте переключить на дефолтную, если появятся вложенные категории - значит что-то с темой, если нет - вероятно намудрили с кодом

Share this post


Link to post
Share on other sites

переключила на дефолтную, категории не появились.

и что теперь делать?

Share this post


Link to post
Share on other sites

сравнить с денвером, на котором работает - искать отличия

Share this post


Link to post
Share on other sites

а в каких файлах конкретно искать отличия? простите мое незнание, я только учусь.

Share this post


Link to post
Share on other sites

посмотрела в денвере - там тоже оказывается подкатегории не открываются. видимо, я еще до переноса на сайт что-то напортачила.

в коде не сильна, что теперь делать?

Share this post


Link to post
Share on other sites

пробуйте заменить файл catalog\view\theme\ имя вашей темы \template\module\category.tpl

файлом catalog\view\theme\default\template\module\category.tpl из вашего чистого дистрибутива

Share this post


Link to post
Share on other sites
у меня нет в папке catalog\view\theme\ имя вашей темы\template\ нет папки module\category.tpl  есть только папка \common, а там footer.tpl b header.tpl

 

зашла в папку catalog\view\theme\default\template\module\category.tpl  , там код (может Вы посмотрите, что не так). И подскажите, где взять чистый дистрибутив?

 

<div class="list-group">

  <?php foreach ($categories as $category) { ?>

  <?php if ($category['category_id'] == $category_id) { ?>

  <a href="<?php echo $category['href']; ?>" class="list-group-item active"><?php echo $category['name']; ?></a>

  <?php if ($category['children']) { ?>

  <?php foreach ($category['children'] as $child) { ?>

  <?php if ($child['category_id'] == $child_id) { ?>

  <a href="<?php echo $child['href']; ?>" class="list-group-item active">   - <?php echo $child['name']; ?></a>

  <?php } else { ?>

  <a href="<?php echo $child['href']; ?>" class="list-group-item">   - <?php echo $child['name']; ?></a>

  <?php } ?>

  <?php } ?>

  <?php } ?>

  <?php } else { ?>

  <a href="<?php echo $category['href']; ?>" class="list-group-item"><?php echo $category['name']; ?></a>

  <?php } ?>

  <?php } ?>

</div>

Share this post


Link to post
Share on other sites

интересно - как так нет папки module? :blink:

 

создайте и попробуйте скопировать catalog\view\theme\default\template\module\category.tpl

в catalog\view\theme\ имя вашей темы \template\module\category.tpl

Share this post


Link to post
Share on other sites

так в в папке catalog\view\theme\ имя вашей темы\template\ есть вообще только одна папка \common,с двумя файлами footer.tpl и header.tpl  никаких других ни папок, ни файлов там нет.

я создала в папке catalog/view/theme/bolshopdark/template/module  и скопировала туда category.tpl   но ничего не произошло, категории не появились.  

Может в коде что-то не так?

Share this post


Link to post
Share on other sites

а, затупил что-то..

все нормально - когда в шаблоне (отличном от дефолтного) нет какого-то файла, этот файл берется из папки с дефолтным шаблоном

 

попробуйте код заменить на такой (только свой сохраните где-нибудь на всякий случай!)

<div class="box">
  <div class="box-heading"><?php echo $heading_title; ?></div>
  <div class="box-content">
    <ul class="box-category">
      <?php foreach ($categories as $category) { ?>
      <li>
        <?php if ($category['category_id'] == $category_id) { ?>
        <a href="<?php echo $category['href']; ?>" class="active"><?php echo $category['name']; ?></a>
        <?php } else { ?>
        <a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
        <?php } ?>
        <?php if (($category['children']) && ($category['category_id'] == $category_id)) { ?>
        <ul>
          <?php foreach ($category['children'] as $child) { ?>
          <li>
            <?php if ($child['category_id'] == $child_id) { ?>
            <a href="<?php echo $child['href']; ?>" class="active"> - <?php echo $child['name']; ?></a>
            <?php } else { ?>
            <a href="<?php echo $child['href']; ?>"> - <?php echo $child['name']; ?></a>
            <?php } ?>
          </li>
          <?php } ?>
        </ul>
        <?php } ?>
      </li>
      <?php } ?>
    </ul>
  </div>
</div>

Share this post


Link to post
Share on other sites

из папки catalog\view\theme\ имя вашей темы\template\ удалила созданную папку module  с файлом category.tpl

 

в папку catalog\view\theme\default\template\module\category.tpl  скопировала данный Вами код, внешний вид немного изменился, но все равно подкатегории не открываются.

Share this post


Link to post
Share on other sites

код - верните как было

 

замените файл catalog\controller\module\category.php аналогичным из чистого дистрибутива

только свой сохраните на всякий случай

Share this post


Link to post
Share on other sites

простите, а где взять этот чистый дистрибутив? Я его не сохраняла, сразу стала изменять все.

Share this post


Link to post
Share on other sites

вспоминать - где брали и качать оттуда. или скачать с официального сайта

качайте именно вашу версию

Share this post


Link to post
Share on other sites

скачала, заменила и....  категории все равно не появились, так еще и пропала половина товаров....

вернула все назад

Edited by Lyuma

Share this post


Link to post
Share on other sites

нет, простите, половина товаров не пропадала, это я затупила и не отключила денвер.

 

Отключила, открыла catalog\controller\module\category.php в только что загруженном чистом дистрибутиве, скопировала на сервер и ровным счетом ничего не произошло, категории не появились. 

 

вот код из чистого дистрибутива, может его надо как-то подправить? 

 

<?php

class ControllerModuleCategory extends Controller {
public function index() {
$this->load->language('module/category');
 
$data['heading_title'] = $this->language->get('heading_title');
 
if (isset($this->request->get['path'])) {
$parts = explode('_', (string)$this->request->get['path']);
} else {
$parts = array();
}
 
if (isset($parts[0])) {
$data['category_id'] = $parts[0];
} else {
$data['category_id'] = 0;
}
 
if (isset($parts[1])) {
$data['child_id'] = $parts[1];
} else {
$data['child_id'] = 0;
}
 
$this->load->model('catalog/category');
 
$this->load->model('catalog/product');
 
$data['categories'] = array();
 
$categories = $this->model_catalog_category->getCategories(0);
 
foreach ($categories as $category) {
$children_data = array();
 
if ($category['category_id'] == $data['category_id']) {
$children = $this->model_catalog_category->getCategories($category['category_id']);
 
foreach($children as $child) {
$filter_data = array('filter_category_id' => $child['category_id'], 'filter_sub_category' => true);
 
$children_data[] = array(
'category_id' => $child['category_id'], 
'name' => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
);
}
}
 
$filter_data = array(
'filter_category_id'  => $category['category_id'],
'filter_sub_category' => true
);
 
$data['categories'][] = array(
'category_id' => $category['category_id'],
'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
'children'    => $children_data,
'href'        => $this->url->link('product/category', 'path=' . $category['category_id'])
);
}
 
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
return $this->load->view($this->config->get('config_template') . '/template/module/category.tpl', $data);
} else {
return $this->load->view('default/template/module/category.tpl', $data);
}
}
}

Share this post


Link to post
Share on other sites

тогда три варианта событий:

смириться и оставить все как есть

ждать, пока еще кто подключится к теме с предложениями

либо в раздел платных услуг - может там найдутся желающие взяться за исправление

Share this post


Link to post
Share on other sites

Все поняла.

 

Спасибо Вам большое!!!!!

Share this post


Link to post
Share on other sites

Я решила проблему таким образом:

Видимо, в стандартной версии Опенкарт и без покупки доп.модулей возможна только схема Категория - Подкатегория и они прекрасно открываются, а схема Категория - Подкатегория - Подподкатегория уже не действует, Подподкатегории не открываются ни в какую в левой колонке! Поэтому я назначила все Подкатегории главными Категориями и всё заработало, т.е. у меня не стало Подподкатегорий.

Может кому поможет!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.