Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Как сделать всегда раскрытые категории?


tata26

Recommended Posts

Добрый день! Как сделать всегда раскрытые категории? Ну в модули категории. НУжно чтобы на сайте всегда был модуль открытым. 

Вот код модуля

tpl

<script>

$(document).ready(function() {
$('span.accordionTitle').click(function() {
$('span.accordionTitle').removeClass('active');
$('ul.accordionCont').slideUp('normal');
if ($(this).next().next().is(':hidden')) {
$(this).addClass('active');
$(this).next().next().slideDown('normal');
}
});
 
});
</script>
 
<script>
$(document).ready(function() {
$('span.accordionTitle2').click(function() {
$('span.accordionTitle2').removeClass('active');
$('ul.accordionCont2').slideUp('normal');
if ($(this).next().next().is(':hidden')) {
$(this).addClass('active');
$(this).next().next().slideDown('normal');
}
});
 
});
</script>
<style type="text/css">
a.active.nonactive {
color: #0E0e0e;
}
</style>
 
<div class="box">
 
    <div class="box-category">
      <ul>
        <?php foreach ($categories as $category) { ?>
        <li>
          <?php if ($category['category_id'] == $category_id) { ?>
          <?php if ($category['children']) { ?><span class="accordionTitle active"></span><?php }?><a href="<?php echo $category['href']; ?>" class="active"><?php echo $category['name']; ?></a>
          <?php } else { ?>
          <?php if ($category['children']) { ?><span class="accordionTitle"> </span><?php }?><a href="<?php echo $category['href']; ?>" class="no-active" ><?php echo $category['name']; ?></a>
          <?php } ?>
 
          <?php if ($category['children']) { ?>
          <ul class="accordionCont" <?php if ($category['category_id'] !== $category_id) { ?> style="display:none;" <?php }?>>
            <?php foreach ($category['children'] as $child) { ?>
            <li <?php if ($child['category_id'] == $child_id) { ?>class="child-active"<?php } ?>>
              <?php if ($child['category_id'] == $child_id) { ?>
              <?php if ($child['children2'] ) { ?><span class="accordionTitle2 active"></span><?php }?><a href="<?php echo $child['href']; ?>"><?php echo $child['name']; ?></a>
              <?php } else { ?>
              <?php if ($child['children2'] ) { ?><span class="accordionTitle2"></span><?php }?><a href="<?php echo $child['href']; ?>" ><?php echo $child['name']; ?></a>
              <?php } ?>
 
          <?php if ($child['children2']) { ?>
          <ul class="accordionCont2" <?php if ($child['category_id'] !== $child_id ) { ?> style="display:none;" <?php }?>>
            <?php foreach ($child['children2'] as $child2) { ?>
            <li>
              <?php if ($child2['category_id'] == $child2_id) { ?>
              <a href="<?php echo $child2['href']; ?>" class="active subsub"><?php echo $child2['name']; ?></a>
              <?php } else { ?>
              <a href="<?php echo $child2['href']; ?>" class="subsub"><?php echo $child2['name']; ?></a>
              <?php } ?>
            </li>
            <?php } ?>
          </ul>
          <?php } ?>
 
            </li>
            <?php } ?>
          </ul>
          <?php } ?>
        </li>
        <?php } ?>
 
      </ul>
    </div>
 
</div>

 

php

<?php  

class ControllerModuleCategory extends Controller {
protected function index($setting) {
$this->language->load('module/category');
 
    $this->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])) {
$this->data['category_id'] = $parts[0];
} else {
$this->data['category_id'] = 0;
}
 
if (isset($parts[1])) {
$this->data['child_id'] = $parts[1];
} else {
$this->data['child_id'] = 0;
}
if (isset($parts[2])) {
$this->data['child2_id'] = $parts[2];
} else {
$this->data['child2_id'] = 0;
}
$this->load->model('catalog/category');
 
$this->load->model('catalog/product');
 
$this->data['categories'] = array();
 
$categories = $this->model_catalog_category->getCategories(0);
 
//Показывать или нет количество товаров
$show_product_count = $this->config->get('config_product_count');
 
foreach ($categories as $category) {
//Будем вычислять кол-во товаров в категориях только если это кол-во надо показывать
if ($show_product_count) {
$total = $this->model_catalog_product->getTotalProducts(array('filter_category_id' => $category['category_id']));
}
 
$children_data = array();
 
$children = $this->model_catalog_category->getCategories($category['category_id']);
 
foreach ($children as $child) {
//Будем вычислять кол-во товаров в категориях только если это кол-во надо показывать
if ($show_product_count) {
$data = array(
'filter_category_id'  => $child['category_id'],
'filter_sub_category' => true
);
 
$product_total = $this->model_catalog_product->getTotalProducts($data);
 
$total += $product_total;
}
$children2_data = array();
$children2 = $this->model_catalog_category->getCategories($child['category_id']);
foreach ($children2 as $child2) {
$data = array(
'filter_category2_id' => $child2['category_id'],
'filter_sub_category2' => true
);
$children2_data[] = array(
'category_id' => $child2['category_id'],
'name' => $child2['name'],
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'] . '_' . $child2['category_id'])
);}
 
$children_data[] = array(
'children2' => $children2_data,
'category_id' => $child['category_id'],
'name'        => $child['name'] . ($show_product_count ? ' (' . $product_total . ')' : ''),
'href'        => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
);
}
 
$this->data['categories'][] = array(
'category_id' => $category['category_id'],
'name' => $category['name'],
'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')) {
$this->template = $this->config->get('config_template') . '/template/module/category.tpl';
} else {
$this->template = 'default/template/module/category.tpl';
}
 
$this->render();
  }
 
}
?>
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.