[Решено] Пропадает регион при навигации

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

Аватар пользователя Apelsinova Apelsinova 24 июля 2012 в 22:08

Создаю новое представление. Задаю путь: /index. Этот же путь указываю в настройках для главной страницы. Включаю полную постраничную навигацию. Вторая страница имеет адрес /index?page=2. И на ней не отображается один из регионов, хотя в нём есть блоки, для которых не установлены ограничения страниц, на которых они (блоки) должны показываться.
С чем это может быть связано?

Комментарии

Аватар пользователя Chyvakoff Chyvakoff 27 июля 2012 в 10:14

Не отображаются сами блоки или регион полностью?
А какой шаблон подтягивается?Кстати,вьюс темизировала через шаблоны?
В шаблоне страницы какие-нибудь символы поставь.чтобы точно знать какой шаблон отрабатывается и посмотри как там регион выводится.

Аватар пользователя Apelsinova Apelsinova 27 июля 2012 в 17:35

Chyvakoff wrote:
Не отображаются сами блоки или регион полностью?
А какой шаблон подтягивается?Кстати,вьюс темизировала через шаблоны?
В шаблоне страницы какие-нибудь символы поставь.чтобы точно знать какой шаблон отрабатывается и посмотри как там регион выводится.

Не совсем поняла. В page.tpl.php есть строчка <?php print render($page['sidebar_first']); ?> Div, в котором эта строчка находится, отображается, но он абсолютно пустой. Что ещё нужно проверить?

Аватар пользователя Chyvakoff Chyvakoff 27 июля 2012 в 21:59

Попробуй переставить местами блоки в этом регионе.. Или вообще их убрать и запустить крон,почистить кэш. И после создать простой блок с текстом и поместить в этот регион.
Может логика работы какого-то блока влияет на отображение региона..

Аватар пользователя Apelsinova Apelsinova 27 июля 2012 в 22:46

Попробовала вставить один из стандартных блоков - отображается. А блок с последними материалами определённого типа ни в какую не хочет. На других страницах этот же блок отображается без проблем.

Аватар пользователя Orion76 Orion76 28 июля 2012 в 0:48

"Apelsinova" wrote:
/index?page=2.

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

А вьюс блока у вас точно имеет тип дисплея "Блок"?
Может быть какими-то модулями в блоке выводиться страничный вьюс?

Аватар пользователя Apelsinova Apelsinova 28 июля 2012 в 1:06

orion76 wrote:
"Apelsinova" wrote:
/index?page=2.

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

А вьюс блока у вас точно имеет тип дисплея "Блок"?
Может быть какими-то модулями в блоке выводиться страничный вьюс?

У меня есть два представления. Первое - страница.

Путь: /index
Формат: Неформатированный список | Настройки
Показать: Содержимое | Анонс
Критерии фильтрации
Содержимое: Опубликовано (Да)
Содержимое: Тип (в Статья, ...)
Критерий сортировки
Содержимое: Дата обновления (убыв.)

Второе - блок (точно блок).
Формат: Неформатированный список | Настройки
Показать: Содержимое | Анонс
Критерии фильтрации
Содержимое: Опубликовано (Да)
Содержимое: Тип (= Статья)
Критерий сортировки
Содержимое: Дата обновления (убыв.)

Блок выводится в сайдбаре. Страница задана в качестве главной. И вот если находиться прямо на ней (http://site.ru/index) - всё в порядке. Если в навигаторе (внутри страницы, а не блока) кликнуть любую страницу, перехожу на адрес http://site.ru/index?page=3, где блок уже не отображается (штатные блоки работают нормально).

Никакими модулями дополнительно не настраивала. Да и не установлено ничего на этот счёт.

Аватар пользователя graker graker 28 июля 2012 в 14:29

Apelsinova wrote:
Блок выводится в сайдбаре. Страница задана в качестве главной. И вот если находиться прямо на ней (http://site.ru/index) - всё в порядке. Если в навигаторе (внутри страницы, а не блока) кликнуть любую страницу, перехожу на адрес http://site.ru/index?page=3, где блок уже не отображается (штатные блоки работают нормально).
Видимо это блок реагирует на страницу в URL-е. Фича, как я понимаю, сделана для тех, у кого js не работает - иначе-то им никак не переключить номер страницы в блоке.
Надо попробовать для блока задать текстовое поле если результатов нет (no results behavior) - скорее всего, оно будет тогда отображаться. В таком случае - либо отключить пагинацию для блока, либо сделать побольше контента - чтоб при смене страниц было на что посмотреть.
Также может помочь установка Pager ID в настройках пагинации блока в отличное от 0 число - тогда у блока будет независимая пагинация.

Аватар пользователя graker graker 28 июля 2012 в 14:16

orion76 wrote:
"Apelsinova" wrote:
/index?page=2.

странно... такое ощущение, что вьюс блока пытается показать вторую страницу..
теоретически - такого не должно быть-))
Скорее всего именно в этом и дело. Пагеры во вьюсовых блоках реагируют на параметр страницы в url, это не баг, это дурацкая фича, у меня комменты в блоге так работают - ходишь по страницам новостей, комменты переключаются тоже.
Другое дело, что когда блок за пределы пагинации выходит - он должен первую страницу показывать, насколько я помню.

Аватар пользователя Apelsinova Apelsinova 28 июля 2012 в 15:16

ser_house wrote:
Установить Use pager для представления "Блок" во Views в Display all items | All items пробовали?

Попробовала. И действительно заработало. Большое спасибо за совет.