これは、投稿やメディアにとどまりません。私はいくつかの CPT とカレンダーを持っています。ワードプレスでユーザー名をチェックして、作成したコンテンツのみを表示する方法はありますか?
質問する
534 次
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 プラグインを使用して、ユーザーのカスタム定義ロールを作成します。
于 2013-04-09T21:30:17.487 に答える