Joomla 1.5 Itemid, Jroute::_() и com_content

Discussion in 'Программирование' started by panas, Jul 7, 2010.

  1. panas
    Offline

    panas Недавно здесь

    Joined:
    Aug 22, 2009
    Messages:
    19
    Likes Received:
    0
    Gender:
    Male
    Здравствуйте.
    У меня есть некоторые вопросы к знающему сообществу.

    Что есть Itemid?
    http://joomlaforum.ru/index.php/topic,12816.0.html - здесь говорят что он нужен для того чтобы по-разному отображать те же страницы, шаблоны привязывать, менять их внешний вид и.т.д. Тогда возникает вопрос, если в этом нет необходимости, можно ли от него вовсе отказаться?

    Jroute::_()
    Jroute::_() работает хитро в связке с текущим Itemid. Если есть на странице ссылка, и у нее не указан Itemid, то он ей добавляется от текущего значения в адресной строке. Зачем это нужно? К примеру Itemid пунктов меню, выведенных через mod_mainmenu, имеют свой четко определенный Itemid, и не меняют его. А у модуля вывода новостей Itemid не добавляется в заголовки. Непонятно зачем вообще нужен этот метод.

    com_content
    Ну и соответственно вопрос о com_content. К примеру, создаем пункт меню ведущий на "Стандартный шаблон материала" и выводим его через mod_mainmenu. В этом случае при клике на этой ссылке mod_breadcrumbs создает путь в виде Главная->заголовок меню соответственно ссылка содержит Itemid текущего пункта, если убрать Itemid то пути не будет. Как можно сделать так чтобы отображение было такое Главная->раздел->заголовок материала? Нужно править com_content?
     
  2.  
  3. omfgpanda
    Offline

    omfgpanda Недавно здесь => Cпециалист <=

    Joined:
    Jan 22, 2008
    Messages:
    673
    Likes Received:
    53
    Gender:
    Male
    Класс Jroute::_() - это механизм для конструирования ЧПУ (человеко-понятных ссылок).
    Например, имеем ссылку вида:
    Код (CODE):
    1. www.mysite.ru/index.php?option=com_content&task=view&itemid=123&item=12

    При включеном ЧПУ получим:
    Код (CODE):
    1. www.mysite.ru/news/12-my-news-name

    где,
    news - псевдоним (алиас) пункта меню, в котором мы сейчас находимся (вы можете назвать его как угодно)
    12-my-news-name - так называемый СЛАГ, он состоит из двух частей: 12 - id-новости и my-news-name - заголовок новости, который формируется из значения находящегося в поле Title новости и переведенный в латиницу.

    Вернемся к нашим баранам. "По фэншую", при написании своих решений, все ссылки необходимо заключать в конструкцию "Jroute::_()", если ItemId не указан, то он будет добавлен автоматически для обеспечения функционала, описанного выше.
    Нет, править ничего не нужно, если Вас интересует частное решение то нужно создать пункт меню "Статьи категории в виде списка", а затем создать дочерний к этому элементу пункт меню "Одна статья"
     

Share This Page

Loading...