the_archive_titleの「カテゴリー:」や「タグ:」を削除する方法

2018年2月1日 2019年1月30日 Wordpress ,

the_archive_titleでページタイトルを表示する

the_archive_title関数は、category、tag、taxonomyなど、アーカイブページのタイトルをこの関数1つで表示させることが出来ます。超便利!

クエリの内容に基づいてアーカイブのタイトルを表示します。ターム(カテゴリー、タグ、カスタムタクソノミー)、日付、投稿タイプ、投稿フォーマット、作成者などのアーカイブページが対象です。

関数リファレンス/the archive title

デフォルトで余計な文字列が入る

the_archive_title関数の使用例。
category.phpやarchive.phpなどに記述します。

<h1><?php the_archive_title(); ?></h1>

出力される文字列がこちら。

カテゴリー: ほにゃらら」とか「タグ: ふにゃらら」という風に名前の前に余計な文字列が入っています。

ナオユ

この『:(コロン)』より前の部分、要らないんだよなぁ…

という時は、function.phpでフィルターフックして解決!

the_archive_titleの余計な文字列を消す方法

テーマのfunction.phpに、次のコードをコピペします。

/* the_archive_title 余計な文字を削除 */
add_filter( 'get_the_archive_title', function ($title) {
    if (is_category()) {
        $title = single_cat_title('',false);
    } elseif (is_tag()) {
        $title = single_tag_title('',false);
	} elseif (is_tax()) {
	    $title = single_term_title('',false);
	} elseif (is_post_type_archive() ){
		$title = post_type_archive_title('',false);
	} elseif (is_date()) {
	    $title = get_the_time('Y年n月');
	} elseif (is_search()) {
	    $title = '検索結果:'.esc_html( get_search_query(false) );
	} elseif (is_404()) {
	    $title = '「404」ページが見つかりません';
	} else {

	}
    return $title;
});

カテゴリーページの「カテゴリー: 」
タグページの「タグ:」
カスタム投稿一覧の「アーカイブ: 」
タクソノミーの「タクソノミー: 」
日付ページの「月別: 」

それぞれ『:(コロン)』より前の文字列が削除されます。

ついでに「検索結果」と「404エラー」ページの表記も設定しています。
the_archive_title関数1つで、ほぼ全てのタイトルを表記できるので便利です。

お気軽にコメントをどうぞ。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください