ワードプレスの記事やページでタイトルを取得(表示)させる関数
ワードプレスの詳細ページ(投稿記事、カスタム投稿、固定ページ)などで、タイトルを取得または表示させたい時に「get_the_title()」や「the_title()」などを使用します。
記事ページでタイトルを取得したい時に使う「get_the_title()」
「get_the_title()」は主に記事のタイトルを取得する時に使用します。この関数は記事だけではなく固定ページにも使うことができます。
ワードプレス コーデックスサイトにリファレンスが記載されているので、参考にしてください。
関数リファレンス/get the title
基本的な使い方
用法的には、$IDに投稿IDを入力すると、記事タイトルが返ってきます、getの場合は取得のみになりますので、echoをつけて表示させる必要があります。
<?php echo get_the_title( $ID ); ?>
ループ内でのタイトルを取得する
下のコードのように、投稿ループ内では$IDを省略することができます。get_the_titleの場合は、ESC(エスケープ)処理が自動的に行われないので、表示させたい内容に合わせてエスケープする必要があります。
<?php // if ( have_posts() ) : while ( have_posts() ) : the_post(); // 投稿がここに表示される echo esc_html(get_the_title()); endwhile; // end while endif; // end if ?>
タイトルが入力されているかどうか判別するには
タイトルを入力しないなどはあまり想定することはありませんが、条件分岐も念のため記述致します。下のコードはタイトルが入力されないときに代替テキストを表示させるサンプルです。
工夫によってはいろいろ複雑な処理も可能です。
<?php // if ( have_posts() ) : while ( have_posts() ) : the_post(); //タイトルが入力されたかどうかの条件分岐 if(get_the_title()): echo esc_html(get_the_title()); else: echo esc_html('代替テキストを表示します'); endif; endwhile; // end while endif; // end if ?>
記事ページでタイトルを表示したい時に使う「the_title()」
「the_title()」は主に記事のタイトルを表示する時に使用します。ワードプレス コーデックスサイトにリファレンスが記載されているので、参考にしてください。
関数リファレンス/the title
<?php the_title( $before, $after, $echo ); ?>
- ※$before:タイトルの前に置くテキスト 。初期値はありません。
- ※$after:タイトルの後ろに置くテキスト 。初期値はありません。
- ※$echo:タイトルを表示(TRUE)または非表示(FALSE)で返します。初期値が「TRUE」になっていますので、echoを使いたい時は「FALSE」に設定します。
Hタグを自動的に表示させるには
見出し(H1~H6)タグを表示させたい、HTMLのHタグで囲むと未入力の場合は空タグになってしまいます。下のコードのようにパラメータを指定することによって、条件分岐をした時のような処理が簡単に表示することができます。
<?php the_title( '<h1 class="headline">', '</h1>' ); ?>