Drupal показувати блок в певному розділі, минаючи один з підрозділів

xandeadx.ru Блог музикує веб-девелопера

В параметрах видимості блоку можна вказати або Показувати тільки на перерахованих сторінках. або Показувати на всіх сторінках виключаючи перераховані. Тобто не можна скомбінувати умови, і наприклад показувати блок в першому рівні каталогу catalog / *. але не показувати в інших catalog / * / *.

Виручить опція Якщо введений PHP-код повертає значення TRUE. яка з'являється при включенні модуля PHP filter. Сам код буде приблизно таким:

Drupal показувати блок в певному розділі, минаючи один з підрозділів

Так само домогтися схожого результату можна використовуючи модуль Block Visibility by RegExp.

Написане актуально для Drupal 7 Схожі записи

Drupal показувати блок в певному розділі, минаючи один з підрозділів

Трохи спростити можна:

Drupal показувати блок в певному розділі, минаючи один з підрозділів

Ще трохи спростимо:
if ((arg (0) == 'catalog') (Arg (1)! = 'Search')) return 1;

Drupal показувати блок в певному розділі, минаючи один з підрозділів

arg повертає системний шлях, а drupal_match_path працює з фактичним

Drupal показувати блок в певному розділі, минаючи один з підрозділів

З умови не ясно на чому і як побудований каталог. ось я і запропонував - звідки мені знати відрізняється фактичний від системного чи ні;)

Drupal показувати блок в певному розділі, минаючи один з підрозділів

Є робочий варіант під друпал 6? Терміново потрібно.
За цим варіантом з'являється помилка:

Fatal error: Call to undefined function request_path () in /var/www/bla----bla/includes/common.inc(1696). eval () 'd code on line 2

Drupal показувати блок в певному розділі, минаючи один з підрозділів

Схожі статті