Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Hamster
цитировать
Зарегистрирован: 18 Дек 2008 16:16:47 Сообщения: 14
|
Добавлено: 16 Мар 2009 18:37:03 Заголовок сообщения: Нужен один и тот же линк почти на всех страницах. |
|
|
Каким образом лучше всего сделать следующее?
Линк "Выйти" должен быть почти на всех страницах, естественное, кроме страницы для входа на сайт.
В каждое отображение не хочется копировать одно и тоже.
Поэтому размещаю такой код в хедере шаблона default.ctp
Код: | <? echo $html->link( 'Выйти', "/users/logout"); ?> |
Как исключить появление этого линка для формы входа на сайт /users/login? Т.е. в шаблоне нужно проверить не совпадает ли имя контроллера с 'users' и имя действия с 'login', и в этом случае не выводить линк.
Может есть еще другие варианты? |
|
Вернуться к началу |
|
|
michas
цитировать
Зарегистрирован: 28 Янв 2008 11:28:31 Сообщения: 123
|
Добавлено: 16 Мар 2009 19:50:53 Заголовок сообщения: |
|
|
Код: |
if ($this->here != '/users/login'){
echo $html->link( 'Выйти', 'users/logout');
}
|
И лучше елементом сделать. |
|
Вернуться к началу |
|
|
Hamster
цитировать
Зарегистрирован: 18 Дек 2008 16:16:47 Сообщения: 14
|
Добавлено: 16 Мар 2009 22:42:49 Заголовок сообщения: |
|
|
michas писал(а): |
И лучше елементом сделать. |
Т.е. все-таки в каждое отображение вставлять фрагмент, только вместо
1. Код: | <? echo $html->link( 'Выйти', 'users/logout'); ?> |
вставлять
2. Код: | <? echo $this->element('exit'); ?> |
а в exit.ctp прописать код 1?
А в шаблон не правильно вставлять? Все-таки, "Выйти" - пунктом меню можно считать... |
|
Вернуться к началу |
|
|
michas
цитировать
Зарегистрирован: 28 Янв 2008 11:28:31 Сообщения: 123
|
Добавлено: 17 Мар 2009 09:25:47 Заголовок сообщения: |
|
|
Меню я бы тоже в елемент вынес.
Ссылки поменяются... гораздо проще в одном месте поменять чем в каждом лэйауте.
Ну это кому как нравиться. _________________ Все самое интересное в реальном времени - xmpp:cakephp@conference.jabber.ru |
|
Вернуться к началу |
|
|
Hamster
цитировать
Зарегистрирован: 18 Дек 2008 16:16:47 Сообщения: 14
|
Добавлено: 17 Мар 2009 13:48:55 Заголовок сообщения: |
|
|
Сделал так
app\views\elements\exit.ctp
Код: | <?
if ($this->here != '/cake/users/login'){
echo $html->link( 'Выйти', '../users/logout');
}
?> |
в app\views\layouts\default.ctp добавил
Код: | <? echo $this->element('exit');?> |
michas, спасибо! |
|
Вернуться к началу |
|
|
|