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 に答える