флажок if, основанный на форме регистрации, для назначения дополнительной роли пользователя - PullRequest
0 голосов
/ 16 мая 2019

отказ от ответственности * Я очень новичок в дизайне веб-сайтов и PHP-кодировании, поэтому прошу прощения за мое невежество.

У меня есть сайт WordPress WooCommerce, на котором я хотел бы добавить дополнительную роль для пользователя (в дополнение к роли defalt, назначенной новым пользователям) после установки флажка в моей форме регистрации нового пользователя. У меня есть много битов, необходимых для этого, но я борюсь с кодом, чтобы назначить новую роль.

Целью этого является освобождение определенных клиентов от уплаты PST из-за освобождения производителей / посредников от товаров, приобретенных для перепродажи в Британской Колумбии, Канада.

У меня есть регистрационная форма с флажком и полем для номера PST. Флажок и номер PST сохраняются в разделе «Информация о моей учетной записи» в woocommerce. Я использую знаковое поле настраиваемой учетной записи для создания флажка, см. Код для флажка ниже.

Какой код необходим для назначения роли? Я видел подобные решения в сети, но мне не удалось собрать воедино код, который подходит для моей ситуации.

Я знаю, что условным оператором if будет поиск флажка, а затем добавление роли, если флажок установлен. Я хотел бы, чтобы этот код перехватывался при отправке регистрационной формы или изменении данных учетной записи.

Я использую плагин "редактор роли пользователя", чтобы создать роль и настроить ее для освобождения от налога, который мне нужен, роль "PST". Чтобы было ясно, я хотел бы добавить роль PST в качестве дополнительной роли, поскольку у меня есть несколько других ролей, которые я вручную добавляю к пользователям для представления скидок оптовым ценам для определенных клиентов, поэтому я считаю, что добавление этой дополнительной роли было бы самым чистым способом сделать это. это.

Любой совет будет оценен.

спасибо

        'pst_exempt' => array(
        'type'    => 'checkbox',
        'label'   => __( 'PST Exempt?', 'iconic' ),
        'hide_in_account'      => false,
    'hide_in_admin'        => false,
    'hide_in_checkout'     => true,
    'hide_in_registration' => false,
    'required'             => false,
    ),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...