[РЕШЕНО] Проблемы и непонятки с функцией $is_admin

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

Аватар пользователя vicshine vicshine 6 декабря 2010 в 16:06

Доброго времени суток.

За друпалом я недавно (раньше на wp сидел). Поэтому вопрос будет глупый, хотя в поиске ничего не нашёл по данной теме..
Итак, задача: вывести в отдельном блоке ссылку на редактирование ноды, если юзер зашёл с правами админа. Если же юзер такими правами не обладает, то выводить предложение войти под админом.

Чисто логически можно предположить:

<?php if ($is_admin): ?>
редактирование материала
<?php else: ?>
вы не администратор, редактирование запрещено!
<?php endif; ?>

НО: при таком коде выводится текст запрета даже для админа, т.е. условие if-else не пашет.
Может быть кто-нибудь подскажет как побороть и\или другой вариант решения?

Комментарии

Аватар пользователя vicshine vicshine 6 декабря 2010 в 16:20

взял их из списка переменных файла node.tpl.php
$is_admin: ИСТИНА, если текущий пользователь является администратором.

add:
Просто не понимаю как сделать по-человечески (и просто) разграничение на вывод тех или иных нужных элементов (например, простой ссылки на редактирование ноды) для админа и юзера, но не прибегая к Ролям..

Аватар пользователя natbampo natbampo 6 декабря 2010 в 17:37

$is_admin в шаблоне(файл в теме) надо выставлять, а не в содержимом блока(созданного например пользователем)

Аватар пользователя natbampo natbampo 6 декабря 2010 в 17:58

"vicshine" wrote:
так какое решение этой проблемы Вы мне посоветуете? ;)

А что по совету от xxandeadxx не получается?

Тогда так:
<?php
if (user_access('access administration pages')):
?>

Аватар пользователя vicshine vicshine 6 декабря 2010 в 18:54

"natbampo" wrote:
Тогда так:
<?php
if (user_access('access administration pages')):
?>

спасибо, вот так получилось Smile

p.s. всё гениальное - просто.. как всегда ;))