Как в Yii разместить тег или код только на главной странице через main.php?

12
CK
На сайте с 26.02.2016
Offline
40
#11
Sitealert:
Маловато будет...:)Попробую догадаться: как и у других фреймворков, вся эта куча файлов и папочек - некие "библиотеки", которые нужно применить в своих файлах. То есть Yii - это база, а логика за Вами.

Да библиотеки, я просто образно выразился. :) Ну а про то, что маловато дней учу - конечно мало, сам знаю, но я и задач больших пока не ставил, для второго дня. Ну вот, например, сегодня пытаюсь сделать дискрипшн на главной отдельный от остальных страниц. Это ж вообще по идее должна быть крайне простая задача

php.developer
На сайте с 22.11.2010
Offline
94
#12
ChrisKorr:

А че дальше делать? Где его вызывать?

Не люблю отправлять людей в документацию. Но это именно тот случай. Пытаться разобраться в любой платформе топиками на серче - бред. Хотя бы со стартовым гайдом ознакомьтесь.

CK
На сайте с 26.02.2016
Offline
40
#13
php.developer:
Не люблю отправлять людей в документацию. Но это именно тот случай. Пытаться разобраться в любой платформе топиками на серче - бред. Хотя бы со стартовым гайдом ознакомьтесь.

Та все я уже разобрался, наконец-то, блин. В main.php вобще ничего не надо было вписывать, ну кроме стандартного тега <?= Html::csrfMetaTags() ?>, но не в этом суть...

Тот код который я писал он правильный, и его нужно добавлять только на шаблоне главной страницы на index.php, там внутри в <?php ... ?> и прочей ерунды, которая за head отвечает, пишем сначала этот код общий:

if ($metaDescription = Option::getOption('homeMetaDescription')) {

$this->registerMetaTag([ 'name' => 'description',

'content' => $metaDescription

]);

}

а потом дописываем к нему его отдельные параметры для других случаев:

else {

if ($appName = Option::getOption('appName')) {

$this->registerMetaTag([ 'name' => 'description',

'content' => 'Наш Дискрипшн'

]);

} else {

$this->registerMetaTag([ 'name' => 'description',

'content' => $appName

]);

}

}

В результате "Наш Дискрипшн" отображается только на главной, а на остальных страницах остались свои дискрипшны, как ручные, так и те, которые генерируются автоматически.

Всем спасибо за помощь, надеюсь в следующий раз, мне кто-нибудь тоже код напишет, а не отправит учить документацию)))) - это ж форум как ни как

Aisamiery
На сайте с 12.04.2015
Offline
319
#14

Ага, а ты потом сиди ночами, разбирай такой говнокод 😂

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
php.developer
На сайте с 22.11.2010
Offline
94
#15

ChrisKorr, да как бы, помочь-то и не проблема. Когда явно пишут, что хотят. У вас началось с вопроса как определить страницу(контроллер/экшен), а закончилось тем, что вы не можете проставить мету. С такими постановками вопросов очень сложно помогать людям. Что при это происходит в голове вопрошающего, представить сложно.

dimsog
На сайте с 08.08.2011
Offline
149
#16

php.developer, учится человек. Хватается за все, что можно :)

ihor vps -> ihc.ru
php.developer
На сайте с 22.11.2010
Offline
94
#17
dimsog:
php.developer, учится человек. Хватается за все, что можно :)

Это понятно и это хорошо. Даже если забыть о самостоятельном поиске информации, если хочешь попросить у людей помощи в каком-то вопросе научись ставить вопрос без потока сознания.

dimsog
На сайте с 08.08.2011
Offline
149
#18

TC,кстати отличнейший материал на русском по Yii2 лежит прямо на GitHub:

https://github.com/yiisoft/yii2/tree/master/docs/guide-ru

CK
На сайте с 26.02.2016
Offline
40
#19
dimsog:
TC,кстати отличнейший материал на русском по Yii2 лежит прямо на GitHub:
https://github.com/yiisoft/yii2/tree/master/docs/guide-ru

О, прикольно, спасибо

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий