2012-02-22 37 views
0

私はCCTMプラグインを使用していましたが、いくつかのカスタム投稿の種類を作成しました。各投稿タイプには、locationという名前のカスタムフィールドがあります。Wordpress Admin:ユーザーのログインに基づいて投稿をフィルタする

ログインしたユーザーに応じて、場所によって投稿のリストをフィルタリングする必要があります。 20ポスト=場所は「日本」である 15ポスト=場所は「韓国」である

管理ログに:

例えば、(カスタムフィールドに設定される)共通の場所名を持つ35件の記事があります、彼はすべての35の投稿を見なければならない。 japan_adminがログインすると、場所名が「日本」の投稿のみが20件表示されます。 korea_adminがログインすると、ロケーション名が「韓国」の投稿が15件表示されます。

これを行う方法についてご意見をお寄せください。私は今日多くを検索し、これに関連する利用可能なプラグインがないことを発見しました。 wpフックを行う必要があるかもしれませんか?

答えて

1

追加の連絡先名国を最初に追加します。以下のコードはあなたを助けます。

<?php 
function my_user_contactmethods($user_contactmethods){ 
$user_contactmethods ['coutry'] = 'Coutry'; 
return $user_contactmethods ; 
} 
add_filter('user_contactmethods','my_user_contactmethods'); 

global $current_user; 
get_currentuserinfo(); 
$location = $current_user->coutry; 

if(current_user_can('manage_sites')){ 
query_posts('per_page_posts=-1&post_type=all you post type name'); 
}elseif($location = 'Japan'){ 
    query_posts('per_page_posts=-1&post_type=all you post type wanna show the japanese guys'); 
}elseif($location = 'Korea'){ 
query_posts('per_page_posts=-1&post_type=all you post type wanna show the korean  guys'); 
} 
while(have_posts()):the_post(); 
//normal code ... 
endwhile; 
?> 
関連する問題