WordPressの投稿や固定ページには、そのページのタイトル(見出し)を入力する事が出来ます。
入力した見出しを記事やページのタイトルとして表示するといった利用が一般的です。今回は見出し(タイトル)の取得・表示する方法を解説していきます。
取得と表示の違いについて
WordPressの独自タグの中には、取得のみをするものと、取得し表示するものがあります。
取得のみの場合は、そのままでは表示されませんので、別途echoなどで出力する必要があります。取得・表示するものに関してはその両方を同時に行ってくれますので、別途出力する必要はありません。
the_title()
投稿・ページのタイトルを取得・表示するタグとなります。
このタグはループ内で使用でき、ループ外では使用できませんので注意してください。
<?php
the_title();
// 実行結果:投稿・ページのタイトル
?>
引数について
the_title()タグは、引数を設定する事が出来ます。
第1引数は見出しの前、第2引数は見出しの後に出力したいHTMLタグを指定でき、第3引数はfalseを指定する事で取得のみを行い表示はされませんので、変数等に代入したい場合に使用できます。
<?php
the_title('<h1>', '</h1>');
// 実行結果:<h1>投稿・ページのタイトル</h1>
$title = the_title('<h1>', '</h1>', false);
// $titleという変数に「<h1>投稿・ページのタイトル</h1>」が格納される
?>
get_the_title()
投稿・ページのタイトルを取得するタグとなります。
このタグはループ内・ループ外どちらでも使用出来ますが、ループ外で使用する場合は引数に投稿・ページのIDを指定する必要があります。
また、このタグは取得のみを行いますので、出力するには別途echoが必要になります。
<?php
// ループ内では引数は不要
$title = get_tht_title();
// echo で出力
echo $title;
?>
引数について
get_the_title()タグは引数を設定する事が出来ます。
引数は1つのみで、投稿やページのIDを指定する事で、指定した投稿やページのタイトルを取得できます。
<?php
// IDが20の記事を取得
$title = get_the_title(20);
?>
the_title_attribute()
投稿やページの見出し(タイトル)にはHTMLやCSSを入力する事ができます。
the_title()タグなどで出力する場合、そのままHTMLタグ等も出力されますので、タグが入ると困る場合などにthe_title_attribute()タグを使用すると、HTMLやCSSを取り除いて出力してくれます。
このタグはループ内・ループ外共に使用できますが、ループ外で使用する場合は引数に取得したい投稿やページのIDを指定する必要があります。
<?php
// 見出しが「<h1>投稿・ページのタイトル</h1>」だった場合
the_title_attribute();
// 実行結果:投稿・ページのタイトル
?>
引数について
the_title_attribute()タグには引数を設定する事ができます。
それぞれクエリ文字形式で記述し、第1引数は見出しの前、第2引数は見出しの後に出力したいHTMLタグを指定でき、第3引数は出力するかどうか、第4引数には取得したい投稿・ページのIDを指定出来ます。引数はそれぞれ省略可能です。
<?php
the_title_attribute(
array(
'before' => '<h1>',
'after' => '</h1>',
'echo' => true,
'post' => 20
)
);
?>
上記の内容で、IDが「20」の投稿・ページの見出しを取得し、見出しに記述されていたHTMLやCSSを削除し、見出しの前後に「h1」タグを追加し表示する、といいた内容になります。
さいごに
いかがでしたでしょうか。
今回は、投稿や固定ページのタイトルを取得・表示する方法を解説しました。
見出し(タイトル)の取得・表示はWordpressでは必ず使用しますので、それぞれの特性・使用方法をしっかりと覚えておくと便利です。