LoginSignup
jyujyuji
@jyujyuji

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

wordPressでカスタムタクソノミーを使用したカテゴリ検索機能を実装したい。

解決したいこと

wordPressでカスタムタクソノミーを使用したカテゴリ検索機能を実装したい。
URLに
http://localhost/wp-demo/news?news_cat%5B%5D=11
というような形で入力されている
11はカテゴリID、news_catはタクソノミー名
実現したいことは、上記のURLの時はカテゴリID「11」に紐づく投稿しか表示されないようにしたい
現状は、上記URLにアクセスしても検索結果は0件しか表示されない

該当するソースコード

functions.phpに記載のコード

    function filter_news_by_cat_query( $query ) {
        // 管理画面のクエリやメインクエリでない場合は除外
        if ( !is_admin() && $query->is_main_query() &&  $query->is_post_type_archive('news')) {

            if ( isset($_GET['news_cat']) && !empty($_GET['news_cat']) ) {
                $tax_query = array(
                    array(
                        'taxonomy' => 'news_cat',
                        'field'    => 'term_id',
                        'terms'    => array($_GET['news_cat']),
                        'operator' => 'IN',
                    ),
                );
                // タクソノミークエリを追加
                $query->set( 'tax_query', $tax_query );

                $test = array($_GET['news_cat']);
                print_r($test);
            }
        }
    }
    add_action( 'pre_get_posts', 'filter_news_by_cat_query' );

'terms' => array($_GET['news_cat']),
の部分がタームIDを取得できていない?この書き方だと良くないのか?
が分からないのでどなたかご教授頂きたいです。

0

No Answers yet.

Your answer might help someone💌