Итак, problem with homepage joomla 3.x. Существует ли идеальная поверка на главную страницу в joomla? Я подозреваю, что ее нет так же, как нет ничего идеального в этом мире явлений...

В документации советуют делать проверку на главную вот таким образом: 

<?php $app = JFactory::getApplication(); $menu = $app->getMenu(); if ($menu->getActive() == $menu->getDefault()) { echo 'This is the front page'; } ?>

Однако этот способ не всегда годится. Казалось, бы определяем, какой пункт меню назначен главным, и вуаля. Но ведь главным у нас может быть блог категории, а не отдельная страница, и тогда все материалы из этого блога по нашей проверке тоже попадают в главные. Из грязи, так сказать, в князи. А нам такие князи не нужны. Разве что вы каждый раз будете объяснять клиентам и друзьям, что блог новостей на главной не есть хорошо. Но кто ж поверит!

Можно использовать другую проверку. Я приведу пример, как я использовала эту проверку в шаблоне, чтобы разместить на главной кучу специальных главных блоков для главной типа СЛАЙДШОУ и блока НАШИ ПРЕИМУЩЕСТВА: 

<?php if (JFactory::getURI()->toString() == JURI::base())  include 'homepage.php'  ?>

 Эта проверка работает, если главная совпадает с названием домена.

К сожалению, идеала нет. Потому что такие блоки я, может, захочу разместить на нескольких страницах сайта. Так что индивидуальный подход нужен всегда и везде. Но мне лично второй подход кажется более универсальным, потому что запретить размещать на главной слайдшон и блог новостей практически невозможно. А если так сделать, то у тебя слайдшоу будет над каждой новостью. Спасением можент стать то, что пункт НОВОСТИ может находить одновременно в двух меню, тогда система запутается и не будет пихать везде слайдшоу. Но тут участвует слишком много "может быть".

Еще спасением будет использование конструктора контента, который сформирует для главной особый неповторимый дизайн....

© 2024 URSA-WEB / Веб-студия БОЛЬШАЯ МЕДВЕДИЦА