Страница 1 из 1

Ссылка на главную страницу + CMenu

Добавлено: 2011.02.22, 00:17
slavcodev
Казалось бы ссылка на главную страницу решается просто:

Код: Выделить всё

echo CHtml::link('главная','/'); 
Если приложение находится не в корневой папке, придется чуть усложнить:

Код: Выделить всё

echo CHtml::link('главная',Yii::app()->baseUrl);
// или правильнее т.к. на конце будет слеш
echo CHtml::link('главная',Yii::app()->homeUrl); 
Но использовать один из этих вариантов в виджете CMenu не получится, находясь на главной странице пункт в меню не становится активным, виджету подавай связку контроллер/действие.
ну что же схитрим, будем писать ссылку на главную вот так

Код: Выделить всё

echo CHtml::link('главная',array('/'.Yii::app()->defaultController)); 
и меню

Код: Выделить всё

$this->widget('zii.widgets.CMenu',array(
    'items'=>array(
        array('label'=>'Home', 'url'=>array('/'.Yii::app()->defaultController)),
    ),
)); 

Re: Ссылка на главную страницу + CMenu

Добавлено: 2011.04.04, 00:43
pls-kick-me
спасибо, полезно.

Re: Ссылка на главную страницу + CMenu

Добавлено: 2011.04.04, 10:31
Ekstazi
А еще defaultController может содержать не только имя контроллера, но и имя действия.

Re: Ссылка на главную страницу + CMenu

Добавлено: 2011.04.04, 10:33
slavcodev
Ekstazi писал(а):А еще defaultController может содержать не только имя контроллера, но и имя действия.
да, в APi уже подправили описание

Re: Ссылка на главную страницу + CMenu

Добавлено: 2012.07.28, 11:00
andreyrud
А как CMenu сказать делать ссылку без контроллера и актиона? Причем абсолютную? Просто http://site.ru.

Код: Выделить всё

array('label'=>'Home', 'url'=>array('/')),
Дает у меня ссылку вида http://site.ru/index.php.
Еще есть проблема с дублем http://site.ru/index.php/site/index ...

Re: Ссылка на главную страницу + CMenu

Добавлено: 2012.07.28, 11:26
lancecoder

Re: Ссылка на главную страницу + CMenu

Добавлено: 2013.07.17, 15:34
yvgorshkov
Рискну поднять старую тему:
как заставить виджет CMenu рендерить URL главной страницы просто /
У меня рендерится текущая url если я пишу так:

Код: Выделить всё

array('label'=>'Главная', 'url'=>array('/')),

Re: Ссылка на главную страницу + CMenu

Добавлено: 2013.07.17, 15:52
yvgorshkov
Методом тыка определил: если в начале всех правил в конфиге urlManager определить:

Код: Выделить всё

'/'=>'site/index',
то CMenu сгенерит нужную ссылку если ему указать /site/index

Re: Ссылка на главную страницу + CMenu

Добавлено: 2014.02.15, 18:29
vavamia
спасибо!

Re: Ссылка на главную страницу + CMenu

Добавлено: 2015.02.27, 13:25
disasterovich
у меня так работает

Код: Выделить всё

['label'=>'Главная', 'url'=>"/"] ,