【WordPress】カテゴリ名・タグ名・タクソノミ名を取得してアーカイブページのタイトルにする
記事更新日:2022-09-15

アーカイブページ
に
タイトル付けたい
に
タイトル付けたい
get_queried_object()
現在クエリされているオブジェクトを取得します
get_queried_object|すべて取得できる

たとえば、カテゴリ名やタグ名をタイトルにしたいとき
<? php
$query_object = get_queried_object();
$name = $query_object->name;
?>
<main>
<h1><?php echo $name; ?></h1>
~~ ループ処理 ~~
</main>

ただし、子カテゴリまで取得したい場合には条件分岐が必要
子カテゴリを判別したい場合

「投稿タイプで、かつタグではない」という指定
if ($obj && get_post_type() === 'post' && !is_tag() && $obj->parent === 0) {
// postで親カテゴリの場合
$name = $obj->cat_name;
} else {
// それ以外
$name = $obj->name;
}

別々で取得するのは、さらに面倒
種類別に、条件分岐する場合
<? php
// カテゴリ一覧の場合
if (is_category()) {
$cat = get_the_category();
$name = $cat[0]->name;
// タグ一覧の場合
} elseif (is_tag()) {
$tags = get_the_tags();
$name = $tags[0]->name;
}
?>

これだと、カスタム投稿のカテゴリ名が取得できない
2022-09-15
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-
カスタム投稿を複数作成する 【WordPress】カスタム投稿を複数作成し、カスタムタクソノミーも追加する -
キャッチ画像を自動設定 【WordPress】カテゴリごとにキャッチ画像を設定する -
内部リンクのピンバック防止 【WordPress】内部リンクを貼ったときのコメント自動送信を防ぐ|functions.phpに記述 -
Xserverの引っ越し 【WordPress】XserverからXserverへの引っ越し|サーバー統合 -
絵文字を停止する 【WordPress】高速化|絵文字を読み込む設定を停止する -
ページネーションを自作する 【WordPress】ページネーションを自作し、任意のクラス名を付ける