Разделение авторизации и регистрации по разным страницам в WooCommerce
По умолчанию (если мне не изменяет память), при создании интернет магазина в WordPress с помощью плагина WooCommerce формы авторизации и регистрации находятся на одной странице (/my-account/).
Все бы ничего, но мне это показалось не совсем хорошим вариантом на одном из проектов, который я вел. И задача встала – разделить эти формы по разным страницам. Делается все это очень просто. И как именно, я сейчас расскажу.
1. Подключитесь к вашему сайту по FTP.
2. Из папки плагина по адресу /wp-content/plugins/woocommerce/templates/myaccount/ загрузите к себе на компьютер файл form-login.php.
3. Далее идете в папку вашей темы (это адрес /wp-content/themes/название темы/) и здесь создаете подпапку woocommerce, в которой создаете еще одну подпапку – myaccount.
Это нужно для того, чтобы мы могли кастомизировать (изменять) функционал плагина, не затрагивая его. Если что-то пойдет не так, вы можете просто удалить эти папки, и работа плагина не нарушится. Плюсом ко всему, при обновлении плагина ваши изменения не пропадут.
Если эти папки уже есть в вашей теме – ничего страшного, просто переходите к следующему пункту.
4. После того, как в теме необходимые папки созданы, перейдите к редактированию ранее скачанного файла. В него вам необходимо внедрить такую конструкцию:
<?php
if(isset($_GET["action"]) && $_GET["action"] == "register") {
?>
Форма регистрации
<?php
} else {
?>
Форма авторизации
<?php
}
?>
Код для формы входа и регистрации вы берете из этого же файла и просто вставляете в соответствующие места.
Ссылка на страницу входа останется прежней:
/my-account/
А вот вид ссылки на регистрацию станет:
/my-account/?action=register
По завершении всех правок файл с изменениями загружаете на сервер в созданную конечную папку (myaccount). После чего формы на вашем сайте разделятся по разным страницам.