Надеюсь, что сегодняшний пост блога будет для Вас полезен.
В статье Дубли медиафайлов я рассказывал как wordpress создает множество копий, загружаемых вами изображений.
А тут столкнулся с ошибками, которые образуются при обновлении тем и плагинов. При этом движок сообщает: «Устаревшие функции wordpress». И вот решил поведать вам.
Однако ошибок этих не заметно, но сайт работает неправильно. Например, не публикуются комментарии, не очищается корзина спама, не определяются существующие посты и так далее. Но эти ошибки не видны при стандартом файле wp-config.php.
Как увидеть уведомления вордпресс об ошибках?
Делается это с помощью debug режима. Открываем wp-config.php и ищем строку: define(‘WP_DEBUG’, false)
и меняем её на: define(‘WP_DEBUG’, true); define(‘WP_DEBUG_LOG’, true); define(‘WP_DEBUG_DISPLAY’, true);
Тогда WordPress в шапке консоли будет сообщать Вам об ошибках. Эти ошибки разнообразные и устранение их не всегда понятное, если не владеешь PHP. Например, я беру ошибку:
Notice: Функция add_custom_background с версии 3.4 считается устаревшей! Используйте add_theme_support( ‘custom-background’, $args ). in /home/31264/public_html/wp-includes/functions.php on line 3201
Обращаюсь на форум WordPress.org, где модератор форума, и многие в интернете, уточняют, что Notice — это не ошибка, а уведомление о несовпадении атрибутов новой версии вордпресс с функциями старой темы или плагина.
Иду на хостинг. А на хостинге в техподдержке сказали, что именно это предупреждение порождает последующие ошибки и поэтому не работают комментарии, не загружаются медиафайлы, не добавляются новые посты.
В интернете нашел, что это связано с файлом functions.php темы. А именно, ищем в этом файле функцию add_custom_background :
Заменяете на
Но у меня в теме ничего менять не надо, там всё правильно написано. Открываю файл functions.php в WordPresse и в строке 3201 ничего не нахожу, чтобы исправить? А честно сказать, не знаю что править.
Вновь роюсь в недрах интернета и нахожу следующее. Умные головы советуют проверить файлы на наличие пробелов в коде перед < ?php и после ?>, наличие пустых строк в начале и конце файла, проверить кодировку UTF8 на наличие BOM и перекодировать файлы wp-config.php, functions.php темы и ворпресс, а затем сохранить и залить снова на хостинг.
Сделал всё как сказали. Проверил, перекодировал, перезалил. Но блог толком не работает.
Снова начинаю ходить по интернету и искать нужную информацию на форуме WordPress. Модератор форума предложил следующее:
Перезалил тему, перезалил ворпресс – ноль по вдоль. Вот, думаю влип. Это хорошо для тех кто понимает в программировании на PHP.
А я-то просто пользователь со своим блогом. Уже как три недели ничего исправить не могу. Сайт упал в посещениях. Я в полном трансе. Злость на весь интернет и свою беспомощность.
У меня не загружаются медиафайлы, не публикуются комментарии, не сохраняются изменения статей и не публикуются новые, зарегистрированные пользователи не могут получить пароль для входа и так далее.
Тогда я стал переводить все сообщения, которые выдает вордпресс. Оказалось очень много сообщений о плагинах WPPage и WP Super Cache.
Я решил их деактивировать и посмотреть на работу движка. Оказалось, что действительно эти два плагина конфликтуют с вордпрессом. Больше всего WP Super Cache.
Резюме:
На сегодня всё.
Пока. До встречи в статье «Как найти и удалить битые ссылки?»
С уважением, Николай Иванов.
Не жадничай на комментарий и расскажи друзьям.
3 пинга