Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 7696 Просмотров
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Пишу ссылку вида
$link = JRoute::_('index.php?option=com_content&view=article&id='.$currs['id'].'&Itemid=176');
По ItemId прописывается (/menu1/item2/item3/241), но правильная должна быть /menu1/item2/item3/241-alias.
Что не так?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Как правильно прописать JRoute
« Ответ #1 : 11.08.2010, 14:50:56 »
Насколько помню в segments роутера вообще Itemid нету. Загляни в route.php com_content.
Да. mod_latestnews такие ссылки по другому формирует. Посмотри в хелпере модуля.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Как правильно прописать JRoute
« Ответ #2 : 11.08.2010, 14:56:40 »
Насколько помню в segments роутера вообще Itemid нету. Загляни в route.php com_content.
Да. mod_latestnews такие ссылки по другому формирует. Посмотри в хелпере модуля.
Оттуда и выглядел - itemid как раз отлично отрабатывает (без него ссылка вида /component/content/article/241) а вот алиас теряется.
Посмотрел mod_latestnews -
Код
JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid)
*

nik75

  • Новичок
  • 2
  • 0 / 0
Re: Как правильно прописать JRoute
« Ответ #3 : 14.02.2011, 19:37:13 »
Добый день, я чего-то недопонимаю, подскажите кто знает
пишу ссылку
JRoute::_("index.php?option=com_eps&controller=eps&task=edit&cid[]=1")
в административной части компонента, получается все неплохо, только
в полученной ссылке терятся /administrator/ ?
*

era

  • Администратор
  • 1587
  • 391 / 5
  • В туалете лучше быть пользователем, чем админом.
*

nik75

  • Новичок
  • 2
  • 0 / 0
Re: Как правильно прописать JRoute
« Ответ #5 : 14.02.2011, 19:42:45 »
Точнее код такой
    for ($i=0, $n=count( $this->items ); $i < $n; $i++)
    {
        $row =& $this->items[$i];
   $checked    = JHTML::_( 'grid.id', $i, $row->id );
   $link = JRoute::_("index.php?option=com_eps&controller=eps&task=edit&cid[]=".$row->id);
        ?>
        <tr class="<?php echo "row$k"; ?>">
            <td>
                <?php echo $row->id; ?>
            </td>
            <td>
              <?php echo $checked; ?>
            </td>
            <td>
      <a href="/<?php echo $link; ?>"><?php echo $row->name; ?></a>
            </td>
        </tr>
        <?php
        $k = 1 - $k;
    }
вывожу из базы записи со ссылками для редактирования
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
Re: Как правильно прописать JRoute
« Ответ #6 : 21.03.2012, 01:13:00 »
дабы не создавать новую тему напишу тут:

есть компонент JEA, из него доделываю определенные функции и пишу ссылку

JRoute::_('index.php?view=properties&id='.$row->slug.'&option=com_jea&Itemid='.$this->cat), то есть правильная ссылка без сефа. а когда включаю стандартный SEF, ссылка стает такой site.com/component/jea/номер-объявления

и беда в том что по меню ссылка привязана к разделу trade, и если переходить из меню, то эта же ссылка имеет вид  site.com/trade/номер-объявления

вот и задача, как заставить первую ссылку учитывать структуру меню ?
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
Re: Как правильно прописать JRoute
« Ответ #8 : 21.03.2012, 01:51:39 »
а как правильно вызвать id меню раздела ? $row->sectionid, вобще ничего не отображает. или это не тот параметр?
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
Re: Как правильно прописать JRoute
« Ответ #9 : 24.03.2012, 00:17:27 »
так я заменил категории компонента, на itemid. НО проблема осталась. без SEF ссылка работает правильно, а включаю SEF, и ссылка снова стает site.com/component/jea/номер обявления. такое ощущение что этот джумловский SEF просто игнорирует itemid.

как же их все таки подружить??

------
разобрался. у меня ссылка получалась из двух параметров
echo JRoute::_('index.php?view=properties&id='.$row->slug.'&option=com_jea&Itemid='); if($this->cat == 0) echo '3'; else echo '4'
для выключенного сефа отлично работало, а вот после включения сефа, ссылка получалась site.com/component/jea/link + itemid после этого отдельно дописывался. потому и не правильно работала ссылка.

я переписал условия для одного оператора
<?php if($this->cat == 0) $num='3'; else $num='4' ?>
<a href="<?php echo JRoute::_('index.php?view=properties&id='.$row->slug.'&option=com_jea&Itemid='.$num);  ?>" title="<?php echo JText::_('viewonsite')?>">
теперь все работает. может кому-то пригодится.
« Последнее редактирование: 26.03.2012, 22:03:11 от chikvito »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с JRoute а имено с ParseRoute

Автор savenko

Ответов: 8
Просмотров: 3425
Последний ответ 15.09.2014, 14:23:57
от kolio
JRoute::_

Автор snikolai

Ответов: 9
Просмотров: 9283
Последний ответ 26.08.2011, 09:58:58
от Aventurier
как правильно обращаться к базе данных

Автор salikoff

Ответов: 23
Просмотров: 6297
Последний ответ 29.06.2009, 14:07:16
от w00
Как правильно делать ссылки?

Автор severum

Ответов: 9
Просмотров: 3968
Последний ответ 25.03.2009, 12:55:39
от severum