2

昨天升级 wordpress 后出现此错误。它指向我的一个插件:

警告:in_array() [function.in-array]:第 402 行 /home/healt134/public_html/wp-content/plugins/video-thumbnails/video-thumbnails.php 中第二个参数的数据类型错误

Warning: Cannot modify header information - headers already sent by

(输出开始于 /home/healt134/public_html/wp-content/plugins/video-thumbnails/video-thumbnails.php:402)在第 897 行的 /home/healt134/public_html/wp-includes/pluggable.php

我查看了 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;
        }
    }
}
4

1 回答 1

3

我认为您在那里偏离了几行,尝试降低 4 行。我的猜测是$video_thumbnails_post_types不是一个数组。

从该if语句中的第二个条件来看,它看起来$video_thumbnails_post_types可能是一个标量(字符串、整数等)。如果您愿意,请将代码修改为

if (in_array($post_type, (array) $video_thumbnails_post_types)
    || $post_type == $video_thumbnails_post_types)
于 2011-05-12T22:11:24.787 回答