如何使带有“发布”默认功能的自定义帖子不保存在草稿中?

时间:2017-04-04 作者:Akhilesh29989

这是我的自定义帖子类型代码,一切正常,但当我发布帖子时,帖子将以草稿模式保存。

     $args = array(
        \'labels\' => $labels,
        \'public\' => true,
        \'publicly_queryable\' => true,
        \'show_ui\' => true,
        \'show_in_menu\' => true,
        \'query_var\' => true,
        \'rewrite\' => array(\'slug\' => $slug),
        \'capability_type\' => \'post\',
        \'has_archive\' => true,
        \'hierarchical\' => false,
        \'menu_position\' => 4,
        \'supports\' => $supports,
        \'taxonomies\' => array( \'category\' ),
    );

    register_post_type(self::$PostTypeName, $args);

1 个回复
最合适的回答,由SO网友:Akhilesh29989 整理而成

使用“wp\\u insert\\u post\\u data”筛选器挂钩解决此类问题

add_filter(\'wp_insert_post_data\', \'filter_post_data\', 99, 2);

function filter_post_data($postData, $postarr) {

    if ($postData[\'post_status\'] == \'draft\') {
        $postData[\'post_status\'] = \'publish\';
    }

    return $postData;
}

相关推荐

是否可以取消对特定帖子类型的POSTS_PER_PAGE限制?

我想知道我是否可以取消特定帖子类型的posts\\u per\\u页面限制。在存档中。php页面我显示不同的帖子类型,对于特定的“出版物”帖子类型,我想显示所有帖子。我如何在不影响传统“post”类型的情况下实现这一点?