這與當前用戶是誰無關。如果產品的作者是管理員,我想要完成的是隱藏商店和存檔頁面上的任何產品。我嘗試在此處和其他地方進行搜索,但我發現的任何內容都與當前用戶是否已登錄或是否為管理員有關。非常感謝任何幫助!
function hide_product_by_user_role( $query ) {
$authors = ( array ) $product->authors; // obtaining product author -- this is wrong
if ( $query->is_main_query() && is_woocommerce() && $authors[0] != 'administrator' ) {
.... what do I do here?
}
}
add_action( 'pre_get_posts', 'hide_product_by_user_role' );
uj5u.com熱心網友回復:
- 查找管理員 ID
- 將它們包括在
query
add_action('pre_get_posts', 'hide_product_by_user_role', 999);
function hide_product_by_user_role($query){
$users_args = array(
'role__in' => array('Administrator'),
'fields' => 'ID'
);
$admins_ids = get_users($users_args);
if ($query->is_main_query() && is_woocommerce() ) {
$query->set('author__in', $admins_ids);
}
}
參考:https :
//developer.wordpress.org/reference/classes/wp_query/#parameters
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/381048.html
標籤:WordPress的 求购
