Чтобы получить URL-адрес категории, используя название категории - PullRequest
0 голосов
/ 03 февраля 2012

Есть ли в magento какая-либо функция для получения URL-адреса категории, используя только имя категории.Я знаю, что мы можем получить URL-адрес категории, если у нас есть идентификатор категории, но в моем сценарии у меня доступно только имя категории.Есть идеи как это получить.

Ответы [ 2 ]

10 голосов
/ 03 февраля 2012

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

$category = Mage::getModel('catalog/category')->load($name, 'name');
if ($category->getId()) echo $category->getUrl() . "\n";
1 голос
/ 03 февраля 2012

Вы можете попробовать сделать:

Mage::getResourceModel('core/url_rewrite_collection')->addFieldToFilter('request_path' array('like' => '%'.$category_name.'%'));

, который в основном дает вам коллекцию, просеянную по фактическому URL-адресу категории по имени, вы можете получить базовые продукты, так как URL-адреса похожи на «категория / продукт» и т. Д., Но вы можете сделать что-то вроде >>>

'like' => '%'.$category_name.'/' or 'like' => '%'.$category_name.'.html/'

в фильтре полей вашей коллекции, чтобы получить наиболее вероятный URL-адрес категории.

...