Ошибка с плагином WordPress после обновления до PHP 7.4

#php #wordpress #wpbakery

#php #wordpress #выпечка

Вопрос:

Эй, ребята, я был бы очень признателен, если бы кто-нибудь мог помочь мне с проблемой, с которой я столкнулся на моем веб-сайте WordPress после обновления до PHP 7.4 (я не настолько технически подкован).

Я подумал, что было бы неплохо обновиться до PHP 7.4 с 7.1 по соображениям безопасности, перед обновлением я убедился, что все мои плагины были обновлены, и мой WordPress работает с последней версией.

После обновления все прошло гладко, за исключением одного небольшого раздела на моем домашнем экране.

Веб-сайт на версии PHP 7.4

Я полагаю, что знаю плагин, используемый для этого раздела, это WPBakery, и у меня нет лицензии на него, поэтому он работает на версии 6.1

У меня также есть код, указывающий, в чем проблема: (строка 817)

 //Process Box
add_shortcode('process', 'process_func');
function process_func($atts, $content = null){
    extract(shortcode_atts(array(
        'shadow'     =>  '',    
        'number'     =>  '',    
        'title'      =>  '',     
        'image'      =>  '',   
        'style'      =>  'style1',   
    ), $atts));
    $img = wp_get_attachment_image_src($image,'full');
    $img = $img[0];
    ob_start(); 
?>
 

Я полагаю, что строка 817 — это $img = $img[0];

Вот как выглядит раздел веб-сайта в версии PHP 7.2

Веб-сайт на версии PHP 7.2

Если кто-то понимает проблему здесь и может объяснить это, я был бы очень признателен за помощь!

Комментарии:

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

2. Вы правы. Можете ли вы var_dump содержимое $img? Что происходит, когда вы пытаетесь получить доступ к чему-то, что или работает иначе, чем ожидалось (что каким-то образом принимала более старая версия php), или что оно не существует, когда 7.4 выдает уведомление. Я ожидаю последнего, но единственный способ узнать наверняка — сначала сбросить его

3. Привет, Диркос, спасибо, что перезвонили мне с этим вопросом. Где именно я должен выполнить var_dump? У меня есть доступ ко всему контенту для этого веб-сайта, но я не уверен, где я должен сделать var_dump, должен ли я добавить «var_dump» прямо над этой строкой кода? Я прошу прощения за то, что не понимаю, как это сделать.

4. Также код ошибки, указанный в WordPress, выглядит так: «Уведомление: попытка получить доступ к смещению массива при типе значения bool в /homepages/22/d466722045/htdocs/clickandbuilds/newww/wp-content/plugins/ot_composer/functions/shortcodes.ph[ / в строке 817

5. На всякий случай, если вы не видели изображения