0

我已经在 wordpress 页面上实现了登录/注册的可能性。所有注册用户都注册为“订阅者”。用户可以从我实现用于创建和编辑帖子的表单的页面添加和编辑帖子(“自定义帖子类型”)。当用户输入帖子的所有必填字段(在该页面上)时,他们可以保存并发布或保存并取消发布(因此他们可以继续编辑该帖子并在准备好时发布它)。

所以,我发现自己陷入了这个问题。

  • 当用户单击保存并发布按钮时,一切正常,我将 post_status 更改为“发布”,并且它的公开并且一切正常。

  • 如果用户单击保存并取消发布,我将 post_status 更改为草稿!(这里我有问题)是否有可能展示这个草稿(仅限创建它的用户)。预览之类的?

4

1 回答 1

1

除非你想对 WordPress 自定义功能进行长时间的修改......听起来你需要这样的东西......

这是我在某处找到的过滤器,用于从非管理员/作者的编辑帖子页面中删除帖子。当我不得不限制某些用户的功能时,我遇到了它。

/*
Show posts only owned by current user
*/
function posts_for_current_author($query) {
    global $pagenow;

    if( 'edit.php' != $pagenow || !$query->is_admin )
        return $query;

    if( !current_user_can( 'manage_options' ) ) {
        global $user_ID;
        $query->set('author', $user_ID );
    }
    return $query;
}
add_filter('pre_get_posts', 'posts_for_current_author');

我不记得我在哪里找到的,如果我找到源代码,我会回来编辑。

于 2012-05-17T22:46:44.303 回答