Прошу подсказать или навести на мысль.
Имеем два модуля:
1. Блок контекстной рекламы
2. Модуль из инстанта
Нужно:
0.Обоим модулям назначена одна и та же позиция
1.Чтоб если блок 1 пустой, т.е. контекстной рекламы нет, загружался блок 2 (а блок 1 нет).
2.Если НЕ на главной странице и контекстной рекламы нет — то не грузится ничего.
Как такое реализовать, может есть оригинальное решение?
#1
14 января 2013 в 00:06
#2
14 января 2013 в 01:14
Как вариант
* добавляем две позизии в positions.txt
mod1
mod2
* добавляем в template.php
послев нужное место в шаблоне вставляем
* в админке для модуля с позицей "mod1" выставляем показ на всех страницах.
* в админке для модуля с позицей "mod2" выставляем показ только на главной.
И получаем что если есть на главной модуль с позицией "mod1" то показывается он, если его нет то показывается "mod2", а если не главная и нет "mod1" то не показывается ничего.
П.С. только не уверен на сколько корректно будет работать в вашем случае т.к у вас контекстная рекламма и нужно определить есть ли там данные или нет.
* добавляем две позизии в positions.txt
mod1
mod2
* добавляем в template.php
$mod_count['mod1'] = $inPage->countModules('mod1');
$inPage = cmsPage::getInstance();
<?php if ($mod_count['mod1']){ $inPage->printModules('mod1'); } else { $inPage->printModules('mod2'); }?>
* в админке для модуля с позицей "mod2" выставляем показ только на главной.
И получаем что если есть на главной модуль с позицией "mod1" то показывается он, если его нет то показывается "mod2", а если не главная и нет "mod1" то не показывается ничего.
П.С. только не уверен на сколько корректно будет работать в вашем случае т.к у вас контекстная рекламма и нужно определить есть ли там данные или нет.
в это то и дело… там js всегда присутствует… другое дело выводит или нет, а позиция всегда в данном случае как $mod_count, даже если на экран ничего не выводит (видимых элементов просто нет).определить есть ли там данные или нет
Сегодня в 12:47
тогда еще как пища для размышления,
* в админке для модуля с позицей "mod2" выставляем показ только на главной, в стилях ставим для него "дисплей ноне" по умолчанию
по скольку у вас идет js то пусть он и проверяет есть ли вывод информации и если нету то меняем "дисплей ноне" на "дисплей блок"
фактически на главной будут выводится и модуль и рекламма, но видно будет только что то одно.
* в админке для модуля с позицей "mod2" выставляем показ только на главной, в стилях ставим для него "дисплей ноне" по умолчанию
по скольку у вас идет js то пусть он и проверяет есть ли вывод информации и если нету то меняем "дисплей ноне" на "дисплей блок"
фактически на главной будут выводится и модуль и рекламма, но видно будет только что то одно.
#5
14 января 2013 в 01:43
т.е. в js партнерки дописать свой проверяющий код?то пусть он и проверяет
#6
14 января 2013 в 02:19
не проще партнерку напрячь чтоб сделали заглушку?)т.е. в js партнерки дописать свой проверяющий код?
#7
14 января 2013 в 04:53
У того же адсенса есть условие, что если нет объявлений, то ничего не показывать. Тоже самое с директом и бегуном, если мне не изменяет память.
#8
14 января 2013 в 09:52
заглушка естьнапрячь чтоб сделали заглушку
1. Как сделать чтоб заглушка показывалась только на главной
2. Как вывести модуль из iCMS в заглушку? (через js вызвать?)