我有一個頁面導航數字自定義WordPress的搜索頁面,我的客戶要求我在第1頁隨機產品,但不爲其他人,但所有產品隨機顯示在首頁應不顯示在其他頁面上。WordPress的,隨機產品只在首頁搜索頁
對於查詢我有這樣的代碼:
$args = array(
'post_type' => 'products',
'paged' => (get_query_var('paged') ? get_query_var('paged') : 1)
)
和隨機:
if($args['paged'] == 1) {
$args['orderby'] = 'rand';
} else {
$args['order'] = 'DESC':
}
結果是有當我做了搜索,並且第一頁隨機很好,但有些產品由於隨機顯示在主頁上的信息也顯示在其他頁面上(例如:第2頁)。
目標不顯示已在主頁上顯示的產品。
我已經做類似的事情:
if($page == 1) shuffle($r->posts);
但它僅洗牌首先將10個產品第1頁上,和其他產品對他人頁第1
上從來沒有顯示過了一些想法,我認爲將前10個隨機產品存儲到cookie或會話,併爲其他頁面做NOT IN?喜歡這個 ?
if($args['paged'] == 1){
$args['orderby'] = 'rand';
$r = new Wp_Query($args);
$randomFirstPage = wp_list_pluck($r->posts, 'ID');
print_r($randomFirstPage);
setcookie('firstPageResults', $randomFirstPage, time()+3600, '/', 'mydomain.com/dev');
}else{
$not_in = $_COOKIE['firstPageResults'];
$args['NOT IN'] = $not_in;
$r = new Wp_Query($args);
}
對不起,英文不好,你可以幫我嗎?
感謝