タグをカテゴリ別にフィルタリングする方法について多くの質問があることは承知していますが、助けが必要です。
$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/interior
terms
ご清聴ありがとうございました。
過去数時間で、私は自分でこれをやろうとしました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')
、このテンプレートからは何も返されません。
正規表現に問題がある可能性があります。