Как добавить блок только для пользователя/uid, а не для пользователя/uid/редактировать


На моем сайте www.example/user/uid путь содержит вкладки "Просмотр" и "Редактирование". Я хочу добавить несколько блоков только на страницу просмотра, а не на страницу редактирования.

С помощью "пользователь/* (Только перечисленные страницы)" в настройках видимости конфигурации блока прикрепляет блок к обеим страницам.

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

Спасибо в предвкушении.

Author: seyi, 2013-07-25

3 answers

Надеюсь, это поможет вам,

В Drupal 7,

  • Вы можете достичь этого, включив модуль PHP filter, который позволяет оценивать встроенный PHP-код/фрагменты. ПЕРЕЙДИТЕ в раздел администратор> модули и включите PHP-фильтр . {[0]} enter image description here
  • Вы также можете ссылаться Расширенная видимость блока модуль. Это позволит определить видимость блоков PHP в коде.
 3
Author: inizio, 2013-07-25 17:58:11

Вы могли бы написать некоторые php в настройках видимости, проверяя путь, например:

<?php
 $path = explode('/', $_GET['q']);
 if ($path[0] == 'user') {
   if (is_numeric($path[1]) && $path[2] != 'edit') {
     return TRUE;
   }
 }

...что-то в этом роде (непроверенный). Это также можно было бы обработать с помощью крючка user_view, но это простое решение.

Будьте осторожны, какой PHP вы там пишете, потому что, если он сломает сайт, вам придется удалить записи этого блока формы кода в базе данных!

 1
Author: Pan Chrono, 2013-07-25 11:36:05

Я бы включил Панели и Менеджер страниц, а в разделе Страницы включил вариант user_view. Затем поместите блок в нужное место в макете.

Вам также нужно будет разместить обычные "пользовательские" элементы в макете, чтобы внезапно ничего не отображать:)

 0
Author: Pontus Nilsson, 2013-07-29 12:20:38