veronikastepanova18 19.01.2023 06:33

Как добавить и настроить форму регистрации пользователей на сайте в Wordpress?

Здравствуйте! Я хотела бы добавить форму регистрации пользователей на свой сайт, который разработан на платформе WordPress. Однако, я не совсем понимаю, как это сделать и как настроить данную форму.

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


<?php
// Форма регистрации
function registration_form() {
    echo '
    <form action="'; echo get_permalink(); echo '" method="post">
        <p>
            <label for="username">Имя пользователя:</label>
            <input type="text" name="username" id="username" class="input" value="" required />
        </p>
        <p>
            <label for="email">Электронная почта:</label>
            <input type="email" name="email" id="email" class="input" value="" required />
        </p>
        <p>
            <label for="password">Пароль:</label>
            <input type="password" name="password" id="password" class="input" value="" required />
        </p>
        <p>
            <input type="submit" name="register" value="Зарегистрироваться" class="button" />
        </p>
    </form>
    ';
}

Если кто-то может мне помочь, как произвести настройку данной формы и обработать данные, переданные пользователем, буду очень благодарна!

Ответы:

arodionov42 19.01.2023 06:47
Используйте плагин для регистрации пользователей в WordPress, такой как "User Registration" или "Ultimate Member". Они предоставят вам готовые формы регистрации и настройки, что значительно упростит процесс добавления и обработки формы.
ElenaBogd29 19.01.2023 07:04

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


<?php
// Форма регистрации
function registration_form() {
    echo '
    <form action="'; echo get_permalink(); echo '" method="post">
        <p>
            <label for="username">Имя пользователя:</label>
            <input type="text" name="username" id="username" class="input" value="" required />
        </p>
        <p>
            <label for="email">Электронная почта:</label>
            <input type="email" name="email" id="email" class="input" value="" required />
        </p>
        <p>
            <label for="password">Пароль:</label>
            <input type="password" name="password" id="password" class="input" value="" required />
        </p>
        <p>
            <input type="submit" name="register" value="Зарегистрироваться" class="button" />
        </p>
    </form>
    ';
}

// Обработка данных, переданных пользователем
function registration_form_handler() {
    if (isset($_POST['register'])) {
        $username = sanitize_user($_POST['username']); // Очистка и проверка имени пользователя
        $email = sanitize_email($_POST['email']); // Очистка и проверка электронной почты
        $password = $_POST['password'];

        // Создание нового пользователя
        $user_id = wp_create_user($username, $password, $email);

        // Успешная регистрация
        if ($user_id) {
            echo '

Вы успешно зарегистрированы!

'; } else { echo '

Что-то пошло не так. Пожалуйста, попробуйте еще раз.

'; } } } // Регистрация хука для формы регистрации add_shortcode('registration_form', 'registration_form'); add_action('init', 'registration_form_handler');

Чтобы добавить эту форму в вашу тему WordPress, добавьте следующий код на страницу или шаблон, где вы хотите отобразить форму:


[presentation_form]

После того, как пользователь заполнит обязательные поля формы и нажмет кнопку "Зарегистрироваться", данные будут обработаны функцией registration_form_handler(). Данная функция очищает и проверяет введенные данные, а затем создает нового пользователя с использованием функции wp_create_user(). Если регистрация прошла успешно, пользователю будет показано сообщение об успешной регистрации.

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


Добавить ответ