WordPress PHP警告:从第627行的wp-admin\includes\post.php中的空值创建默认对象

我正在使用PHP 5.6.8在Windows中使用Wordpress 4.2.2, Xampp安装

我在主题的functions.php中添加了以下功能, 以自动设置帖子类型”出发”的标题:

function custom_title() {
    if ($_POST['post_type'] == 'departure') :
        $post_title = 'Departure-'.$_POST['post_ID'];
        return $post_title;
    endif;
    }
 add_filter ( 'title_save_pre', 'custom_title' );

自定义帖子类型”出发”的标题设置工作正常。但是, 当我尝试添加新的wordpress标准帖子(即post_type = post)时, 出现以下错误:

警告:从第627行的wp-admin \ includes \ post.php中的空值创建默认对象

627行如下:

/**
 * Filter the default post content initially used in the "Write Post" form.
 *
 * @since 1.5.0
 *
 * @param string  $post_content Default post content.
 * @param WP_Post $post         Post object.
 */
$post->post_content = apply_filters( 'default_content', $post_content, $post );

所有其他帖子类型(即自定义类型和wordpress标准页面)都可以正常工作。通过将$ _POST数据转储到日志文件中, 我已经看到, 对于所有工作的post类型, 一个空数组(即array())作为$ _POST数据传递。使用” post”帖子类型不会发生这种情况。

如果我在functions.php中注释该函数, 则在添加新的” post”帖子类型时, 将空数组作为$ _POST数据发送, 问题消失了。

有任何想法吗?

谢谢


#1


即使帖子类型不是离开, 也需要返回一个值。该函数应带有一个参数, 并返回以下内容:

function custom_title($post_title) {
    if ($_POST['post_type'] == 'departure') {
        $post_title = 'Departure-'.$_POST['post_ID'];
    }
    return $post_title;
}
add_filter ( 'title_save_pre', 'custom_title' );

来源:

https://www.srcmini02.com/67711.html

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?