Есть стандартная функция Не показывать на вложенных страницах, а как добавить галочку Не показывать на главной странице компонента конкретного, а на вложенных оного показывать этот модуль? реально ли или все делать надо за счет темплейта компонента? есть у кого опыт?
#2
7 ноября 2013 в 20:38
У меня не раз возникал подобный вопрос, но как то руки не доходили для создания темы.
Присоединяюсь!
Присоединяюсь!
#3
7 ноября 2013 в 20:48
Можете в файле модуля сделать проверку на урл и возвращать false если совпадает с урлом компонента, например.
Сегодня в 12:01
kirkr, http://instantcms.ru/forum/thread16460.html#152122
http://instantcms.ru/forum/thread16523.html#153044
Для php
== если равно то — не показываем модуль
!= если не равно — то показываем
<?php if ($mod_count['sidebar_right2'] && $_SERVER['REQUEST_URI'] != '/novosti') { ?> <div class="col-right" id="sidebar-right2"><?php $inPage->printModules('sidebar_right2'); ?> </div> <?php } ?>
!= если не равно — то показываем
http://instantcms.ru/forum/thread16523.html#153044
Для tpl
== если равно то — не показываем модуль
!= если не равно — то показываем
{if $smarty.server.REQUEST_URI == "/stati/marketing"} МОДУЛЬ {/if} {if $smarty.server.REQUEST_URI != "/stati/marketing"} МОДУЛЬ {/if}
!= если не равно — то показываем
#5
8 ноября 2013 в 00:12
Поправлю — так наверное
Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст
#6
8 ноября 2013 в 00:34
Gumoff, ага, спасибо, подправлю.
Вот еще примерчик.
СОДЕРЖИМОЕ может быть любым в принципе.
Вот еще примерчик.
<?php if ($_SERVER['REQUEST_URI'] != '/novosti') { ?>СОДЕРЖИМОЕ_1<?php } else { ?>СОДЕРЖИМОЕ_2<?php } ?>
#7
8 ноября 2013 в 06:11
PolarOne, lokanaft, спасибо, пока так и спасаюсь, но думал может проще есть, чтоб девушки не понимающие в программировании клацнули и все :)
#8
8 ноября 2013 в 12:37
kirkr, сори, я с этим не игрался, но вроде модули привязываются к пункту меню. Может получится создать пункт меню не выводя его в основной и уже к этому прикрепить модуль? Сори, я тут пока конкретнее сказать не могу. Может кто-то еще дополнит.
#9
8 ноября 2013 в 12:43
А просто для главной есть решение? чтобы на site.ru не выводился модуль
А просто для главной есть решение? чтобы на site.ru не выводился модуль
<?php if ($_SERVER['REQUEST_URI'] != '/index.php' && $_SERVER['REQUEST_URI'] != '/') { ?> тут код вывода нашего модуля <?php } ?>
Либо в настройках модуля снемите галочку с показа на главной странице ))
#11
8 ноября 2013 в 15:46
а и правда ведь index.php понял, спасибо))
Добавлю чтоб было, еще один способ выводить необходимое только на одной странице, либо на всех страницах категории.
Можно вместо этого
if (strstr($sv, '/novosti/') or strstr($sv, '/novosti')) поставить так
if ($sv == '/novosti/10/11' || $sv == '/novosti/10' || $sv == '/novosti/13' || $sv == '/novosti/18' || $sv == '/novosti/19' || $sv == '/novosti/21')
Или включить или исключить конкретные страницы/разделы/категории
<?php ВАШ КОД <?php } else { ?> <?php } ?>
if (strstr($sv, '/novosti/') or strstr($sv, '/novosti')) поставить так
if ($sv == '/novosti/10/11' || $sv == '/novosti/10' || $sv == '/novosti/13' || $sv == '/novosti/18' || $sv == '/novosti/19' || $sv == '/novosti/21')
Или включить или исключить конкретные страницы/разделы/категории
#13
12 февраля 2014 в 16:09
Столкнулся с такой ситуацией что обычные методы определения не работают с главной страницей. Вот, мне кажется, лучший вариант если страница Главная!
<? if ($_SERVER["REQUEST_URI"] == "/" || $_SERVER["REQUEST_URI"] == "/index.php" || $_SERVER["REQUEST_URI"] == "/?" || $_SERVER["REQUEST_URI"] == "/index.php?"){?> ЧТО_ТО На главной <?} else{?> Что-то на остальных <?}?>