Deutsch

joomla 2.5 startseite без статьи

05.12.12 09:38
Re: joomla 2.5 startseite без статьи
 
Sergo2008 старожил
Sergo2008
в ответ alexnaum 04.12.12 20:23, Последний раз изменено 05.12.12 09:40 (Sergo2008)
Вот..., на примере стандартно поставляемого с движком шаблона beez_20
Строки с 162 по 176 содержат такой код
В ответ на:
<div id="<?php echo $showRightColumn ? 'wrapper' : 'wrapper2'; ?>" <?php if (isset($showno)){echo 'class="shownocolumns"';}?>>
<div id="main">
<?php if ($this->countModules('position-12')): ?>
<div id="top"><jdoc:include type="modules" name="position-12" />
<?php endif; ?>
<jdoc:include type="message" />
<jdoc:include type="component" />
</div>
</div>

Строка 172 отвечает за вывод блока компонентов, в частности в твоём случае теста главной страницы(встроенный компонент content).
вот эту строку и нужно заменить на то как я привёл:
В ответ на:
<?php if (JURI::current() !== JURI::base()) : ?><jdoc:include type="component" /><?php endif; ?>

Данная проверка проверяет является ли открытая страница главной, и если да то не выводит этот блок, если нет то выводит.
Единственное но..., я вчера по запарке неправильно написал проверку, нужно было не "==" а "!==", или "!=". Простое "==" отвечает если условие соответствует, а "!==" не соответсвует. В твоём случае тебе нужно что бы не выводилось, а значить не соответствовать, то есть контент должен выводится если открытая страница не равна главной странице.
Так должно всё работать. Но учти..., если сайт многоязычный, то тут я не могу гарантировать, не проверял как это работает на нескольких главных, со своим языком. Но это официальный рецепт, так что по идее должно всё работать. Если же нет..., тогда нужно делать проверку на Itemid страницы, примерно так
В ответ на:

<?php if (JRequest::getInt('Itemid') !== 1 or JRequest::getInt('Itemid')!== 2) : ?><jdoc:include type="component" /><?php endif; ?>

Где 1 и 2 это индекс главных страниц для двух условных языков, 'Itemid' для страниц может быть разный, в зависимости сколько у тебя статей и какую(ие) из них сделаны главными.
Надеюсь как определить 'Itemid' объяснять не нужно? Но если нужно и в админке заблудишься в поиске, можешь в шаблоне, в любом месте вставить такой код, и тебе покажет 'Itemid'.
В ответ на:
<?php echo JRequest::getInt('Itemid'); ?>

 

Перейти на