1

これは、投稿やメディアにとどまりません。私はいくつかの CPT とカレンダーを持っています。ワードプレスでユーザー名をチェックして、作成したコンテンツのみを表示する方法はありますか?

4

3 に答える 3

2

バックエンドで、表示されるすべての投稿タイプをフィルタリングし、使用できる視覚化を制限しますpre_get_posts

add_action( 'pre_get_posts', 'users_own_content_so_12761756' );

/**
 * Show only posts of the current user in the dashboard
 * affects posts, pages, media and custom post types
 */
function users_own_content_so_12761756( $wp_query_obj ) 
{
    // Restrict hook to the backend
    if( !is_admin() )
        return;

    global $current_user;
    get_currentuserinfo();

    // http://php.net/manual/en/function.is-a.php
    if( !is_a( $current_user, 'WP_User') )
        return;

    if( !current_user_can( 'administrator' ) )
        $wp_query_obj->set( 'author', $current_user->ID );
}

このコードを適用すると、投稿数が正しくないことがわかります。ユーザー数ではなく、合計数が表示されます。それを調整するには、この Q&A を参照してください:管理インターフェイスで投稿数 (公開、下書き、未添付) を更新します

他の人の投稿/ページ/cpts を編集する権利をブロックして、ユーザーの役割と機能にも注意する必要があります。これは、ユーザーがexample.com/wp-admin/post.php?post=POST_ID&action=edit権限を持っていれば、ブラウザーのアドレスを入力して投稿にアクセスできるためです。

于 2013-04-04T22:13:21.530 に答える
0

members プラグインを使用して、ユーザーのカスタム定義ロールを作成します。

http://wordpress.org/extend/plugins/members/

于 2013-04-09T21:30:17.487 に答える