Показывать блок только на странице user [РЕШЕНО]

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

Аватар пользователя vlucas vlucas 8 января 2015 в 20:47

Доброго вечера!

Цель: показать блок в профиле пользователя, т.е. на странице user.

Устанавливаю:
Показывать блок на определенных страницах: Только на перечисленных страницах: user

Результат: блок вообще пропадает.

Может вечер, запарился просто? )))

Комментарии

Аватар пользователя vlucas vlucas 8 января 2015 в 20:55

Такой же вопрос: http://stackoverflow.com/questions/10155305/in-drupal-7-how-do-i-make-a-...

Там предлагают решение, но оно не подходит. так-как у меня много вкладок с путями user/....а нужно показать только в просмотре профиля

Аватар пользователя drupby drupby 8 января 2015 в 21:22

"Василий Сергеевич" wrote:
Показывать блок на определенных страницах: Только на перечисленных страницах: user
Результат: блок вообще пропадает.

а ты разлогинься и открой страницу /user и увидишь блок
страница пользователя так то user/%, другое дело что аргумента может и не быть
"Василий Сергеевич" wrote:
Там предлагают решение, но оно не подходит. так-как у меня много вкладок с путями user/....

поменяй условие на существование arg(2)

Аватар пользователя vlucas vlucas 8 января 2015 в 21:22

Блок не виден и на странице user/%

Сделал так:

<?php

  $arg2 

arg(2);
  if (
arg(0) == 'user' && empty($arg2))
   return 
true;
  else 
   return 
false

?>
Аватар пользователя drupby drupby 8 января 2015 в 21:25

"Василий Сергеевич" wrote:
$arg2 = arg(2);
  if (arg(0) == 'user' && empty($arg2))
   return true;
  else 
   return false; 

тогда уж пиши

return (arg(0) == 'user' && empty(arg(2))) ? TRUE : FALSE;
Аватар пользователя vlucas vlucas 8 января 2015 в 21:32

"drupby" wrote:
return (arg(0) == 'user' && empty(arg(2))) ? TRUE : FALSE;

Спасибо, взял на заметку с одним замечанием:

$arg2 = arg(2);
return (arg(0) == 'user' && empty($arg2)) ? TRUE : FALSE;

Без этого не получается: $arg2 = arg(2);:
Fatal error: Can't use function return value in write context in ...php.module(80) : eval()'d code on line 3

Аватар пользователя drupby drupby 8 января 2015 в 21:37

"Василий Сергеевич" wrote:
Спасибо, взял на заметку с одним замечанием:
$arg2 = arg(2);
return (arg(0) == 'user' && empty($arg2)) ? TRUE : FALSE;
Без этого не получается: $arg2 = arg(2);:
Fatal error: Can't use function return value in write context in ...php.module(80) : eval()'d code on line 3

напомнило вопрос http://www.drupal.ru/node/83259 2012 года, только там было со страницами нод