User Registration Content Restriction - Плагин WordPress
Надстройка User Registration Content Restriction позволяет ограничить доступ пользователей WordPress к страницам и публикациям. Мало того, вы даже можете полностью или частично ограничить контент. С помощью этого дополнения вы можете создавать ограничения на контент WordPress для зарегистрированных пользователей или пользователей, вошедших в систему с определенными ролями.

Особенности плагина
Вы можете ограничить контент для любой страницы или публикации WordPress. После установки дополнения с ограничением контента на каждую страницу и публикацию будет добавлен раздел с ограничением контента. Таким образом, вы можете выбрать, какую страницу или публикацию ограничить для пользователей.
В настройках плагина вы можете легко выбрать конкретные роли пользователя на вашем сайте. Это позволяет ограничить содержимое в соответствии с различными ролями пользователей.
С помощью этого удивительного дополнения вы получаете предварительный просмотр своей формы в реальном времени по мере внесения изменений в дизайн формы. Следовательно, вы точно знаете, как выглядит ваша форма после настройки прямо в редакторе. Нет необходимости перезаряжать.
Для частичного ограничения контента вы можете просто добавить шорткод, предоставленный надстройкой. Просто добавьте шорткод к фрагменту контента, который вы хотите ограничить. Так просто!
Существует даже возможность отображать пользовательское сообщение для ограниченных пользователей. Это дает пользователю представление о том, почему они не могут просматривать контент.
Спецификации:
| Дата выхода: | 12-07-2019 | |
| Дата обновления: | 12-02-2024 | |
| Тип расширения: | Платный | |
| Лицензия: | GPL | |
| Тематика: | Доступ и безопасность для User Registration | |
| Совместимость: | W5.x W6.x | |
| Включает в себя: | Плагин | |
| Языковые пакеты: |
|
|
| Разработчик: | WPEverest | |
| Рейтинг: | ||
Скачивание по подписке!
Вам необходимо авторизоваться на сайте и приобрести клубную подписку!
Поделись с друзьями!
Руководство по настройке User Registration Content Restriction для закрытых разделов WordPress
User Registration Content Restriction нужен не просто для того, чтобы спрятать страницу от случайного посетителя. Его смысл - связать регистрацию, роли, membership-планы, отдельные блоки контента и понятное сообщение для пользователя в один управляемый сценарий. В этом руководстве разберём, как подойти к настройке спокойно: что проверить перед включением, какие режимы выбирать, как настроить правило, как проверить результат и где чаще всего появляются ошибки.
Материал рассчитан на владельца сайта, администратора или разработчика, который уже понимает задачу доступа: закрыть базу знаний для клиентов, сделать приватный раздел для участников, показывать фрагмент страницы только определённой роли, спрятать меню или защитить группу URL. Мы не будем повторять рекламное описание продукта. Вместо этого пройдём путь от подготовки сайта до диагностики и решения о том, подходит ли этот подход именно вашей структуре.
Важно разделять два уровня. В текущей линейке User Registration & Membership базовая защита контента может настраиваться через membership access, а более гибкий рабочий процесс строится через отдельный интерфейс Content Rules и add-on Content Restriction. Поэтому в статье будут отдельно отмечены безопасные универсальные шаги и функции, которые зависят от доступной версии продукта.
Какую задачу решает ограничение контента в User Registration
Content restriction в User Registration & Membership работает вокруг простого вопроса: кто может увидеть конкретный контент и что произойдёт, если доступа нет. В отличие от встроенной защиты страницы паролем в WordPress, здесь можно опираться на состояние пользователя: вошёл он в аккаунт или нет, какая у него роль, есть ли membership-план, какой источник регистрации или значение пользовательского поля применимо к сценарию.
Для типового сайта это означает несколько рабочих моделей. Можно закрыть весь сайт от гостей, оставить доступ только зарегистрированным пользователям, открыть отдельные страницы для конкретного membership-плана, спрятать часть страницы внутри редактора блоков или направить посетителя на страницу входа, страницу тарифов либо собственную посадочную страницу. Такой подход особенно полезен, если регистрация и доступ должны быть связаны, а не жить в двух разных плагинах.
При этом продукт не заменяет продуманную архитектуру сайта. Если у вас хаотичная структура страниц, похожие URL, несколько плагинов membership-доступа и агрессивное кеширование, правило ограничения будет сложнее проверить. Поэтому правильная настройка начинается не с кнопки Add Rule, а с карты доступа: какие группы пользователей существуют, какие страницы закрываются, где должен быть вход, какие страницы всегда остаются публичными и какой текст увидит человек без доступа.
Где продукт особенно полезен
Лучше всего User Registration Content Restriction раскрывается на сайтах, где регистрация уже является частью пользовательского пути. Это могут быть клиентские порталы, учебные материалы, закрытая документация, клубы, каталоги материалов для участников, платные статьи, загрузки файлов или разделы для разных ролей внутри одной организации. В таких проектах важно не просто спрятать страницу, а объяснить пользователю, как получить доступ: войти, зарегистрироваться, выбрать подходящий план или обратиться к администратору.
Если нужно закрыть одну страницу от всех кроме администратора, можно обойтись более простым инструментом. Если же доступ зависит от ролей, планов, отдельных блоков, меню, URL-паттернов и разных сообщений для разных ситуаций, отдельный модуль ограничений становится намного удобнее.
Где он может быть лишним
Плагин может оказаться избыточным для сайта, где нет регистрации, личного кабинета и разных групп доступа. Он также не решает серверную защиту файлов сам по себе во всех сценариях: если важный файл доступен по прямой ссылке вне механизма WordPress, его надо защищать на уровне продукта, add-on для загрузок, хранилища или сервера. В статье мы будем рассматривать публичную часть WordPress, страницы, записи, блоки, меню и URL-правила, а не обещать абсолютную защиту любого файла в любом окружении.
Что проверить перед установкой и включением правил
Перед включением restriction-логики стоит подготовить сайт так, чтобы первое правило не сломало вход, регистрацию или индексацию важных публичных страниц. Это особенно важно для whole-site restriction: если закрыть весь сайт без исключения для входа, пользователь может увидеть сообщение, но не сможет попасть на форму авторизации. Документация WPEverest прямо рекомендует тестировать такие сценарии в отдельном окне и учитывать страницы входа, регистрации, аккаунта и тарифов.
Сначала проверьте базовые условия WordPress-окружения. User Registration & Membership требует современную установку WordPress, поддерживаемую версию PHP и нормальные лимиты сервера. Если сайт давно не обновлялся, сначала исправьте это на тестовой копии. Ограничение контента опирается на корректную работу сессий, ролей, страниц и форм, поэтому проблемы с PHP, кешем или постоянными ссылками будут проявляться как "правило не работает", хотя причина может быть глубже.
Мини-карта доступа перед первым правилом
Перед настройкой полезно выписать не технические поля, а человеческую логику доступа:
- Какая группа пользователей должна видеть защищённый контент: все вошедшие, конкретная роль, membership-план или пользователь с определённым признаком.
- Какой контент защищается: весь сайт, отдельные страницы, записи, рубрика, пункт меню, фрагмент страницы или группа URL.
- Что увидит человек без доступа: сообщение, форму входа, форму регистрации, страницу с тарифами или перенаправление.
- Какие страницы должны остаться открытыми всегда: вход, регистрация, сброс пароля, публичная главная, правила, контакты или справка.
- Как будет проверяться результат: гость в приватном окне, тестовый пользователь без плана, тестовый пользователь с нужным планом и администратор.
Такая карта экономит время. Если сразу начинать с десятка условий, легко получить ситуацию, где правило формально сохранено, но никто не понимает, почему один посетитель видит сообщение, второй уходит на redirect, а третий всё ещё открывает страницу из кеша.
Кеш и страницы аккаунта
Кеширование - частая причина странного поведения у registration и membership-плагинов. Страницы входа, регистрации и личного кабинета обычно нельзя отдавать как одинаковый статический HTML всем посетителям. Для User Registration & Membership в документации отдельно описано исключение страниц аккаунта и регистрации из кеша, а также риск nonce-ошибок при статическом кешировании форм.
Практическая проверка: до включения глобальных ограничений откройте настройки кеш-плагина и исключите страницы с
[user_registration_login],[user_registration_form id="ID"]и[user_registration_my_account]. После сохранения очистите кеш и проверьте вход в приватном окне.
Если на сайте используется объектный кеш или кеш на хостинге, дополнительно проверьте, нет ли правила, которое кеширует пользовательские сессии или персонализированный вывод. Для restriction-плагина критично, чтобы состояние "гость", "вошедший пользователь", "пользователь с планом" не смешивалось.
Установка и первичная проверка без риска для сайта
Базовая установка User Registration & Membership выполняется через стандартный раздел WordPress Plugins - Add Plugin. После активации проверьте, что у вас созданы или назначены основные страницы: регистрация, вход, личный кабинет, сброс пароля, страница membership-планов и страница благодарности, если она нужна вашему процессу. Эти страницы важны не только для регистрации, но и для корректного поведения закрытого контента.
Для функций Content Rules в Pro-режиме документация указывает отдельный шаг: перейти в User Registration & Membership - Addons, найти Content Restriction и включить add-on. После этого появляется отдельный пункт Content Rules. Если пункта нет, не пытайтесь угадывать URL в админ-панели. Проверьте, доступна ли функция в вашей версии продукта, включён ли add-on и нет ли конфликта с правами текущего администратора.
Первый безопасный тест
Не начинайте с ограничения всего сайта. Для первой проверки лучше создать отдельную тестовую страницу, например /members-test/, и закрыть только её. Так вы сможете убедиться, что сообщение отображается, пользователь с доступом проходит, а основной сайт не потерял публичные разделы.
- Создайте тестовую страницу с коротким текстом и понятным заголовком.
- Создайте тестового пользователя с ролью
Subscriberили membership-планом, который вы хотите проверить. - Настройте правило только для этой страницы или одного блока на ней.
- Откройте страницу как гость в приватном окне и запишите, что увидели.
- Войдите под тестовым пользователем и проверьте, изменился ли результат.
- Очистите кеш и повторите проверку, если сайт использует кеш-плагин или кеш хостинга.
Мини-итог простой: пока не пройден тест на одной странице, не стоит закрывать весь сайт, меню или большую секцию URL. Так легче отделить ошибку настройки от конфликта темы, кеша или роли пользователя.
Основная настройка Content Rules: от условия к результату
Главная ошибка при настройке Content Rules - думать о нём как о списке страниц. На практике правило состоит из трёх частей: условие доступа, цель ограничения и действие при отказе. Если хотя бы одна часть выбрана неверно, результат будет выглядеть непредсказуемо: гость увидит не то сообщение, участник не получит доступ, пункт меню приведёт к popup, а URL-паттерн захватит больше страниц, чем ожидалось.
В Pro-интерфейсе Content Rules есть вкладки Membership Rule и Custom Rules. Membership Rule связан с доступом, заданным внутри membership-плана, и отражает эту логику централизованно. Custom Rules нужны, когда доступ не должен зависеть только от membership-плана: например, надо учитывать роль, состояние входа, домен email, количество опубликованных записей, значение поля User Registration или платежный статус, если такой сценарий используется на сайте.
Membership Rules: когда достаточно плана
Если сайт устроен вокруг membership-планов, начинать лучше с доступа внутри конкретного плана. В настройках membership откройте вкладку Access и укажите, что именно разрешено участникам этого плана: весь сайт, выбранные страницы, записи или другие поддерживаемые типы контента. Такая логика понятна редактору: пользователь имеет активный план - он видит контент; плана нет - получает выбранное сообщение или сценарий отказа.
Важный нюанс: Membership Rules не предназначены для произвольного набора условий вроде "роль Editor или email на корпоративном домене". Они отражают membership-доступ. Поэтому для стандартного портала "Basic", "Pro", "VIP" это правильное место, а для нестандартных сегментов лучше использовать Custom Rules.
Custom Rules: когда нужна гибкая логика
Custom Rules дают больше контроля. В документации перечислены условия вроде roles, user registered date, period after registration, logged-in/logged-out state, email domain, minimum public post count, capabilities, registration source, UR form fields и payment status. Не нужно включать всё сразу. Хорошая практика - одно правило под одну ясную бизнес-логику.
Например, если доступ к закрытой базе знаний должен получить пользователь с ролью Subscriber и membership-планом "Client", создайте правило под этот сценарий и назовите его так, чтобы через месяц было понятно, зачем оно существует. Если позже понадобится отдельный доступ для партнёров, создайте второе правило, а не превращайте первое в комбинаторную схему из нескольких групп.
Как выбирать действие при отказе
Действие при отказе влияет не только на удобство, но и на диагностику. Show Message удобен для первого теста: пользователь остаётся на странице, а вы сразу видите, что сработало именно правило ограничения. Redirect to Local Page подходит, когда нужно отправлять гостей на страницу входа или тарифов. Redirect to Custom URL стоит использовать осторожно и только когда целевой адрес действительно нужен за пределами обычных страниц сайта.
Если цель - объяснить человеку, что делать дальше, сообщение часто лучше автоматического redirect. Можно добавить ссылку на вход, регистрацию или страницу планов. Если цель - строго направить всех гостей в один поток, redirect будет чище. Главное - не смешивать эти варианты без причины.
Block-level restriction: как закрывать только часть страницы
Одна из сильных особенностей продукта - Content Restriction Block. Он нужен, когда закрывать всю страницу слишком грубо. Например, публичная статья может содержать вводный фрагмент, а внутри - закрытый блок с чек-листом, загрузкой, таблицей, видео или инструкцией для участников. В этом случае пользователь видит контекст страницы, но доступ к ключевому блоку зависит от состояния входа, роли или membership-плана.
В редакторе WordPress это выглядит как обычная работа с блоками: добавьте блок Content Restriction, поместите внутрь него нужные блоки и настройте, кому показывать содержимое. Документация описывает два режима: Access, когда вы задаёте тех, кто может видеть контент, и Restrict, когда вы задаёте тех, кому контент нельзя показывать. Для большинства membership-сценариев проще мыслить через Access: "этот блок видят пользователи с нужным планом".
Когда блок лучше правила на всю страницу
Блоковый подход полезен для страниц, где SEO и понятный публичный контекст важны. Например, можно оставить индексируемое введение, описание курса или обзор материала, а закрыть только практический шаблон, расширенный пример или файл. Это не гарантирует SEO-результат и не должно превращаться в обход правил поисковых систем, но помогает сделать страницу полезной для гостя и понятной для участника.
Также блоки удобны для onboarding-сценариев. Гость видит приглашение войти или зарегистрироваться, участник видит закрытый контент, администратор может быстро проверить оба состояния без создания нескольких страниц.
Custom Message внутри блока
Для блока можно использовать глобальное сообщение или индивидуальное. Глобальное сообщение поддерживает единый тон сайта, а custom message помогает объяснить конкретный контекст: "этот чек-лист доступен участникам клиентского портала" или "войдите, чтобы увидеть материалы урока". Не делайте сообщение длинной рекламной вставкой. Пользователь без доступа должен понять три вещи: почему он не видит блок, что нужно сделать и куда нажать.
URL, меню и whole-site restriction: режимы, где легко ошибиться
Помимо страниц и блоков, у User Registration Content Restriction есть режимы, которые влияют на навигацию и крупные участки сайта. Они полезны, но требуют аккуратной проверки. Речь о whole-site restriction, menu restriction и custom URL protection.
Whole-site restriction
Глобальное ограничение подходит для приватного портала, где почти весь сайт предназначен для вошедших пользователей. В базовом сценарии можно включить Enable Whole Site Restriction, выбрать, кому разрешён доступ, и задать restricted message. Но здесь есть ловушка: если закрыть всё и не оставить понятный путь входа, гость не сможет авторизоваться или зарегистрироваться.
Поэтому для whole-site restriction сначала проверьте страницы входа и регистрации. Если используете advanced rule, особенно внимательно настройте действие при отказе. В документации WPEverest отдельно отмечается сценарий, где при ограничении всего сайта logged-out users могут быть заблокированы от страницы входа или регистрации, и рекомендуются варианты с Show Message и формами/shortcodes внутри сообщения.
Menu restriction
Menu restriction не заменяет защиту самой страницы. Документация подчёркивает важный принцип: пользователь может видеть пункт меню, но доступ к странице всё равно должен проверяться при переходе и при прямом открытии URL. Поэтому не считайте скрытие или ограничение меню достаточной защитой. Это слой удобства и навигации, а не вся модель безопасности.
Для меню есть два пути: через membership access или через Content Rules в Custom Rules. В первом случае логика ближе к планам, во втором - к гибким условиям. После настройки обязательно проверьте не только клик по пункту меню, но и прямой ввод URL в браузере.
Custom URL protection
Custom URL protection полезен для разделов вроде /members/**, /courses/** или /premium/**. Документация объясняет, что проверяется путь URL, а домен, query string и fragment не участвуют в сопоставлении. Это значит, что правило надо писать аккуратно: /members/** защищает раздел и вложенные пути, а слишком широкий prefix может захватить лишние страницы.
| Задача | Подходящий паттерн | Что проверить |
|---|---|---|
| Закрыть одну страницу | /account/ |
Похожие URL вроде /account-old/ не должны закрываться случайно. |
| Закрыть только дочерние страницы | /courses/* |
Главная страница раздела и более глубокие вложения ведут себя так, как задумано. |
| Закрыть весь раздел | /members/** |
Закрыты сам раздел и вложенные страницы, но не похожие публичные страницы. |
| Исключить одну страницу внутри раздела | /members/** | !/members/free-trial/ |
Исключение действительно открыто, а остальные страницы раздела закрыты. |
Не используйте широкие паттерны только потому, что они "покрывают всё". В content restriction широкое правило часто создаёт больше поддержки, чем пользы: пользователь теряет доступ к странице, которая должна была остаться публичной, а администратор ищет проблему в теме или роли.
Практический пример: закрытая база знаний для клиентов
Разберём рабочий сценарий, который хорошо показывает, как пользоваться User Registration Content Restriction без лишнего усложнения. Цель - сделать раздел /clients/, где часть материалов доступна только клиентам с активным membership-планом. Гость должен видеть понятное сообщение и ссылку на вход, а клиент - сам материал.
Цель
Нужно создать клиентскую базу знаний: публичная страница объясняет, что это за раздел, но отдельные статьи и вложенные страницы доступны только пользователям с нужным планом. Мы хотим избежать ситуации, где гость попадает на пустую страницу или бесконечный redirect.
Подготовка
До правила должны быть готовы три элемента: страница входа с [user_registration_login], тестовый пользователь с membership-планом "Client" и структура URL, например /clients/, /clients/start/, /clients/files/. Если у вас нет membership-плана, используйте роль пользователя, но не смешивайте оба подхода в первом тесте.
Шаги настройки
- Создайте или проверьте membership-план "Client" и убедитесь, что тестовый пользователь действительно относится к нему.
- Откройте
User Registration & Membership-Content Rulesи перейдите вCustom Rules, если нужно защитить URL-раздел, или настройтеAccessвнутри membership-плана, если достаточно membership-доступа. - Создайте правило с понятным названием, например
Client knowledge base access. - В условии выберите membership-план "Client" или роль, если ваш сценарий строится на ролях.
- В цели доступа укажите страницы раздела либо Custom URI
/clients/**, если нужна защита всего раздела. - В действии при отказе выберите
Show Messageдля первого теста. Добавьте короткое объяснение и ссылку на страницу входа. - Сохраните правило и очистите кеш.
Проверка результата
Откройте /clients/start/ в приватном окне. Гость должен увидеть сообщение, а не исходный закрытый материал. Затем войдите тестовым клиентом и откройте ту же страницу. Если материал появился, правило работает. После этого проверьте похожие URL: /client/, /clients-free/, /clients/files/. Так вы увидите, не слишком ли широко сработал паттерн.
Нюанс: если гость видит старую открытую версию страницы, сначала очистите кеш и проверьте исключения для страниц входа/аккаунта. Если клиент всё равно не видит материал, проверьте membership-план пользователя и условие правила, а не только сам URL.
Сообщения, формы и мягкие сценарии отказа
Ограничение доступа не должно выглядеть как ошибка. Для пользователя без доступа это часть воронки: он должен понять, что контент существует, почему он закрыт и какое действие откроет доступ. В User Registration Content Restriction для этого используются global message, custom message, redirect, local page, custom URL, формы и smart tags, если они доступны в вашей версии и сценарии.
Global message удобен для единого стиля: "Войдите, чтобы продолжить" или "Этот раздел доступен участникам". Custom message полезен, когда контент имеет особый контекст: курс, клиентский документ, закрытая загрузка, раздел для партнёров. Если в сообщении доступен визуальный редактор и media, можно добавить логотип, ссылку на вход, кнопку регистрации или краткое объяснение следующего шага.
Безопасная CSS-правка для custom message
Если вы добавляете собственную HTML-обёртку в custom message, её можно аккуратно оформить через Appearance - Customize - Additional CSS или через безопасный CSS-модуль темы. Это не правка ядра WordPress и не изменение файлов плагина. Пример ниже работает только для сообщения, куда вы сами добавили класс member-only-note.
<div class="member-only-note">
<h3>Материал доступен участникам</h3>
<p>Войдите в аккаунт или зарегистрируйтесь, чтобы открыть закрытый раздел.</p>
</div>
.member-only-note {
border: 1px solid #d9e2f2;
border-left: 4px solid #475bb5;
background: #f7f9ff;
padding: 18px 20px;
border-radius: 8px;
margin: 24px 0;
}
.member-only-note h3 {
margin-top: 0;
}
Проверка простая: откройте закрытую страницу как гость, убедитесь, что сообщение читается, не ломает сетку темы и не перекрывает форму входа. Чтобы откатить изменение, удалите HTML-обёртку из сообщения или CSS из Additional CSS. Не добавляйте JavaScript ради такого блока: это не нужно для доступа и усложняет диагностику.
Когда выбрать redirect
Redirect хорош, когда нет смысла оставлять пользователя на закрытой странице. Например, гость всегда должен попасть на страницу входа, а участник без нужного плана - на страницу с описанием доступных вариантов. Но для первого запуска redirect усложняет проверку: вы не всегда понимаете, какое правило сработало. Поэтому тестируйте новое правило через сообщение, а redirect включайте после подтверждения логики.
Проверка результата: роли, приватное окно, кеш и прямые URL
Проверка результата должна повторять реальные состояния пользователя. Администратор почти всегда видит больше, чем обычный посетитель, поэтому проверять только под админом бессмысленно. Минимальный набор - гость, вошедший пользователь без доступа, пользователь с доступом и администратор.
Матрица ручной проверки
| Состояние | Что открыть | Ожидаемый результат |
|---|---|---|
| Гость | Закрытая страница, закрытый блок, прямой URL и пункт меню. | Сообщение, форма входа или redirect, но не закрытый материал. |
| Пользователь без доступа | Те же адреса после входа в аккаунт. | Понятный отказ, без бесконечного redirect и без пустой страницы. |
| Пользователь с доступом | Закрытая страница и вложенные URL. | Контент виден, меню и блоки ведут себя согласованно. |
| Администратор | Редактор правила, публичная страница и журнал ошибок, если он нужен. | Можно редактировать правило и видеть, что оно не мешает админ-панели. |
Что делать с кешем после проверки
После любого изменения правила очищайте кеш страницы, кеш плагина оптимизации и кеш хостинга, если он есть. Затем повторяйте проверку в приватном окне. Если проблема проявляется только у гостей, но исчезает после очистки кеша, вероятно, restriction-состояние было закешировано как обычная статическая страница. Для страниц входа, регистрации и аккаунта исключение из кеша должно быть постоянным, а не ручным действием после каждого изменения.
Что проверить для SEO и индексации
Content restriction не должен случайно закрыть публичные страницы, которые нужны для поиска, справки или навигации. Если вы защищаете раздел URL, проверьте похожие публичные адреса. Если используете block-level restriction, убедитесь, что публичный текст страницы остаётся осмысленным и не выглядит как пустая заглушка. Не обещайте себе автоматический рост SEO за счёт закрытого контента: задача продукта - управление доступом, а не продвижение.
Почему правило не срабатывает и как диагностировать проблему
Ошибки в content restriction обычно выглядят одинаково: пользователь видит лишний контент или, наоборот, теряет доступ. Но причины разные. Ниже - диагностика по симптомам, характерным именно для связки User Registration, membership-доступа, Content Rules, блоков и кеша.
Гость всё ещё видит закрытый материал
Симптом: вы настроили правило, но приватное окно показывает исходный контент. Возможные причины - страница отдается из кеша, правило направлено не на тот URL/пост, выбран режим Restrict вместо Access или правило выключено.
Что проверить
- Очистите кеш сайта и хостинга, затем откройте страницу в новом приватном окне.
- Проверьте, совпадает ли цель правила с реальным URL, страницей, записью или блоком.
- Для block-level restriction убедитесь, что закрытый контент действительно вложен внутрь блока
Content Restriction, а не стоит рядом. - Если правило зависит от membership-плана, проверьте статус тестового пользователя.
Как исправить: начните с одного тестового URL и сообщения Show Message. Если сообщение появилось, проблема была в redirect, кеше или цели правила. Если нет, правило не применяется к этой странице.
Пользователь с доступом видит сообщение отказа
Симптом: клиент или участник вошёл в аккаунт, но всё равно видит restricted message. Частые причины - пользователь не относится к нужному плану, правило проверяет роль вместо membership, условие слишком узкое или используется логика AND, где ожидалась OR.
Что проверить: откройте профиль пользователя, membership-статус, роль и условия правила. Если правило использует несколько групп, временно упростите его до одного условия. Если доступ появился, проблема была в сложной логике.
Когда откатить: если правило содержит много условий и вы не можете объяснить каждое, лучше отключить его и создать два-три небольших правила. Документация WPEverest тоже рекомендует focused rules вместо одного перегруженного правила.
Закрылся вход или регистрация
Симптом: после whole-site restriction гость не может попасть на форму входа или регистрацию. Это опасный сценарий, потому что сайт формально закрыт, но пользователь не имеет пути получить доступ.
Как исправить: временно отключите whole-site restriction или смените действие на Show Message с формой/ссылкой входа. Затем проверьте страницы с [user_registration_login] и [user_registration_form id="ID"], исключите их из кеша и убедитесь, что они не попадают под слишком широкий URL-паттерн.
Redirect ведёт не туда или зацикливается
Симптом: пользователь открывает закрытую страницу, попадает на другую страницу, а затем снова возвращается к ограничению. Причина часто в том, что целевая страница redirect тоже закрыта этим же правилом или общим URL-паттерном.
Что проверить: откройте целевую страницу redirect как гость. Если она тоже закрыта, добавьте исключение или выберите публичную страницу. Для Custom URL protection проверьте, не захватывает ли паттерн страницу входа, тарифов или объяснения доступа.
Меню выглядит открытым, но страница закрыта
Симптом: пункт меню виден пользователю, но при переходе показывается popup или сообщение. Это не всегда ошибка. По документации menu restriction может сохранять видимость пункта меню, а доступ проверяется при клике и прямом URL. Если нужно именно скрыть пункт, проверьте возможности темы, меню или дополнительный инструмент для conditional menus, но не отключайте защиту самой страницы.
Практичные идеи применения без усложнения правил
После базовой настройки обычно хочется закрыть больше контента. Делать это стоит не количеством правил, а ясными сценариями. Ниже - идеи, которые опираются на подтверждённые возможности продукта: membership access, custom rules, block-level restriction, menu restriction, URL patterns и denied actions.
Клиентский портал
Для клиентского портала используйте membership-план как главный ключ доступа. Закройте раздел /clients/**, оставьте страницу входа публичной, а сообщение отказа сделайте коротким: "Войдите в клиентский аккаунт, чтобы открыть материалы". Проверка результата - гость видит сообщение, клиент видит материалы, похожие публичные URL остаются открытыми.
Платный урок с открытым введением
Для курса или обучающей статьи оставьте вводный блок публичным, а практическую часть поместите внутрь Content Restriction block. Такой подход лучше, чем закрывать всю страницу, если вам важно дать гостю понять ценность материала до входа. Custom message внутри блока может объяснить, какой план нужен.
Партнёрский раздел по email-домену или источнику регистрации
Если в вашей версии доступны Custom Rules по полям User Registration или email domain, можно сделать доступ для партнёров без создания отдельного membership-плана. Но такой сценарий требует аккуратности: поле должно быть заполнено стабильно, а администратор должен понимать, где оно хранится и как обновляется.
Закрытый раздел файлов или загрузок
Если речь о файлах, не ограничивайтесь страницей со ссылками. Проверьте, нужен ли отдельный add-on для file downloads или серверная защита прямых файловых URL. Страница с каталогом может быть закрыта правилом, но прямой URL к файлу требует отдельной проверки.
Частые вопросы о User Registration Content Restriction
Можно ли настроить ограничение контента без Pro-версии?
Базовая логика доступна через membership access: можно управлять доступом из настроек membership-плана. Отдельный интерфейс Content Rules, Custom Rules и advanced logic относятся к Pro-возможностям и требуют включённого add-on Content Restriction. Перед настройкой проверьте, какой режим доступен в вашей установке.
Что лучше выбрать: membership access или Custom Rules?
Если доступ зависит от membership-плана, начинайте с membership access. Если нужен сценарий по роли, состоянию входа, email-домену, значению поля User Registration, registration source или более сложной логике, используйте Custom Rules. Не смешивайте оба подхода в первом тесте.
Почему закрытая страница видна гостям после сохранения правила?
Чаще всего причина в кеше, неверной цели правила или том, что контент не находится внутри restriction-блока. Очистите кеш, проверьте страницу в приватном окне и убедитесь, что правило применено именно к нужной странице, блоку, меню или URL-паттерну.
Можно ли закрыть только часть статьи?
Да, для этого используется Content Restriction block в редакторе WordPress. Внутрь блока помещают закрытый контент, а затем задают, кому он доступен. Это удобно для премиальных фрагментов, чек-листов, учебных материалов и role-specific инструкций.
Как не закрыть страницу входа при whole-site restriction?
Сначала проверьте настройки страниц в User Registration & Membership - Settings - General, затем исключите страницы входа и регистрации из кеша. Для первого теста используйте Show Message с понятной ссылкой на вход. Если применяете Custom URL protection, убедитесь, что паттерн не захватывает страницу входа.
Влияет ли ограничение контента на скорость сайта?
Само правило доступа обычно не является главным фактором скорости, но персонализированный вывод плохо сочетается с бездумным кешированием. Исключайте страницы входа, регистрации и аккаунта из кеша, а для закрытых страниц проверяйте, не отдаётся ли гостю сохранённая версия для другого состояния пользователя.
Подходит ли продукт для защиты прямых ссылок на файлы?
Для страниц и записей продукт подходит лучше, чем для любых прямых файловых URL. Если нужно защищать загрузки, проверьте, доступна ли в вашей связке функция File Downloads или другой подтверждённый механизм. Не считайте закрытую страницу со ссылкой полной защитой самого файла.
Когда User Registration Content Restriction будет удачным выбором
User Registration Content Restriction стоит использовать, если ваш сайт уже строится вокруг User Registration & Membership и вам нужна связка "регистрация - пользователь - план - контент - понятное действие при отказе". Продукт особенно хорош там, где важно не просто спрятать страницу, а дать управляемый путь: войти, зарегистрироваться, получить membership-доступ или увидеть объяснение.
Перед рабочим запуском пройдите короткую проверку: одна тестовая страница, один тестовый пользователь без доступа, один пользователь с доступом, отключённый или очищенный кеш, прямой URL, пункт меню и приватное окно. Если все состояния ведут себя предсказуемо, можно переносить логику на реальные разделы.
Если после чтения вы понимаете, какой контент закрывать, какой пользователь должен его видеть и как проверить результат, переходите к практическому тесту: загрузить User Registration Content Restriction, установить его в безопасной среде и настроить первое ограничение на отдельной странице, а не сразу на всём сайте.


