
目次
single_post_title()の用途
single_post_title()
は、現在表示されている投稿や固定ページのタイトルを表示または取得するための WordPress テンプレートタグです。特に is_single()
や is_page()
、is_attachment()
条件下で使われます。
single_post_title()の使用方法
single_post_title( string $prefix = '', bool $display = true );
single_post_title()のパラメータ
引数 | 型 | 説明 |
---|---|---|
$prefix | string | タイトルの前に追加するテキスト(省略可) |
$display | bool | true にすると表示、false にすると戻り値として取得(省略可) |
single_post_title()の使用例
タイトルを表示(表示専用)
<?php single_post_title(); ?>
例)投稿タイトルが「こんにちは世界」の場合
こんにちは世界
接頭辞付きで表示
<?php single_post_title('記事タイトル:'); ?>
出力
記事タイトル:こんにちは世界
タイトルを変数として取得
<?php
$title = single_post_title('', false);
echo '<h1>' . esc_html($title) . '</h1>';
?>
single_post_title()のよくある用途
用途 | 解説 |
---|---|
投稿ページのタイトル表示 | single.php 、page.php 、attachment.php などで使用 |
カスタム表示制御 | タイトルを取得して他の要素と組み合わせて使いたいとき |
SEO対策用タイトル加工 | <title> タグなどにカスタマイズして出力する場合 |
the_title()
との違い
関数名 | 主な用途 | 使う場所 |
---|---|---|
the_title() | ループ内で現在の投稿のタイトルを表示 | while(have_posts()) などのループ内 |
single_post_title() | 単一投稿・固定ページのタイトルを表示 | ループ外や <title> 内などで使う |
single_post_title()の注意点
- ループ内では
the_title()
を使いましょう。single_post_title()
は ループ外で使うのが一般的です。 - アーカイブページ(カテゴリ、タグなど)では使えません。代わりに
single_cat_title()
やget_the_archive_title()
を使用します。
single_post_title()のまとめ
特徴 | 内容 |
---|---|
目的 | 投稿・ページのタイトルを表示または取得 |
使いどころ | single.php , page.php , attachment.php などのテンプレート |
ループ外で使う | the_title() と使い分けが重要 |