こんにちは、阿久梨絵です!
WordPress サイトをカスタマイズする際、投稿のタイトルを取得したい場面は多々あります。
例えば、ページ上部にタイトルを表示したり、投稿一覧を作成したりと、用途はさまざまです。
しかし、タイトルを取得するための関数には get_the_title() と the_title() の2種類があり、それぞれの違いを理解していないと、意図しない動作をしてしまうことがあります。
「どちらを使えばいいのか分からない…」
「思ったようにタイトルが出力されない…」
そんな悩みを解決するため、本記事では 「get_the_title() と the_title() の違い」 を詳しく解説し、具体的な使い分け方法や、カスタマイズのポイントを紹介していきます!
get_the_title() vs. the_title() の基本的な違い
関数 | 処理内容 | 出力方法 | 使い方 |
---|---|---|---|
get_the_title() | タイトルを取得 | 画面に表示されない | 変数に格納、カスタマイズ処理向け |
the_title() | タイトルを取得&出力 | 画面に直接表示 | HTMLに埋め込んですぐ使う場合 |
・get_the_title() は 値を取得するだけ なので、echo を使わない限り画面に出ません。
・the_title() は タイトルをそのまま出力する ので、echo の必要なし!
get_the_title() の使い方|データ取得&加工に便利
get_the_title() は、タイトルを取得して変数として使う ことができる関数です。
例:取得したタイトルを変数に格納し、カスタマイズして表示
$title = get_the_title(); // タイトルを取得
echo ‘<h2>’ . esc_html($title) . ‘ 🚀</h2>’; // カスタムアイコンを追加して出力
メリット
・タイトルを変数に保存し、自由にカスタマイズできる
・条件分岐や加工処理が可能
・直接HTMLに書かず、カスタム用途で活用しやすい
例:タイトルを全て大文字に変換
$title = get_the_title(); // タイトルを取得
$modified_title = strtoupper($title); // 大文字変換
echo ‘<h2>’ . esc_html($modified_title) . ‘</h2>’; // 画面に出力
加工処理が自由にできる!
the_title() の使い方|HTMLにそのまま埋め込む
the_title() は タイトルを取得して即画面に出力 する関数です。
HTMLに直接書くと、シンプルに表示できます。
例:タイトルをすぐに表示
<h2><?php the_title(); ?></h2>
・echo を使わなくても画面に表示される!
・そのままHTMLに埋め込めるので、シンプルな出力に向いている
例:タイトルにリンクを付与
<h2><a href=”<?php the_permalink(); ?>”><?php the_title(); ?></a></h2>
投稿ページへのリンクをつけて、そのまま画面に表示可能
get_the_title() と the_title() の使い分け
・カスタマイズするなら → get_the_title()
・そのまま表示するなら → the_title()
・後でデータを活用するなら → get_the_title()
・HTMLにシンプルに埋め込むなら → the_title()
例えば、ログ記録やデータ保存 をしたい場合
$title = get_the_title(); // タイトルを取得
file_put_contents(‘log.txt’, $title); // ログファイルにタイトルを記録
画面に表示せず、データとして利用できる!
まとめ
・get_the_title() → タイトルを取得し、変数として扱う(後で加工可能)
・the_title() → タイトルを取得し、そのまま画面に表示(echo 不要)
・カスタム処理・条件分岐が必要なら get_the_title() を使う
・単純にタイトルを出力するなら the_title() を使う
WordPress のカスタマイズでは、「取得」と「出力」の違いを理解することが重要!
阿久梨絵でした!