
目次
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() と使い分けが重要 |