Как создать пользователя WordPress программно

Опубликовано: 2021-10-23

Вы ищете альтернативные способы создания пользователей, не связанные с панелью администратора? Если да, то этот пост для вас. В этом руководстве мы покажем вам, как программно создать пользователя WordPress, а также примеры сценариев, которые вы можете использовать на своем сайте.

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

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

WordPress позволяет вам управлять разными типами пользователей и предоставляет полные функции управления пользователями. Используя несколько ролей, доступных по умолчанию, вы можете создавать, обновлять и удалять пользователей и назначать каждому из них разные разрешения. Это хорошо для некоторых веб-сайтов, но если вы хотите более сложное решение для управления различными типами разрешений, вам может потребоваться создать пользователей WordPress программно.

Давайте посмотрим, как вы можете это сделать.

Как создать пользователя WordPress программно

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

После создания пользователя WordPress может отправить электронное письмо для завершения регистрации из своего почтового ящика. Даже если пользователь уже знает учетные данные для входа, всегда полезно отправлять электронные письма для регистрации пользователя по нескольким причинам:

  • Вы убедитесь, что электронная почта, которую они предоставили, верна и не содержит опечаток
  • Пользователи могут вернуться к этому электронному письму, если забудут имя пользователя или пароль.

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

Теперь, когда у нас есть четкое представление о том, что вы можете сделать, давайте взглянем на несколько примеров сценариев, которые позволят вам создавать пользователей различными способами.

ПРИМЕЧАНИЕ . Поскольку мы будем редактировать некоторые основные файлы, прежде чем начать, мы рекомендуем вам создать полную резервную копию вашего сайта. Кроме того, мы рекомендуем вам создать дочернюю тему или использовать плагин дочерней темы, если вы его еще не используете.

Примеры сценариев для создания пользователей WordPress с помощью кода

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

Создайте одного пользователя

Создать пользователя WordPress программно довольно просто и требует всего одну строку кода. Единственными обязательными значениями являются имя и пароль, и вы также можете установить пароль с помощью функции wp_create_user() следующим образом:

 wp_create_user('johndoe', 'passwordgoeshere', '[электронная почта защищена]');

Вставьте эту строку кода в файл functions.php вашей дочерней темы, чтобы создать пользователя с именем johndoe .

Как создать пользователя WordPress программно

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

 add_action('admin_init','QuadLayers_create_user');
функция QuadLayers_create_user(){
  wp_create_user('johndoe', 'passwordffgoeshere', '[электронная почта защищена]');
}

Если вы не знакомы с хуками, мы рекомендуем вам ознакомиться с нашим Руководством по хукам.

Создать несколько пользователей

Вместо многократного повторения описанной выше функции существует более эффективный способ одновременного создания нескольких пользователей.

Следующая функция создаст пользователей из заданного массива, где хранятся имена и пароли.

 add_action('admin_init','QuadLayers_create_users');
функция QuadLayers_create_users(){
    $ пользователи = массив (
       массив('Джондо','пароль1'),
       массив('томдо','пароль2'),
       массив('Эндрюдо','пароль3'),
       массив('jeffdoe','пароль4')
    );
    foreach($users как $user){     
       wp_create_user($user[0], $user[1]);
    }    
}

Для этого мы используем цикл foreach() для создания четырех пользователей, хранящихся в массиве $users .

Как создать несколько пользователей wordpress

В этом примере мы создали четырех пользователей, но вы можете создать столько, сколько хотите. Просто добавьте их в массив и назначьте им имя и пароль.

Создайте пользователя и отправьте электронное письмо

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

В следующем скрипте мы используем две новые функции:

  1. wp_generate_password() для генерации пароля
  2. wp_mail() для отправки регистрационного письма получателю
 add_action('admin_init','QuadLayers_create_user_send_mail');
функция QuadLayers_create_user_send_mail(){
    $password=wp_generate_password(12, правда);
    wp_create_user('joedoe',$пароль);
    wp_mail('[email protected]', 'Добро пожаловать!', 'Ваш пароль: ' . $password );  
}

Этот код программно создаст пользователя WordPress, сгенерирует пароль и отправит электронное письмо на адрес [email protected] с текстом «Добро пожаловать! Ваш пароль « . Убедитесь, что вы настроили пользователя, адрес электронной почты и сообщение, когда используете его на своем сайте.

Создайте пользователя и назначьте данные учетной записи

В этом примере мы создаем пользователя с прикрепленной информацией, такой как имя, фамилия и роль.

Обратите внимание, что здесь мы используем другую функцию. Вместо функции wp_create_user() мы используем wp_insert_user() , которая аналогична, но более гибкая и мощная.

 add_action('admin_init','QuadLayers_create_user_meta');
функция QuadLayers_create_user_meta(){   
wp_insert_user (массив (
  'user_login' => 'janedoe',
  'user_pass' => 'пароль здесь',
  'user_email' => '[электронная почта защищена]',
  'first_name' => 'Джейн',
  'last_name' => 'Доу',
  'display_name' => 'Джейн Доу',
  'роль' => 'редактор'
));
}

Как видите, в этом примере мы создаем пользователя и назначаем ему имя (Джейн), фамилию (Доу), адрес электронной почты ( [email protected]) , роль ( редактор ) и так далее.

Проверить, существует ли пользователь

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

Вот как вы можете проверить, существует ли пользователь по имени пользователя (janedoe в этом примере) , используя функцию username_exists() .

 add_action('admin_init','QuadLayers_if_user_exists');
функция QuadLayers_if_user_exists(){
    если ( null == username_exists ( 'janedoe' )) {
       echo "not an Existing User";// Делаем что-то для несуществующего пользователя
    }
    еще{
           эхо "Существующий пользователь"; // Делаем что-то, если имя пользователя существует
    }
}

Этот скрипт помечает пользователей двумя разными текстами в зависимости от того, существуют они или нет:

  • Несуществующие пользователи: «не существующий пользователь»
  • Существующие пользователи: «Существующий пользователь»

Вывод

В общем, WordPress поставляется с функциями для создания, управления и удаления различных типов пользователей. Несмотря на то, что этого может быть достаточно для большинства веб-сайтов, если вы хотите иметь больше параметров и иметь возможность управлять большим количеством разрешений, рекомендуется создавать пользователей с помощью небольшого кода.

В этом руководстве мы увидели, как программно создать пользователя WordPress, и несколько примеров, чтобы сделать этот процесс более эффективным. Мы увидели, как создать несколько пользователей одновременно, как автоматически отправлять им электронное письмо и назначать им данные. Наконец, мы добавили проверку, чтобы проверить, существует ли уже пользователь или нет. Теперь пришло время настроить эти скрипты и использовать их на своем сайте!

Вы добавляли пользователей на свой сайт с помощью этих скриптов? Как вы их настроили? Дайте нам знать в комментариях ниже!

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

  • Как создать пользовательский тип записи WordPress программно
  • Руководство по программному созданию постов и страниц в WordPress
  • Как автоматически изменить статус заказа в WooCommerce