Чтобы включить HTTPS для панели администратора, необходимо поместить следующую строку в wp-config.php, который хранится в корневой папке вашей сборки WordPress:
define('FORCE_SSL_ADMIN', true);
Протестировать работоспособность HTTPS можно перейдя по ссылке https://mysite.com/wp-admin/.
Далее переносим фронтэнд на HTTPS. Перевести все сразу на HTTPS будет сложно, поэтому лучше делать это поочерёдно и начать с одной страницы.
Существует плагин, который позволяет это сделать — Easy HTTPS Redirection (SSL), с помощью него можно активировать принудительный вход в админку через https, настраивать https только для определенных страничек\записей, либо для определенных адресов по регулярным выражениям, удалять со страницы весь не https-контент, изменять исходящие ссылки с http на https версии сайтов и пр.
Далее нужно избавиться от уведомлений о смешанном контенте (Mixed Content)
Для просмотра данной информации откроем debug режим в браузере нажав правой кнопкой мышки → просмотреть код и выбираем закладку «Console» («Консоль») в списке справа.
Далее, мы получим список наших ошибок, указанных как Mixed Content.
Индивидуально исправляем все указанные проблемы.
Исправление ссылок на HTTPS в базе данных сайта
Для начала, подключимся к базе данных сайта с помощью PhpMyAdmin. Выбрав нужную базу перейдите в раздел «Поиск».
С помощью этого раздела мы найдем все упоминания в базе данных о протоколе https:// .
После поиска будет результат в виде списка с количеством совпадений в каждой таблице.
Для исправления переходим в нужную таблицу базы данных и в разделе «Поиск» выбираем «Найти и заменить».
После поиска вам предложат замену определённых значений. Соглашаетесь кнопкой «Замена».
Так нужно проделать с каждой таблицей и столбцом в которых есть https:// Можно проверять обычным поиском, чтобы проверить есть ли еще такие записи в базе данных.
!!!Перед проведением работ, рекомендуем создать резервную копию Базы данных. Для этого можно использовать руководства:
- Создание резервной копии БД MySQL на Виртуальном хостинге;
- Экспорт базы данных MySQL через PhpMyAdmin на сервере VPS;
- Импорт базы данных MySQL через PhpMyAdmin на сервере VPS.
Изменения файлов сайта
Загрузим сайт с помощью FTP на свой локальный компьютер. Для этого можно использовать руководства:
Использовать нужно специальные текстовые редакторы(Notepad++), в которых есть поиск совпадений в файлах.
После выгрузки сайта перейдите в основную папку сайта, нужно начать поиск с каталога wp-content/themes.
Откройте любой из файлов через Notepad++ и перейдите в раздел Поиск — Найти в файлах.
Появится окно, в котором нужно ввести данные замены. Обратите внимание на фильтры (они не дают заменять другие файлы) «папка текущего документа» помогает быстро найти путь. Лучше всего делать замену только в папке темы.
После того как файлы проекта будут исправлены можно загружать сайт назад на сервер.
Запускаем HTTPS везде на сайте.
Делается это в .htaccess в корне сборки WordPress:
# Force HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Как только этот код будет помещен в файл, вы сможете отключить плагин и удалить код из wp-config.php.
Также вам понадобится сменить параметры URL в общих настройках, сделав их https://. Таким образом, все ссылки в WordPress будут должным образом сформированы: