• Здравствуйте,

    Увидел в файле debug.log:

    [26-Feb-2016 04:38:08 UTC] PHP Notice: Вызванный метод конструктора класса WP_Widget считается устаревшим с версии 4.3.0! Используйте

    __construct()

    . in /var/www/vh151725/data/www/overwatchpro.ru/wp-includes/functions.php on line 3624

    Посмотрел строку на которую ругается:

    trigger_error( sprintf( __( ‘The called constructor method for %1$s is deprecated since version %2$s! Use %3$s instead.’ ), $class, $version, ‘

    __construct()

    ‘ ) );

    Вроде бы присутствует что нужно.

    Подскажите вчем проблема? Как вылечить?

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • [26-Feb-2016 04:38:08 UTC] PHP Notice: Вызванный метод конструктора класса WP_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <pre>__construct()</pre>. in /var/www/vh151725/data/www/overwatchpro.ru/wp-includes/functions.php on line 3624

    trigger_error( sprintf( __( 'The called constructor method for %1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.' ), $class, $version, '<pre>__construct()</pre>' ) );

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Посмотрел строку на которую ругается

    Проблема не в этой строке, а в теме или плагине с устаревшим конструктором виджета.

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

    Если хотите самостоятельно исправить код, то нужно найти проблемный виджет с помощью пунктов 4—6. Затем заменить в нём строку WP_Widget::WP_Widget() или parent::WP_Widget() на parent::__construct().

    `благодарю ))

    Я выяснил ккой плагин вызывает это предупреждение.
    Где искать устаревший кусок кода?

    [26-Feb-2016 09:48:00 UTC] PHP Notice: Вызванный метод конструктора класса WP_Widget считается устаревшим с версии 4.3.0! Используйте

    __construct()

    . in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/functions.php on line 3624
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Undefined property: stdClass::$ID in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/user.php on line 1129
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Undefined property: stdClass::$ID in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/user.php on line 1130
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Undefined property: stdClass::$ID in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/user.php on line 1131
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Undefined property: stdClass::$ID in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/user.php on line 1132
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Вызванный метод конструктора класса WP_Widget считается устаревшим с версии 4.3.0! Используйте

    __construct()

    . in /home/e/e888214p/e888214p.bget.ru/public_html/wp-includes/functions.php on line 3624
    [26-Feb-2016 09:48:06 UTC] PHP Notice: Use of undefined constant XenForo_Application — assumed ‘XenForo_Application’ in /home/e/e888214p/e888214p.bget.ru/public_html/wp-content/plugins/xenword-2.4.3.03/includes/class-xenword-admin-notices.php on line 67

    Я обнаружил плагин, который вызывает данное предупреждение.

    Как теперь найти файл в котором надо произвести замену?
    Сделал поиск по «::WP_Widget» — не нашел ничего.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Я обнаружил плагин, который вызывает данное предупреждение.

    Какой это плагин и какие в нём есть виджеты?

    Плагин XenWord 2.4.3.03
    у него много файлов в папке widgets.

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Тема «__construct()» закрыта для новых ответов.