Drupal Block Display не отображается на странице модуля - PullRequest
1 голос
/ 21 декабря 2011

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

Я настроил его такблок будет отображаться только с определенными типами контента, но, похоже, в общем нет бланка контента для модуля блога.Это можно обойти?То же самое относится и к странице форума.Он будет отображаться для тем форума, но не для самого форума.

Надеюсь, я ясно дал понять, что объяснить довольно сложно.

Ответы [ 2 ]

0 голосов
/ 26 декабря 2011

Я понял это.Вместо того, чтобы пытаться отобразить блок на основе типа контента, вы должны изменить его, чтобы он отображался на основе URL-адреса.Причина этого в том, что модуль блога, который поставляется с Drupal 7, не имеет типа контента, поэтому, когда пользователь достигает http://www.example.com/blog, тип контента отсутствует и выбрасывает все блоки, ограниченные типом контента, изокно.

Чтобы обойти это, я должен был установить плагин под названием Pathauto .Этот плагин позволяет указать URL-адрес по умолчанию для типа контента.Обязательно установите этот плагин, прежде чем создавать какой-либо контент, поскольку любые предыдущие URL не будут работать, поэтому вам придется вручную вернуться и изменить псевдоним URL.

После установки плагина Pathauto перейдите и настройте пути для типов контента.Я настроил его так, чтобы все, что является производным от типа контента «Запись в блоге», получало URL / blog / post-name

Теперь все, что вам нужно сделать, чтобы установить блок, - перейти в блок инажмите настроить.В разделе Страницы обязательно выберите «Только перечисленные страницы».Вам придется ввести две строки.blog и blog / *

Теперь, когда вы установили это, любой новый контент, который создается как запись в блоге, попадет под это выражение URL, и будет показан блок.

Теперь работает как сон,Какая головная боль, чтобы получить работу.

0 голосов
/ 21 декабря 2011

Я не знаю, какую версию Drupal вы используете, но я постараюсь помочь.

Согласно документации на drupal.org :

Настройка блока

  1. Перейдите на страницу обзора блоков (Администрирование> Создание сайта> Блоки), чтобы настроить блоки на своем сайте. Эта страница позволяет вам перетащить блоки в разные регионы, а также изменить порядок блоки в пределах области.

  2. Рядом с каждым блоком вы можете нажать «Настроить», чтобы изменить настройки конкретного блока: Заголовок блока: позволяет переопределить заголовок по умолчанию. для блока Видимость пользователя, роли и страницы: Настройка видимость для блока на основе пользователя, роли или страницы. Дополнительные настройки также могут быть доступны, в зависимости от конкретного блока.

Обратите внимание, что блоки настроены для каждой темы. Если вы измените тему или Чтобы включить несколько тем, вам нужно настроить блоки для каждой темы.

Да. Я могу немного испортить форматирование, но в основном на шаге 2 вы хотите настроить видимость вашего блока с помощью page specific visibility. Это выглядит примерно так:

Example block configuration

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

Надеюсь, это поможет! Счастливое кодирование

...