0
首先,SORRY的標題,我不知道如何用幾句話來解釋這個!通過另一個wp過濾器過濾meta_query的Wordpress結果
我有一個查詢,從他們有一個元鍵的main_query中刪除帖子/頁面。
但是,在一個特定的頁面(頭版)我也想過濾一個類別(頭版新聞)。我嘗試添加下面的代碼,但它打破了。
任何人都可以幫我完善這個請嗎?
爲清楚起見,我想全球的meta_keys和meta_keys和類別的一個模板而已,前page.php文件過濾
`函數hide_private_posts($查詢){
// If user isn't logged in, hide all private posts/pages
if(!is_user_logged_in()) {
if ($query->is_main_query()) {
$query->set('meta_query', array(
array(
'key' => 'smartPrivate',
'value' => 'smartPrivate_loggedIn',
'compare' => '!='
),
array(
'key' => 'smartPrivate',
'value' => 'smartPrivate_loggedInMentors',
'compare' => '!='
)
));
}
// If user is logged in but a learner, show logged in posts/pages
} else if(is_user_sso_role(array('learner'))) {
if ($query->is_main_query()) {
$query->set('meta_query', array(
array(
'key' => 'smartPrivate',
'value' => 'smartPrivate_loggedInMentors',
'compare' => '!='
)
));
}
} // Else don't filter posts and pages
if (is_front_page()) {
query_posts($query . '&category_name=front-page-news');
}
return $query;
}
add_filter('pre-get-posts' , 'hide_private_posts');`