Внутри шаблона блока list.phtml вы можете получить название категории с
<?php echo $this->getLayer()->getCurrentCategory()->getName() ?>
В этом случае текущей категории устанавливается на слое с помощью catalog/product_list
блока в _getProductCollection()
вызова.
Внутри содержимого страницы CMS я не знаю, как получить доступ к названию категории напрямую.
Из другого блока, получающего название категории, может быть больше задействовано. Вы можете попробовать
<?php echo Mage::getSingleton('catalog/layer')->getCurrentCategory()->getName() ?>
Конечно, это может быть так, что не существует текущей категории не может установить на экземпляре слоя, поэтому убедитесь, чтобы проверить, что, чтобы избежать некрасивых ошибок.
В принципе, если был выполнен метод catalog/product_list
списка продуктов, который был выполнен, то текущая категория будет установлена на уровне.
EDIT: Все это предполагает, что вы хотите получить название категории без повторного указания идентификатора категории. Если вы не заботитесь о том, что вы всегда можете получить название категории с
<?php echo Mage::getModel('catalog/category')->load($this->getCategoryId())->getName() ?>
оба этих разорвать страницу и ничего выводится, как установить текущий слой? – molleman
это ошибка Вызов функции-члена getName() для не-объекта в magento – molleman
Текущий уровень в реестре задается модулем поиска каталога. Я обновил ответ на использование 'Mage :: getSingleton ('catalog/layer')' вместо этого, а также добавил объяснение, когда текущая категория установлена на экземпляре слоя. – Vinai