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

Править модуль "Категории" - неактивная ссылка на саму себя


V4mp

Recommended Posts

ocStore 1.5.5.1.1
В связи с требованиями СЕО, сделал в родном модуле "Категории" ссылки неактивными на саму себя + раскрыл все категории. 
Модуль вывожу и на товаре - продвигаю категории в поисковиках.

Структура: категория - подкатегория - товар
 
Так вот именно на товаре неактивна ссылка подкатегории, которой принадлежит товар, это очень неудобно для юзабилити, тем более что магазин для женщин :(

Как сделать чтобы ссылка подкатегории была активной на карточке товара?
 
Код vQmode файла: 

<modification>
	<id><![CDATA[display all subcategories on category module 1.5.5.x]]></id>
	<version><![CDATA[1.1]]></version>
	<vqmver><![CDATA[2.2.1]]></vqmver>
	<author><![CDATA[Chetan Paliwal ( ChetanCx on OC  community forums)]]></author>
	<file name="catalog/view/theme/*/template/module/category.tpl">
		<operation>
			<search position="replace" offset="32"><![CDATA[<div class="box">]]></search>
			<add><![CDATA[<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 && !$child_id) { ?>
	    <span class="active" style="
         font-family: 'PT Sans Narrow', 'sans-serif';
         color: #FFF;
         font-size: 22px;
         padding: 3px 0px 20px 11px;
         width: 177px;
         margin: -3px;
         border-top: 1px solid #FFF;
         background-color: #99AFAF;
         display: block;
         ;
         border-top-left-radius: 16px;"> 
        <?php echo $category['name']; ?></span>
		<?php } elseif ($category['category_id'] == $category_id && $child_id) { ?>
        <a href="<?php echo $category['href']; ?>" class="active" ><?php echo $category['name']; ?></a>
		<?php } else { ?>
        <a href="<?php echo $category['href']; ?>" class="active" ><?php echo $category['name']; ?></a>
        <?php } ?>
        <?php if ($category['children']) { ?>
        <ul>
          <?php foreach ($category['children'] as $child) { ?>
          <li>
            <?php if ($child['category_id'] == $child_id) { ?>
			<span class="active"><?php echo $child['name']; ?></span>
            <?php } else { ?>
            <a href="<?php echo $child['href']; ?>"><?php echo $child['name']; ?></a>
            <?php } ?>
          </li>
          <?php } ?>
        </ul>
        <?php } ?>
      </li>
      <?php } ?>
	  <li><a href="http://top-shopping.com.ua/specials" style="
           margin-top: 2px;
           ">СКИДКИ !!!</a>
	  </li>
    </ul>
  </div>
</div>]]></add>
		</operation>
	</file>
</modification>

Ссылка на товар - http://top-shopping.com.ua/platya-new/vesna-leto/platye-00301-9135/

  • +1 1
Надіслати
Поділитися на інших сайтах


Может быть создать чистый стандартный клон Категорий, отключить исправленный модуль на товарах, и вывести клон на товарах без неактивных ссылок? Только как реализовать х3, бьюсь над данным вопросом уже неделю, гугл не знает ответа(

Хотя что-то мне подсказывает, что решение будет достаточно простым  :-)

Надіслати
Поділитися на інших сайтах


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

Надіслати
Поділитися на інших сайтах


Вот нужный кусок кода контроллера, что тут нужно сделать? 

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;
		}
							
		$this->load->model('catalog/category');

		$this->load->model('catalog/product');

		$this->data['categories'] = array();

		$categories = $this->model_catalog_category->getCategories(0);
Пробовал различные комбинации 0 или 1 - результата нет
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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