Определить главная ли страница
- sergebezborodov
- Сообщения: 133
- Зарегистрирован: 2010.06.10, 19:53
- Откуда: Dnepropetrovsk-Sevastopol, UA
- Контактная информация:
Определить главная ли страница
Приветствую!
Стоит банальная задача, но в тоже время не нашел нормального решения.
На сайте определенные виджеты нужно показывать только на главной. В конфиге маршрут главной страницы переопределен на отличный от "site/index".
Есть ли универсальный способ, без привязки к роуту определить главную страницу?
Спасибо!
Стоит банальная задача, но в тоже время не нашел нормального решения.
На сайте определенные виджеты нужно показывать только на главной. В конфиге маршрут главной страницы переопределен на отличный от "site/index".
Есть ли универсальный способ, без привязки к роуту определить главную страницу?
Спасибо!
A passion to perform
http://sergebezborodov.com
http://sergebezborodov.com
Re: Определить главная ли страница
нужно конфиг смотреть..
в конфигурации (в секции params, к примеру) можно указать масив путей где можно использовать виджеты. Потом окажеться что они не только на главной нужны, потому не нужно к главной привязывться.
В виждете уже проверка (в методе init или где то там) что то типо
в конфигурации (в секции params, к примеру) можно указать масив путей где можно использовать виджеты. Потом окажеться что они не только на главной нужны, потому не нужно к главной привязывться.
В виждете уже проверка (в методе init или где то там) что то типо
Код: Выделить всё
//..
if(in_array(Yii::app()->controller->route,Yii::app()->params['widgetAccess']))
//..
- slavcodev
- Сообщения: 3134
- Зарегистрирован: 2009.04.02, 21:42
- Откуда: Valencia
- Контактная информация:
Re: Определить главная ли страница
может такЕсть ли универсальный способ, без привязки к роуту определить главную страницу?
Код: Выделить всё
if(Yii::app()->controller->id==Yii::app()->defaultController
&& Yii::app()->controller->action->id==Yii::app()->controller->defaultAction)
{
//
}
Жду Yii 3!
Re: Определить главная ли страница
расплывчатое понятие -главная страница
любая страница может быть главной
любая страница может быть главной
- sergebezborodov
- Сообщения: 133
- Зарегистрирован: 2010.06.10, 19:53
- Откуда: Dnepropetrovsk-Sevastopol, UA
- Контактная информация:
Re: Определить главная ли страница
в качестве главной я имел ввиду http://site.ru/ или http://site.ru/index.php
A passion to perform
http://sergebezborodov.com
http://sergebezborodov.com
-
- Сообщения: 1428
- Зарегистрирован: 2009.08.20, 22:54
- Откуда: Молдова, Бельцы
- Контактная информация:
Re: Определить главная ли страница
mc_bear, твой вариант не самый удачный, так как defaultController может и action содержать. Проверить можно как-то так:
Или же как кто-то может отметить:
Код: Выделить всё
if(CHtml::normalizeUrl('')==='<тут ссылка на главную страницу без имени хоста>')
;//Наш код
Код: Выделить всё
if(Yii::app()->controller->createUrl('')==='<тут ссылка на главную страницу без имени хоста>')
;//Наш код
- tiron_alexey
- Сообщения: 13
- Зарегистрирован: 2010.07.13, 16:17
- Откуда: Одесса
- Контактная информация:
Re: Определить главная ли страница
а как сделать, чтобы виджет не отображался только на определенной странице?
Re: Определить главная ли страница
tiron_alexey писал(а):а как сделать, чтобы виджет не отображался только на определенной странице?
Код: Выделить всё
if (<is not some page>) $this->widget(.....)
- tiron_alexey
- Сообщения: 13
- Зарегистрирован: 2010.07.13, 16:17
- Откуда: Одесса
- Контактная информация:
Re: Определить главная ли страница
Уже сам разобрался, но за то что уделил время, спасибо
Re: Определить главная ли страница
Я сделал так.
В контроллере по умолчанию добавил переменную
class SiteController extends Controller {
// Флаг сигнализирующий о главной странице
public $flag_homepage = true;
. . .
И в главном шаблоне "/view/layouts/main.php" спрашивал определена ли такая переменная.
if (isset($this->flag_homepage )) { . . . }
В контроллере по умолчанию добавил переменную
class SiteController extends Controller {
// Флаг сигнализирующий о главной странице
public $flag_homepage = true;
. . .
И в главном шаблоне "/view/layouts/main.php" спрашивал определена ли такая переменная.
if (isset($this->flag_homepage )) { . . . }