Открыть доступ в админку для новой роли при установленном WooCommerce

Есть сайт на WordPress + WooCommerce. Завел на нём новую роль для пользователя, который управляет кастомным типом поста video, дал этой роли права edit_dashboard, как полагается.

Но при попытке входа юзера с ролью video_editor в админку — его редиректит на страницу my-account, которую предоставляет WooCommerce.

Чтобы отключить данное поведение, есть два выхода.

1. Расширить привелегии пользователя, добавив ему прав в виде edit_posts.

2. Или воспользоваться хуком woocommerce_prevent_admin_access:

add_filter( 'woocommerce_prevent_admin_access', '__return_false' );

Естественно, не тупо отключая полностью редирект, а проверяя роль текущего пользователя или по любому другому условию.

Источник: https://www.kobzarev.com/wordpress/woocommerce-prevent-admin-access/

Михаил Кобзарёв

Суровый русский тимлид. Жил в Магадане, в офисе московских веб студий и в Тульской деревне. Виртуозно знает WordPress, PHP, ООП, Vue.js и вот это вот все. Делает крутые высоконагруженные сайты, поэтому уже почти захватил весь рынок WordPress разработки в России. Не дает никому делать сайты без спроса. Ведет блог о разработке, дайджест в телеграмме и в ВК. Любит сиськи, баню и радиоэлектронику. 100% патриот (но это не точно). Тролль 542 уровня. Ездит в отпуск раз в 5 лет.

Добавить комментарий

%d такие блоггеры, как: