現在、Wordpress で検索を設定しようとしていますが、現在クエリ内の検索用語が失われているため問題が発生しています。これは、WP クエリを設定するのではなく、新しいクエリを実行しているためだと思います。
現在の問題
現在、次のコマンドを実行しています (タクソノミーfeature
とlocation
検索語を検索する例です。
if ($s_feature != "" && $s_location != "")
{
$s_feat_array = array(
'taxonomy' => 'feature',
'terms' => array($s_feature),
'field' => 'slug',
'relation' => 'AND',
);
$s_loc_array = array(
'taxonomy' => 'location',
'terms' => array($s_location),
'field' => 'slug',
);
$housequery['tax_query'] = array(
'relation' => 'AND',
'orderby' => 'title',
'order' => 'ASC',
$s_feat_array,
$s_loc_array
);
query_posts($housequery);
}
残念ながら、これは送信された検索語やその他のクエリを検索するものではありません。
私の試み
$query
したがって、新しいコマンドを実行するのではなく、「設定」する必要があると思います。次のコードが機能することを確認しました。
$query->set('post_type',array('houses'));
ただし、次のようにクエリを変更しようとしましたが、代わりに致命的なエラーが発生しました (非オブジェクトのメンバー関数への呼び出し):
$query->set(array('taxonomy','location','terms',
array($s_location),'field',array('slug')));
本当にかなり困惑していますが、配列が正しく構造化されていないことに関係していると思いますので、どんな助けでも大歓迎です。