1

Edit Flow プラグインを使用して Wordpress サイトを開発しているので、カスタム投稿ステータスを作成して、作成者と寄稿者の投稿をより簡単に管理できます。

そのため、カスタム投稿ステータスを作成し、次のフィルターを取得して、編集機能をその投稿に制限しました。正常に動作していますが、問題は、ユーザー (管理者を除く) が投稿をプレビューできないことです。他のユーザーは引き続きダッシュボードの投稿リストに「プレビュー」リンクを表示できますが、それをクリックして投稿のプレビュー ページ (../post-with-custom-status/?preview=true) に移動すると、「投稿できる」と表示されます。見つかりません。

function restrict_edit_custom_status_posts( $allcaps, $cap, $args ) {

    // Bail out if we're not asking to edit a post ...
    if( 'edit_post' != $args[0]
        // ... or user is admin
        || !empty( $allcaps['manage_options'] )
        // ... or user already cannot edit the post
        || empty( $allcaps['edit_posts'] ))
        return $allcaps;

    // Load the post data:
    $post = get_post( $args[2] );

    // If post have custom status
    if( 'my_custom_status' == $post->post_status ) {
    // Then disallow editing
    $allcaps["edit_posts"] = FALSE;
        return $allcaps;
    }

    return $allcaps;
}

add_filter( 'user_has_cap', restrict_edit_custom_status_posts10, 3 );

編集機能を制限しながらプレビューを許可する方法はありますか?

4

1 に答える 1