Wordpress: Неправильный тип данных для второго аргумента?

Я получил эту ошибку вчера после обновления WordPress. Он указывает на один из моих плагинов:

Предупреждение: in_array() [function.in-array]: неверный тип данных для второго аргумента в /home/healt134/public_html/wp-content/plugins/video-thumbnails/video-thumbnails.php в строке 402

Warning: Cannot modify header information - headers already sent by

(вывод начался с /home/healt134/public_html/wp-content/plugins/video-thumbnails/video-thumbnails.php:402) в /home/healt134/public_html/wp-includes/pluggable.php в строке 897

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

    function save_video_thumbnail( $post ){
        $post_type = get_post_type( $post->ID );
        $video_thumbnails_post_types = get_option('video_thumbnails_post_types');
***     if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) {
            return null;
        } else {
            // Check that Video Thumbnails are enabled for current post type
            if (in_array($post_type, $video_thumbnails_post_types) OR $post_type == $video_thumbnails_post_types) {
                get_video_thumbnail($post->ID);
        } else {
            return null;
        }
    }
}

1 ответ

Решение

Я думаю, что вы на пару строк там, попробуйте на 4 строки ниже. Мое предположение $video_thumbnails_post_types это не массив.

Из второго условия в этом if заявление, похоже $video_thumbnails_post_types может быть скаляр (строка, int и т. д.). Если вы хотите, измените код, чтобы

if (in_array($post_type, (array) $video_thumbnails_post_types)
    || $post_type == $video_thumbnails_post_types)
Другие вопросы по тегам