Поддержка Проблемы и решения Белые страницы админки

  • Доброго дня. В админке при создании/редактировании страниц и записей возвращается белая страница. Проблема обнаружена после проблема обнаружена после обновления. До этого не знаю, было или нет …

    версия PHP: 7.4
    версия MySQL: 5.7
    версия WordPress: 5.7

    Вывел ошибки и увидел следующее:

    Deprecated: Функция register_sidebar_widget с версии 2.8.0 считается устаревшей! Используйте wp_register_sidebar_widget(). in /home/site.ru/www/wp-includes/functions.php on line 4861

    Deprecated: Функция register_widget_control с версии 2.8.0 считается устаревшей! Используйте wp_register_widget_control(). in /home/site.ru/www/wp-includes/functions.php on line 4861

    Deprecated: Функция has_cap вызвана с аргументом, который считается устаревшим с версии 2.0.0! Использование уровней для пользователей устарело. Используйте возможности. in /home/site.ru/www/wp-includes/functions.php on line 5145

    Deprecated: Функция contextual_help с версии 3.3.0 считается устаревшей! Используйте get_current_screen()->add_help_tab(), get_current_screen()->remove_help_tab(). in /home/site.ru/www/wp-includes/functions.php on line 5236

    Отключал все плагины, проблема осталась. Как победить данную напасть ?

Просмотр 15 ответов — с 16 по 30 (всего 36)
  • Начал писать логи. Если честно, ничего не понимаю в этом деле, поэтому выложил на Г.Драйв. Буду признателен, если кто-то поможет решить проблему с сайтом

    https://drive.google.com/file/d/1W0XfUPWajJL4ppntuDFSgXnQJGW-7HJa/

    Скажите, а вы за эти 10 лет свою коммерческую тему хоть раз обновляли?

    Было дело, но последние года 3 проект был заброшен. Сейчас пытаюсь его реанимировать, но пока безуспешно (((

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Сообщения типа Deprecated и Notice не приводят к белому экрану, Warning — более серьёзные замечания, но и они тоже не приводят.

    Поищите строки со словами Fatal error или Parse error.

    Сейчас пытаюсь его реанимировать

    ну так начните с обновления темы до актуальной версии

    В том-то и дело, что нет таких замечаний (((

    Разобрал лог на 3 МБ, удалил повторы, получилось не так много ошибок. Сгруппировал и оформил их на Г.Драйве. Надеюсь это поможет исправить хоть часть недоработок.

    https://docs.google.com/document/d/1YkKOuVuiMRVyonadkoTReWQbPOgbR_du6DVzEppB_IA/

    Модератор Юрий

    (@yube)

    В том-то и дело, что нет таких замечаний (((

    Я сталкивался с подобной бедой. В одном из древних плагинов (увы, не помню как его зовут) было явное и безусловное отключение протоколирования ошибок. Видимо, автору было лень причесать код, чтобы не лезли ворнинги с нотисами, и он пошел по пути «с глаз долой». А ошибка, которую я искал, возникала в другом плагине, который выполнялся после этого плагина, следовательно в лог ничего не писалось. Вот и получалось, что 500-я есть, а записей в логе нет.

    После долгого гугления появилась гипотеза, что подобный отказ админки связан с подключением ssl. Когда его подключал, особо не проверял, увидел защищенное соединение и закрыл сайт с чистой совестью.

    Итак, что сделано, проверены редиректы, все работает.

    Добавил в wp-config.php следующие строки

    /** SSL в панели администратора */
    define('FORCE_SSL_LOGIN', true);
    
    /** SSL в панели входа */
    define('FORCE_SSL_ADMIN', true);

    Результатов это не дало (((

    Нашел еще вот такие запросы в базу, но пока их не делал:

    UPDATE wp_posts
    SET post_content = REPLACE (post_content, 'http://старый.ru', 'https://новый.ru')
    
    UPDATE wp_postmeta
    SET meta_value = REPLACE (meta_value, 'http://старый.ru','https://новый.ru')
    
    UPDATE wp_posts
    SET guid = REPLACE (guid, 'http://старый.ru', 'https://новый.ru')
    
    UPDATE wp_posts SET post_content = REPLACE (post_content, 
    'src="http://старый.ru', 'src="https://новый.ru');

    P.S. При подключении ssl через запросы тоже менял данные в базе, не помню как плагин назывался …

    Модератор Юрий

    (@yube)

    появилась гипотеза, что подобный отказ админки связан с подключением ssl.

    Возможно, конечно, и такое, но, как по мне, маловероятно.

    Нашел еще вот такие запросы в базу, но пока их не делал:

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

    Для замены строк в БД рекомендуется использовать плагин https://ru.wordpress.org/plugins/better-search-replace/. Но и с ним нет 100% гарантии, поэтому обязательно нужно делать бэкап (наличие которого, к слову, тоже не дает 100% гарантии)

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

    А по поводу добавления строк в wp-config.php что посоветуете ? Оставлять или не нужны они ?

    Модератор Юрий

    (@yube)

    А по поводу добавления строк в wp-config.php что посоветуете ?

    Они имеют смысл в случае, когда сайт доступен в обоих вариантах: и http, и https. Если редирект http→https сделан на уровне web-сервера, то эти строки лишние, все равно без ssl зайти на сайт не получится.

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

    Наткнулся вот на такую тему: https://ru.wordpress.org/support/topic/не-открывает-редактор-страниц/ Ситуация с моей идентичная…

    Через панель разработчика браузера посмотрел, что происходит в админке. Увидел много блокировок загрузки смешанного активного содержимого. В подавляющем большинстве это скрипты, которые лежат по адресу /wp-includes/js/

    Обращение к ним идет по не защищенному протоколу. На выходе получается при обращению к странице 93 предупреждения и 145 ошибок.

    Это только мои предположения, но не может ли в этом быть причина всех моих бед ?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

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

    Вполне может быть и в этом причина. В общих настройках адрес сайта и адрес WordPress указаны с http:// или https://?

    Адрес WordPress и адрес сайта указаны как https://

    И всплыл новый привет от админки. При входе не перенаправляет а админ панель, а остается на wp-login.php

    • Ответ изменён 2 недели, 3 дня назад пользователем Kanjo.

    В таблице wp_posts, столбец guid обнаружил адреса с http

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

    Оно ?

    UPDATE wp_posts
    SET guid = REPLACE (guid, 'http://старый.ru', 'https://новый.ru')
    • Ответ изменён 2 недели, 2 дня назад пользователем Kanjo.
Просмотр 15 ответов — с 16 по 30 (всего 36)