в общем то суть такова - мне нужно ограничить доступ к определенному участку кода по ролям пользователей. А именно- Все пользователи регистрируются как автор. В сайдбаре выводится несколько виджетов, в которых выведена различная информация. К одному из виджетов должны иметь доступ только участники и администратор, ко второму только редакторы и администратор. Остальные пользователи не могут просматривать данные виджеты. Знаю, что есть простое решение с помощью кода, но не могу его найти. устал перечитывать тонны мусора... прошу помочь с решением данной задачи.
Ни одно ни другое. В первом случае разделение ролей, а не код для скрытия контента, а во втором - мне не нужно страницы скрывать, или текстовый участок в виджете - мне нужно сам виджет скрыть , TE - скрыть код PHP, а не сгенированный кодом HTML
DarkAngel-163, возможно но как настроить эту функцию под определенный виджет и определенную группу?
---------- Сообщение добавлено 18:28 ---------- Предыдущее 18:26 ----------
Gann, в описании не нашел возможности скрывать виджеты, потому и написал это. И сейчас перечитываю и вижу только - написание, редактирование, комментирование и прочее, но не увидел ни слова про скрытие виджета...
---------- Сообщение добавлено 18:37 ---------- Предыдущее 18:28 ----------
Gann, и что дает та настройка, которую вы привели на скрине? Ровным счетом ничего. Плагин может определять основные роли, но не в состоянии скрыть определенный виждет от просмотра занной группой. Ну или разрешить просмотр заданной группе.
<?php // Получаем роль автора (как я понял это дефолтная роль, она же участник) и роль администратора $author = get_role('author'); $admin = get_role('admin'); // или administrator, надо бы погуглись как правильно // Добавляем ролям пермишены $author->add_cap('viewFirstWidget'); $admin->add_cap('viewFirstWidget'); ?>
В месте где идёт вывод виджета, соответственно, следующий код:
PHP код:
<?php if (current_user_can('viewFirstWidget')) { renderWidget(); } ?>
Где renderWidget() и есть функция для рендеринга вашего виджета.
Ну и, соответственно, это же проделываете для второго виджета (если их, как я понял, два).
---------- Сообщение добавлено 15:40 ---------- Предыдущее 15:39 ----------
Если у Вас это терпит до завтрешнего вечера, могу помочь с реализацией (если у вас не получится).