$products_in_cart = '112,109,106';
的query_posts:
query_posts(array(
'post_type' => 'product',
'post__not_in' => array($products_in_cart),
...
如果我通過112,109,106
查詢$products_in_cart
更換工作。
這個變量在循環外是好的,不明白這個基本用法有什麼問題,謝謝你的幫助。
$products_in_cart = '112,109,106';
的query_posts:
query_posts(array(
'post_type' => 'product',
'post__not_in' => array($products_in_cart),
...
如果我通過112,109,106
查詢$products_in_cart
更換工作。
這個變量在循環外是好的,不明白這個基本用法有什麼問題,謝謝你的幫助。
您必須將ID數組傳遞給post__not_in
。因爲你需要在'post__not_in'
數組,要創建一個數組,但有一個輸入
...
'post__not_in' => explode(",", $products_in_cart),
...
感謝您的幫助,現在工作得很好 – jjj
:'112, 109, 106'
如果你開始一個逗號分隔的字符串,你可以使用PHP函數explode
將其擴展到一個數組。您必須使用explode
功能。事情是這樣的:
$products_in_cart = '112,109,106';
然後:
'post__not_in' => explode(",", $products_in_cart),
或者只是創建從一開始的數組:
$products_in_cart = array(112, 109, 106);
我的猜測是,'陣列(112,96,80)'是Array [[0] => 112 [1] => 96 [2] => 80)','array('112,96,80')'是Array([0] => 112,96 ,80)',所以當你把它看成是一個字符串時,它將該值看作一個字符串,而不是每個值都是分開的(由於引號)。 –