[WordPress]特定のタグのみを表示するアーカイブページで、そのタグ情報を入手する方法

仕事

WPのタグで絞り込まれた、アーカイブページを作ろうと思いました。

  • 条件は/tag/”タグ名”のURLであること。
  • インフィニティスクロールの実装。(プラグインで対応)
  • 最初は12件のみ表示。

メインループだと、表示件数を制御できないので、

サブループを立てて対応。

※メインループで表示件数制御できますが、functions.phpとか触りたくなかったので。

サブループで利用するそのページのタグのIDを取得したかったのですが、

the_tagsではできなかったので別の方法を探していました。


$targetTag = get_queried_object();
$targetTagId = $targetTag->term_taxonomy_id;

get_queried_object()なんて知らなかったな。

関数リファレンス

勉強になりました。


$args = array(
'post_type' => 'post',
'posts_per_page' => 12,
'tag_id' => $targetTagId,
);
$the_query = new WP_Query( $args );
ですね。

インフィニティスクロールはショートコードで呼び出しているのですが、

ショートコードにタグのIDで制御する機能があったので、そちらも上記idで対応しました。

 echo  do_shortcode('[ajax_load_more id="3266355253" container_type="div" css_classes="show-case__2" post_type="post" posts_per_page="6" tag__and="'. $targetTagId .'" no_results_text="これ以上記事はございません。"]');

コメント

タイトルとURLをコピーしました