WordPress: Как обновить медиафайлы на HTTPS при переходе на SSL?

22 авг. 2016 г., 23:36:56
Просмотры: 13.6K
Голосов: 0

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

Как лучше всего решить эту проблему? Я не смог найти подходящих плагинов или эффективных способов сделать это для всего сайта.

0
Все ответы на вопрос 2
5

Довольно распространённая проблема возникает при обновлении URL вашего сайта WordPress с HTTP на HTTPS или при переносе на новый домен. Хотя адреса WordPress (home) и Сайта (siteurl) были обновлены на новый HTTPS-адрес:

Обновление URL главной и сайта

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

Проблема смешанного содержимого SSL (серый замок)

Попробуйте один из двух вариантов:

1. Стороннее решение: Search/Replace DB

Существует сторонний инструмент, который позволяет:

  1. Скачать скрипт Search & Replace от Interconnect IT здесь
  2. Распаковать архив и поместить папку в корень вашего локального сервера, где установлен WordPress, переименовав её в replace (скриншот)
  3. Перейти в созданную папку через браузер (например: http://web.site/replace) и вы увидите инструмент для поиска и замены
  4. Дальше всё интуитивно понятно: введите старый URL в поле search for…, а новый URL — в поле replace with…

2. Плагин: Search & Replace

Если у вас нет доступа к исходным файлам сайта (через FTP и т.д.), вы можете выполнить те же действия с помощью плагина Search & Replace прямо в WordPress. Процесс прост в использовании, и вы также можете просмотреть, какие таблицы и строки будут затронуты, перед применением изменений.

Примечание: Michael Cropper

Для тех, кто использует плагин: мне пришлось выбрать опцию "Replace Domain URL", чтобы изменить адрес с http://web.site на https://web.site, затем скачать SQL-файл и загрузить его через phpMyAdmin. Как всегда, сделайте резервную копию базы данных перед этим, так как, хотя у меня это сработало, вам может потребоваться небольшая корректировка.

22 авг. 2016 г. 23:55:59
Комментарии

Вы знаете плагин, который автоматизирует это?

Michael Cropper Michael Cropper
23 авг. 2016 г. 00:05:19

Да: Search & Replace. Он делает то же самое, но в WordPress с удобным интерфейсом. Обновил свой ответ.

Ethan Rævan Ethan Rævan
23 авг. 2016 г. 00:08:22

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

Michael Cropper Michael Cropper
23 авг. 2016 г. 00:20:22

Отлично. Ваш комментарий отображается. Рад, что это помогло.

Ethan Rævan Ethan Rævan
23 авг. 2016 г. 00:24:41

Не рекомендуется выполнять SQL-запросы напрямую в базе данных; сырые запросы могут повредить сериализованные данные, например, сломать данные виджетов, настройки темы и т.д. Используйте https://interconnectit.com/products/search-and-replace-for-wordpress-databases. Где ссылка на плагин "Search and Replace"? Ваши ссылки ведут только на изображение, а не на плагин.

markratledge markratledge
23 авг. 2016 г. 03:57:05
1
-1

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

Если изображения (или другие ресурсы) доступны через HTTPS-запрос, просто обновите свой код для использования HTTPS в запросе. Если вы используете функции WordPress, такие как the_post_thumbnail() для отображения миниатюры записи, WordPress автоматически будет использовать HTTPS для изображения после обновления URL-адресов в настройках.

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

Несколько хороших статей по теме для получения более общей информации: https://crowdfavorite.com/avoid-ssl-mixed-content-errors-in-wordpress/

22 авг. 2016 г. 23:45:28
Комментарии

Попытался добавить код, рекомендованный по той ссылке, в файл wp-config.php, но, к сожалению, безрезультатно.

Michael Cropper Michael Cropper
23 авг. 2016 г. 00:04:53