пр. Мира 620000 Россия +7900-000-00-00
Логотип блога интернет-бродяги

Метод конструктора класса WP_Widget устарел

Метод WP_Widget устарел

Последнее обновление - 27 декабря 2020 в 21:22

Пару дней назад, на одном из сайтов, включив режим отладки, я получил вот такое сообщение: «Deprecated: Вызванный метод конструктора класса WP_Widget в zerif_testimonial_widget считается устаревшим с версии 4.3.0! Используйте __construct(). in /var/www/u1234094/data/domen/wp-includes/functions.php on line 4870».

Ошибка в режиме отладки

Режим отладки сайта, работающего на WordPress, включается при помощи редактирования кода в файле wp-config.php, находящегося в корневой директории. Надо заменить строку

define('WP_DEBUG', false);

на

define('WP_DEBUG', true);

Я нисколько не удивился тому, что вылезла эта ошибка. Ведь тема на сайте не обновлялась со дня её установки. И это было ещё до выхода версии 4.3.0 WordPress.

Вордпресс подсказывает, что ошибка содержится в файле темы functions.php, с указанием конкретной строки. Всё, что нам нужно сделать, это заменить устаревший вызов конструктора с $this->WP_Widget на parent::__construct.

Я открыл на редактирование файл functions.php и, ориентируясь на вышеуказанную строку — line 4870, обнаружил объявленную функцию, которая выглядела следующим образом:

class zerif_ourfocus extends WP_Widget
{

function zerif_ourfocus()
    {

        $widget_ops = array('classname' => 'ctUp-ads');

        $this->WP_Widget('ctUp-ads-widget', 'Zerif - Our focus widget', $widget_ops);

    }}

Чтобы устранить вышеуказанную ошибку, я привёл функцию к следующему виду:

class zerif_ourfocus extends WP_Widget
{

function __construct()
    {

        $widget_ops = array('classname' => 'ctUp-ads');

        parent::__construct('ctUp-ads-widget', 'Zerif - Our focus widget', $widget_ops);

    }}

Пробежавшись по файлу functions.php, обнаружил, что класс WP_Widget встречается в нём несколько раз. Вот, например, ещё.

Ещё ошибка

Несколько кликов мышкой, и проблемы нет.

Ошибка исправлена в файле

Теперь, в режиме отладки какие бы то ни было ошибки на сайте отсутствуют.

Друзья, плюсаните, вдруг пригодится!

Почитайте похожие материалы

Об авторе: Hobo

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

51 + = 57