いつもお世話になっております。
Wordpressの検索結果ページで以下のようなことで詰まっております。
【やりたいこと】
searchform.php で
php
1<input type="text" name="s" id="s" placeholder="検索" />//検索ワード 2<input type="text" name="product_number">//品番 3<input type="radio" name="product_category">//カテゴリ 4
という項目がありまして、search.phpに
php
1if($_GET['s']){$s = $_GET['s'];}//フリーワード 2if($_GET['product_number']){$product_number = $_GET['product_number'];} 3if($_GET['product_category']){$product_category = $_GET['product_category'];} 4 5query_posts( 6 array( 7 's'=>$s, 8 'meta_query'=> array( 9 array( 10 'key'=>'product_number', 11 'value'=>$product_number, 12 'compare' => '=',//値と一致する 13 ), 14 array( 15 'key'=>'category', 16 'value'=>$product_category, 17 'compare' => 'LIKE', 18 ), 19 'relation' => 'AND' 20 ) 21 )
という形でsearchform.phpから全部の項目が送信された場合は動くのですが、どれかひとつでも値がない(ラジオボタンのチェックがない)場合に検索結果が0件になってしまいます。
値が送信されたもののみでAND検索を行うことは可能でしょうか?
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー