wordpressのカスタムフィールドでセレクトボックスを使用し、その項目について複数検索を行いたく、以下のサイト(http://kotori-blog.com/wordpress/refinement_search/)を参考にしましたが、「カスタムフィールドでセレクトボックスを使用したものだけ」うまくいかず、ご質問させていただきます。
ほかの検索はうまく表示できております。
私のやったことは以下の通りです
カスタムフィールドにて「フィールドタイプ」セレクトボックスで
「選択し」が
駐車場あり : 駐車場あり
ペット相談 : ペット相談
二階以上住戸 : 二階以上住戸
室内洗濯機置き場 : 室内洗濯機置き場
エアコン付き : エアコン付き
オートロック : オートロック
フローリング : フローリング
間取り図付き : 間取り図付き
物件動画付き : 物件動画付き
定期借家を含まない : 定期借家を含まない
form.phpにて下記を記述(今回の質問に必要な部分のみ書いてますのでかなり省略しています)
if(isset($_GET['keyword'])){
$keyword = $_GET['keyword'];
}
<label class="keyword"><input type="checkbox" name="keyword[]" value="駐車場あり" id="key01" <?php if(isset($keyword)){ if(in_array("駐車場あり", $keyword)){echo "checked";}}?>>駐車場あり</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="ペット相談" id="key02" <?php if(isset($keyword)){ if (in_array("ペット相談", $keyword)){echo "checked";}}?>>ペット相談</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="二階以上住戸" id="key03" <?php if(isset($keyword)){ if (in_array("二階以上住戸", $keyword)){echo "checked";}}?>>二階以上住戸</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="室内洗濯機置き場" id="key04" <?php if(isset($keyword)){ if (in_array("室内洗濯機置き場", $keyword)){echo "checked";}}?>>室内洗濯機置き場</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="エアコン付き" id="key05" <?php if(isset($keyword)){ if (in_array("エアコン付き", $keyword)){echo "checked";}}?>>エアコン付き</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="オートロック" id="key06" <?php if(isset($keyword)){ if (in_array("オートロック", $keyword)){echo "checked";}}?>>オートロック</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="フローリング" id="key07" <?php if(isset($keyword)){ if (in_array("フローリング", $keyword)){echo "checked";}}?>>フローリング</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="間取り図付き" id="key08" <?php if(isset($keyword)){ if (in_array("間取り図付き", $keyword)){echo "checked";}}?>>間取り図付き</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="物件動画付き" id="key09" <?php if(isset($keyword)){ if (in_array("物件動画付き", $keyword)){echo "checked";}}?>>物件動画付き</label>
<label class="keyword"><input type="checkbox" name="keyword[]" value="定期借家を含まない" id="key10" <?php if(isset($keyword)){ if (in_array("定期借家を含まない", $keyword)){echo "checked";}}?>>定期借家を含まない</label>
search.phpにて
<? $keyword = $_GET['keyword']; if($keyword){ foreach($keyword as $val3){ $metaquerysp[] = array( 'key'=>'keyword', 'value'=> $val3, ); } } ?> <?php if (is_array($keyword)) { ?>こだわり(カスタムフィールドのチェックボックス):<?phpforeach($keyword as $val3){
if ($val3 === end($keyword)) {
echo $val3;
}else{
echo $val3.", ";
}
}
}
?>
また、wpの方では
駐車場あり
ペット相談
二階以上住戸
室内洗濯機置き場
エアコン付き
に、チェックをつけています。
検索結果は「駐車場あり, ペット相談」にチェックをつけた場合、
検索条件
こだわり(カスタムフィールドのチェックボックス):駐車場あり, ペット相談
検索結果
該当なし
となってしまいます。
チェックボックス以外の検索では
検索結果に
表示したいものがでてくるのですが、これだけどうしても「該当なし」になってしまいます。
なぜうまくいかないのか、まったく検討がつきません。
よろしければ回答いただけると非常にありがたく思います。どうかよろしくお願い致します。
あなたの回答
tips
プレビュー