2012-02-22 76 views
0

我使用了CCTM插件,並且我創建了幾個自定義的帖子類型。在每個帖子類型中,都有一個名爲location的自定義字段。WordPress的管理員:基於用戶登錄篩選帖子

我需要按位置過濾帖子列表 - 取決於登錄的用戶。

例如,有35個職位與常見位置名稱(如在自定義字段設置): 20帖=位置是「日本」 15帖=位置是「韓國」

當管理日誌中,他應該看到所有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; 
?>