[РЕШЕНО] Видимость блока при пагинации

Главные вкладки

Аватар пользователя bismoney bismoney 5 марта 2015 в 18:05

Добрый день друзья.

Есть задачка которая пока мне не по силам, решил спросить у вас помощи/совета

Есть список разделов созданных в таксономии.
Раздел1 / Раздел2 ..итд

Я сделал так к примеру при заходе в Раздел 1 первая новость идет большая дальше все маленькие.
Обычная такая задача когда хочешь в разделе сделать первую новость другой нежели другие.

Но вот задача, сделать что бы эта новость большая не отображалась на page=2 page=3.

То есть что бы эта новость была только на первой странице раздела, а дальше шли маленькие.
Я вывел эту новость через блок и как только я уже не пытался делать и php и исключения в блоках.

Подскажите как такое можно реализовать?

Cпасибо заранее.

Комментарии

Аватар пользователя bismoney bismoney 5 марта 2015 в 18:39

"drupby" wrote:
return (isset($_GET['page'])) ? FALSE : TRUE;

Решение короткое и на вид приятное, скажите куда именно его вставить?
В контекстный фильтр?
или исключения блока?

Аватар пользователя bismoney bismoney 5 марта 2015 в 18:42

Вставил
Если введённый PHP-код возвращает значение TRUE
в блоке
return (isset($_GET['page'])) ? FALSE : TRUE;

Но блок по прежнему отображается на всех страницах пагинации.

Аватар пользователя drupby drupby 5 марта 2015 в 19:01

"bismoney" wrote:
Но блок по прежнему отображается на всех страницах пагинации.

If the PHP option is chosen, enter PHP code between <?php ?>.

<?php
return (isset($_GET['page'])) ? FALSE : TRUE;
?>
Аватар пользователя bismoney bismoney 6 марта 2015 в 3:32

"drupby" wrote:
If the PHP option is chosen, enter PHP code between <?php ?>.

Я извеняюсь что не так написал но вчера я есстественно вставил так

<?php return (isset($_GET['page'])) ? FALSE : TRUE; ?>

Эффект тот-же, блок на всех страницах

Аватар пользователя bismoney bismoney 6 марта 2015 в 12:16

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
У меня срабатывает.

Беру данный код и вставляю в настройку блока, у меня не срабатывает.

Аватар пользователя bismoney bismoney 6 марта 2015 в 14:45

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
Попробуйте написать в поле php условия.

Представление отвечающие за вывод категорий
http://joxi.ru/VrweQkDs7ZMp2X

Вот первая новость в категории представление
http://joxi.ru/n2Y0zwMcbMljm6

А вот настройки блока первой новости в категории
сюда писал и первый код и ваш
http://joxi.ru/Vm63bNEI4yJ32Z

На странице категории не выводиться ничего, а при первом коде блок на всех страницах присутствует.

В чем я ошибаюсь?

Аватар пользователя mNigma@drupal.org mNigma@drupal.org 6 марта 2015 в 14:55

Так у вас заработал этот код?
<?php return (isset($_GET['page'])) ? FALSE : TRUE; ?>
При этом блок должен выводится на всех страницах где нет $_GET['page'];

Категории выводятся у вас представлением таксономии и чтобы только там отображалось, нужно еще добавить проверку на arg(); Т.е. немного переписать.
<?php return (!isset($_GET['page']) && arg(0)=='taxonomy') ? TRUE : FALSE; ?>

<?php
drupal_set_message('работает');
drupal_set_message(print_r($_GET,true));
?>
Этот код вывел что-нибудь?

Аватар пользователя bismoney bismoney 6 марта 2015 в 14:58

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
Так у вас заработал этот код?

Это код не заработал.
Я захожу в категорию он выводиться, включаю вторую страницу он так же есть и так далее он на всех страницах пагинации есть.

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
Этот код вывел что-нибудь?

Нет ничего на странице категории он не вывел ни не первой, ни на пагинации.

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
Категории выводятся у вас представлением таксономии и чтобы только там отображалось, нужно еще добавить проверку на arg(); Т.е. немного переписать.

Сейчас попробую, но я так понял он бы работал если бы первый работал?

Аватар пользователя bismoney bismoney 6 марта 2015 в 15:06

Сейчас в блок первой новости в категории вставил
http://joxi.ru/V2VvewJcdwPV2v

И на сайте как в разделе на первой
site.ru/razdel

так и на
site.ru/razdel?page=2
и так далее

На всех есть блок с первой новостью.
Кеш сбрасывал.

Аватар пользователя drupby drupby 6 марта 2015 в 16:31

"bismoney" wrote:
Это код не заработал.

"bismoney" wrote:
Нет ничего на странице категории он не вывел ни не первой, ни на пагинации.

вполне возможно eval() на сервере выключен, к примеру с помощью suhosin - должна быть такая строка в конфиге php suhosin.executor.disable_eval=On
либо как вариант конечно можно всегда сослаться на полтергейст

Аватар пользователя bismoney bismoney 6 марта 2015 в 16:40

вполне возможно eval() на сервере выключен, к примеру с помощью suhosin - должна быть такая строка в конфиге php suhosin.executor.disable_eval=On
либо как вариант конечно можно всегда сослаться на полтергейст

Спасибо за информацию, проверил это нормально.

Сам не могу понять что ему надо

Аватар пользователя bismoney bismoney 6 марта 2015 в 18:12

Ребятки походу я опять тупанул и сам виноват.
Дело в том что та конструкция сверху не работала скорее всего потому что блок выводился программно.

Стоило мне обернуть блок в условие так

<?php
if ((!isset($_GET['page']) && arg(0)=='taxonomy')){
$block = module_invoke('views','block_view','news_cat_hot-block');
echo render($block['content']);  }
?>

Как все заработало.

Аватар пользователя bismoney bismoney 6 марта 2015 в 18:38

"<a href="mailto:mNigma@drupal.org">mNigma@drupal.org</a>" wrote:
Вот-вот, нужно было это упомянуть Smile Ставьте в заголовке решено.

Да сейчас поставлю. Спасибо все кто помог и не прошел мимо друзьях. Примите все возможны благодарности Wink