複数パラメータを連結して絞り込み

情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。

投稿タイプのアーカイブURLに ?taxonomy=aaa のようにパラメータを付けて、ターム一覧をアーカイブと同じテーマで表示させる、というのはよくあるのですが、絞り込みの際に複数選択した場合、パラメータは ?taxonomy=aaa&taxonomy=bbb のようになり、結果はbbb の一覧が表示されます。aaa とbbb 両方表示させるには?taxonomy=aaa,bbb でなくてはなりません。

そこで、フォームと結果表示の間にページを挟んでパラメータを組み替え、リダイレクトさせるためのコードです。
結果用のページを作成して、受け取ったパラメータからコードを組んでもいいですが、アーカイブと同じ表示で良い場合は、物件検索などもタクソノミーで組むと楽です。
フォーム側はチェックボックスで name=”xxxxx[]” のようにします。

<?php
if (!empty($_GET['area'])) { $area = $_GET['area'];
 }
if (!empty($_GET['kubun']) && is_array($_GET['kubun'])) { foreach ($_GET['kubun'] as $kubun) { $kubuns[] = $kubun; } $kubunlist = join( ',', $kubuns );
 }
$searchurl = esc_url( home_url( '/' ) ).'archive?area='.$area.'&kubun='.$kubunlist; wp_safe_redirect( $searchurl ); exit; ?>

警告が出ない書き方は!empty($_GET または、isset($_GET

関数書きますので、気軽にお問い合わせください。
問い合わせフォーム / m.fuchibe@web-taiyo.com / Chatwork ID:taiyoblog