Ограничить настраиваемые поля на основе ролей пользователя

У меня есть поиск по всему миру для этого и единственное решение, которое я могу найти, ограничивая количество сообщений, которые пользователи могут сделать.

У нас есть сайт WP, который мы хотели бы монетизировать с помощью простого каталога для очень нишевого рынка. Мы хотели бы иметь различные уровни рекламных партнеров, которые имеют доступ к определенным областям, зависящим от их уровня.

Например, у золота будет 10 изображений, у Бронзы может быть 1. Или у золота есть поле «веб-сайт».

Я использую ACF сильно над сайтом, и мне не нужны плагины платежей или интерфейсное решение, мы можем разработать плату отдельно, и мы будем использовать бэкэнд WordPress. Мне просто нужно иметь возможность изменять доступность полей на основе роли пользователей. Есть ли способ достичь этого?

Благодаря!

Solutions Collecting From Web of "Ограничить настраиваемые поля на основе ролей пользователя"

Одно простое решение: создать пользовательский тип сообщения для каждого уровня и использовать разрешения CPT, чтобы вы могли назначить им права только редактировать их уровень CPT и никогда не видеть других. Затем вы можете назначить другой набор полей ACF для каждого типа сообщения.

Используйте те же имена для полей в полях полей, а затем, когда вы возьмете данные, все они будут отформатированы одинаково, вы просто проверите, есть if(get_field('field_name')) { и ничего не делать, если это поле не существуют для этого сообщения. Или вы можете создать single-{cpt}.php для каждого типа сообщения и таким образом управлять single-{cpt}.php .

Мне удалось найти плагин под названием «Настройка полей роли пользователя ACF», который ограничивает доступные поля в зависимости от роли пользователей. Работает отлично.