0

タグをカテゴリ別にフィルタリングする方法について多くの質問があることは承知していますが、助けが必要です。

$args = array(
    'tag' => get_queried_object()->slug, 
    'posts_per_page' => -1,
    'tax_query' => array(
        array(
            'taxonomy' => 'category',
            'field'    => 'slug',
            'terms'    => 'interior',
        ),
    )
); 
//get all posts
$posts_new = get_posts($args);

動作しますが、上記のクエリのパラメーターで使用するために、example.com/tag/lexington/?category=interiorまたはのようなときにURLからカテゴリを取得したいと思います。example.com/tag/lexington/category/interiorterms

ご清聴ありがとうございました。


過去数時間で、私は自分でこれをやろうとしましたfunctions.php:

function category_tag_rewrite_rule()
{
    add_rewrite_tag('%tag_category%', '([^&]+)');
    add_rewrite_rule('^tag/([^/]+)/?', 'index.php?tag=$matches[1]&tag_category=$matches[2]');
}
add_action('init', 'category_tag_rewrite_rule');

タグページ(tag.phpテンプレート)に送られますがget_query_var('tag_category')、このテンプレートからは何も返されません。

正規表現に問題がある可能性があります。

4

0 に答える 0