MENU

get_the_archive_title()

get_the_archive_title は、 アーカイブページのタイトル を取得するテンプレートタグです。カテゴリー、タグ、日付、著者など、アーカイブの種類に応じた適切なタイトルを返します。

目次

機能の説明

  • get_the_archive_title は、 WordPressのアーカイブページ に表示されるタイトルを取得します。
  • アーカイブページの種類(例: カテゴリー、タグ、日付、著者など)に応じて、 自動的にフォーマット されたタイトルが返されます。
  • 出力されたタイトルはHTMLエスケープされているため、 安全に使用 できます。

シンプルなコード例

<?php echo get_the_archive_title(); ?>

上記コードでは、 現在のアーカイブページのタイトル を表示しています。

  • get_the_archive_title は、アーカイブページで動的にタイトルを取得するために使用します。
  • カテゴリーやタグのアーカイブではその 名前、日付アーカイブでは 年月、著者アーカイブでは ユーザー名 などを表示します。

使用例

<?php if (is_archive()) : ?>
  <h1><?php echo get_the_archive_title(); ?></h1>
<?php endif; ?>
  • このコードでは、 アーカイブページでのみ<h1>タグ 内にタイトルを表示しています。
  • is_archive() でページがアーカイブかどうかを判定し、該当する場合にタイトルを出力しています。

一緒に使うことが多い関連タグ

get_the_category()

投稿の カテゴリー情報 を取得するテンプレートタグです。

$category = get_the_category(); 
echo $category[0]->name;

このコードでは、 投稿に関連付けられたカテゴリーの名前 を表示しています。

single_cat_title()

カテゴリーアーカイブの タイトルを取得して表示 するためのタグです。

<?php single_cat_title('<h1>', '</h1>'); ?>

カテゴリーアーカイブの場合、カテゴリーの名前が <h1> タグ内に表示されます。

the_archive_description()

アーカイブページの 説明文 を取得するテンプレートタグです。

<?php the_archive_description('<p>', '</p>'); ?>

現在のアーカイブページに 説明が設定されている場合<p> タグ内にその内容が表示されます。

追加情報を取得したい場合

get_the_archive_description() でアーカイブの説明を取得

<?php echo get_the_archive_description(); ?>

現在のアーカイブに関連する 説明文を取得して出力 します。

get_the_archive_description() で出力できる情報

  • カテゴリー説明: カテゴリーに設定された説明文
  • タグの説明: タグの詳細説明
  • 著者の説明: ユーザープロフィールに設定されたバイオ情報

想定されるトラブル

タイトルが正しく表示されない

テーマにアーカイブテンプレートが正しく実装されていない。

解決方法

archive.php または taxonomy.php テンプレートファイルに、以下のコードを追加してください。

<h1><?php echo get_the_archive_title(); ?></h1>

特定のアーカイブでタイトルが崩れる

CSSスタイルの競合が発生している。

解決方法

タイトルに特定の クラスを追加 し、CSSで調整します。

<h1 class="archive-title"><?php echo get_the_archive_title(); ?></h1>

タイトルがHTMLエンティティで表示される

タイトルに特殊文字が含まれているため、HTMLエスケープされている。

解決方法

html_entity_decode() を使って エスケープを解除 します。

<?php echo html_entity_decode(get_the_archive_title()); ?>

Q&A

get_the_archive_titlesingle_cat_title の違いは何ですか?

get_the_archive_title は、 すべてのアーカイブページ で使える汎用的なタイトル取得タグです。一方、 single_cat_titleカテゴリーアーカイブ専用 です。

アーカイブタイトルの出力形式をカスタマイズできますか?

はい。get_the_archive_title の返り値を フィルターget_the_archive_title で変更できます。

add_filter('get_the_archive_title', function ($title) {
    return 'アーカイブ: ' . $title;
});

アーカイブページに説明がない場合はどうすればいいですか?

get_the_archive_description() で取得した結果が空の場合、デフォルトの説明文を表示するようにできます。

$description = get_the_archive_description(); 
if (empty($description)) {
    echo '説明はありません。';
} else {
    echo $description;
}

まとめ

get_the_archive_title は、 WordPressアーカイブページのタイトルを取得 する便利なテンプレートタグです。

カテゴリー、タグ、日付、著者などのアーカイブの種類に応じたタイトルを自動的に生成します。

is_archive() と組み合わせることで、特定のページでのみ使用することも可能です。フィルターを使えば、タイトルのカスタマイズも簡単に行えます。

よかったらシェアしてね!
  • URLをコピーしました!
目次