Рассказы о велопоходах

Получить ссылку на материал, категорию, рубрику в joomla

Опубликовано: 11.04.2018

видео Получить ссылку на материал, категорию, рубрику в joomla

5 Порядок вывода категорий

Чем больше пишешь чего то под движок joomla тем больше начинаешь понимаеть какую ерунду ты делал год, или пол года назад. А это все возникает от незнаний, но исключить все незнания просто невозможно, больше  делаешь - больше знаешь. Дак вот где то с пол года назад я писал компоненты, модули и для того чтоб сформировать правильную ссылку на материал я прибегал к изврщению. Я писал свою функцию которая по определенным условиям к примеру по id материала давала ссылку мне на него. С точки стороны движка joomla это не правильно так как там уже есть все нужные нам функции котороые и надо использовать. Вот об одно из этих функция мы сегодня и поговорим.



 И так для того чтоб работать с функциями для формирования ссылки нам необходимо для начала подгрузит файл в  котором сообственно и находятся нуждные нам функции (это route.php ). Делать это будем так:

require_once(JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php');

 Далее пройдемся по нужным на функция.


Компонент для добавления справочника 2GIS на сайт Joomla 2 5

К примеру нам необходимо сформировать ссылку на материал. Для этого будем использовал метод getArticleRoute класса ContentHelperRoute.  Данный метод принимает 3 параметра. И выглядит так

$href = JRoute::_(ContentHelperRoute::getArticleRoute($id, $id_cat, $id_sectionid));


Онлайн генератор RSS ленты Как создать RSS ленту

 Думаю взглянув на него становится все понятно, ну, а если все же не понятно поясняю. Первый параметр $id это id материала, второй параметр $id_cat это id категории этого материала, а третий параметр $id_sectionid это id рубрики этого материала.

При использовании жанного метода у меня ссылка которая должна иметь вид /gostinicza/-shtory/1-komplekty/4-material-2.html  получилась такой  /gostinicza/-shtory/1/4.html.

Выглядит по другому, но работает отлично, что в моем случае главное. Так сказать короткая ссылка на материал вышла.

Идем далее. Для того чтоб сформировать ссылку на категорию необходимо воспользоваться методом getCategoryRoute который принимает только один параметр. Этот параметр это id категории. Выглядит все это вот так:

$href = JRoute::_(ContentHelperRoute::getCategoryRoute($catid));

 С этим думаю все понятно идем далее. Для того чтоб получить ссылку на рубрику (что требуется довольнео редко) то необходимо воспользховаться методом getSectionRoute данный параметр работает по аналогии с предыдущим и принимает один обязательный параметр это id рубрики. Наглядно это выглядит так:

$href = JRoute::_(ContentHelperRoute::getSectionRoute($secid));

 Вот сообственно и все, теперь мы знаем как приавльно соформировать ссылку на материал com_content да и не только.

rss