カスタム分類法に基づいたワードプレスの高度な検索に取り組んでいます。私は48時間から立ち往生しているので、助けや考えが欲しいと思っていました...
ステップ 1 --- js ファイルでは、クエリ文字列は次のように作成されます。
if (jQuery('#s').val() == ''){
URL = "/?genre=" + genre + '...other Stuff' #content';
}else{
URL = "/?s="+searchQueryString+"&genre=" + genre +'...other stuff' #content';
}
ブラウザの URL を変更したり、ヘッダーをリロードしたりせずに、#content div にカスタム ループを適切にロードします。:-)
ステップ 2 --- 次に、 function.php に 2 つの関数を記述しました。1 つはメイン ページの GET[] 要素を使用してループをロードし、new WP_Query
もう 1 つは検索クエリに対して同じことを行います。
add_action('pre_get_posts','SearchFilter');
content.php で GET[s] を使用して GET[] フィルターをコンパイルしていますが、それでもすべて問題ありません....
ステップ3 --- (問題^^)---
ループの結果に応じて、header.php にあるラジオ ボタンを無効にする css クラスを追加したいと考えています。
Try-1ループが発生している間に見つかった用語をコンパイルするための php 配列を作成し、それをボタンの値と比較できると思いました。
$args = array('orderby' => 'name', 'order' => 'ASC', 'fields' => 'slugs');
$results = wp_get_post_terms(get_the_ID(),'category',$args);
foreach ($results as $result){
array_push($stack, $result);
}
global $post;
しかし、後でヘッダーの配列からデータを取得したり、URL が変更されないなどの方法でヘッダーからデータを作成したりする方法はありません。ホームページのクエリを表示するだけです。
Try-2また、それを json にエンコードしてから、js ファイルに何らかのアクションを入れることができると考えました。しかし、今のところjsonの予期しない文字を返すだけで、それをクラックしてもjsファイルが重くなるので、正しい方法ではないだろうと感じました。
グローバル wp_query について何かが欠けているだけで、スクリプトを課金する必要はないのでしょうか?
私の英語と長い質問を許してください、
アイデアがあれば、事前にどうもありがとう、
ダコ