как не показывать название категории в хлебных крошках magento?

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

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

Спасибо Аб


person abnab    schedule 16.05.2012    source источник


Ответы (3)


на самом деле не понял вашего вопроса, но вы можете получить некоторое представление отсюда:

в файле page/html/breadcrumb.phtml рядом со строками 34-36 измените $_crumbInfo['label'] на $_crumbInfo['title']

          <?php elseif($_crumbInfo['last']): ?>
          <strong><?php echo $this->htmlEscape($_crumbInfo['title']) ?></strong>

затем в catalog/block/breadcrumb.php добавьте 2 строки после

        $path  = Mage::helper('catalog')->getBreadcrumbPath();
        $currentCategory = Mage::registry('current_category');
        $metaname = $currentCategory['name'];

и измените цикл foreach, например

   foreach ($path as $name => $breadcrumb) {
        $breadcrumb['title'] = $metaname;
            $breadcrumbsBlock->addCrumb($name, $breadcrumb);

            $title[] = $breadcrumb['label'];
        }

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

person Dolly    schedule 16.05.2012

Почему не проще?

Попробуйте использовать CSS. Ваша категория будет иметь автоматический и специальный класс для нее. Например:

<li class="category4">
<strong>ARCHERY HUNTING</strong>
</li>

В этом фрагменте кода у меня есть созданная мною категория под названием «Стрельба из лука». Код автоматически создал class="category4", так что напишите в CSS только:

.category4 strong { display: none; } 

И он скроет только эту категорию.

person Sonhja    schedule 26.12.2012

Вместо того, чтобы использовать

$_product->getProductUrl()

чтобы получить URL, используйте это:

$_product->unsRequestPath()->getUrlInStore(array('_ignore_category' => true))

Затем вам нужно отключить идентификатор последней посещенной категории в конце избранного блока:

Mage::getSingleton('catalog/session')->setLastVisitedCategoryId('');

Это все потому, что ключевой частью для формирования хлебных крошек является следующий код:

    $categoryId = $params->getCategoryId();
    if (!$categoryId && ($categoryId !== false)) {
        $lastId = Mage::getSingleton('catalog/session')->getLastVisitedCategoryId();
        if ($product->canBeShowInCategory($lastId)) {
            $categoryId = $lastId;
        }
    }

в основном, текущая категория определяется либо параметрами URL (отсюда измененный вызов URL), либо через объект сеанса (отсюда удаление последнего посещенного идентификатора категории)

Итак, чтобы резюмировать, в вашем блоке Featured вместо обычного вызова productUrl используйте тот, который я предоставил, и в конце вашего списка блока рекомендуемых продуктов удалите lastVisitedCategoryId, используя код, который я вам дал

person srgb    schedule 16.05.2012