“the_title”タグを使いこなそう!WordPressで記事タイトルを出力する際のパラメータとかいろいろ。
WordPressってチョーーーよくできてますね。今日の主役はWordPressで記事タイトルを表示させるタグ”the_title”です。調べてたらいろいろカスタムできるようなのでメモしておきます。
タグ自体は基本中の基本なので、みなさん既に知っていることも多いかと思います。検索からたどり着いてくださった方は、おさらいがてら見てやってください。
そうそう、ちなみにこの記事は、ブログ内でコードをきれいに表示させるあれ「SyntaxHighlighter」を使った初めての記事です。無駄にハイテンション。
テンプレートタグ/the title
今日出会ったのはこんなコード。HTMLの中にこんなん書くと、
<?php echo "<li>".the_title('','', FALSE)."</li>"; ?>
こうやって出力されますね。
<li>記事のタイトル</li>
はじめに、WordPress Codexから引用して、the_titleタグについて正しく理解しましょう。
説明: 記事のタイトルを出力。
位置: ループ内
書式: <?php the_title(‘before’, ‘after’, display); ?>
引数:パラメータ大好きなのでぼくの言葉で説明しますね↓
the_titleタグ内のパラメータ : ‘before’, ‘after’, display
1つ目のパラメータはbeforeと呼ばれるパラメータ。タイトルの直前に出力するコードやテキスト(文字列)が入ります。デフォルト値は空です。
2つ目は逆にafterと呼ばれるパラメータ。タイトルの直後に出力するコードやテキスト(文字列)が入ります。同じくデフォルトは空。
3つ目は気が利いていて、displayと呼ばれるパラメータ。取得した値を、HTMLとして出力するかどうかを選択できます。デフォルトはtrueなので、何も書かなければ記事のタイトルが吐き出されます。これをfalseに変えると、PHPで使用できる値として持っててくれます。
これらをふまえて一番上のコードをすっきり書くとこんな感じ。
<?php the_title('<li>','</li>'); ?>
でもパラメータのこと皆が知ってるわけじゃないので、別の人がこのコードを見たときに「?」ってなる可能性が大きい。というわけで理解されやすい順にいろいろ書いてみました。
同じコードを、美しさと理解しやすさを変えていろいろ書いてみる。
まずは基本的なテンプレートタグを使ったもの。
<li><?php echo get_the_title(); ?></li>
美しさ★☆☆
理解しやすさ★★★
チョーわかりやすいですね。
次。the_titleをデフォルトで使ったもの。
<li><?php the_title(); ?></li>
美しさ★★☆
理解しやすさ★★★
潔いですね。美しい。
さて、問題なのは、PHPでだーっと何行も書いてる中に記述する場合。つまり、<li>をechoで出力させる場合です。
<?php echo "<li>".get_the_title()."</li>"; ?>
美しさ★☆☆
理解しやすさ★☆☆
なるほど。全体をechoするんですね。まず<li>がきて、”.”でつなげることで次に記事のタイトルひっぱってきて、最後に</li>がくると。それをえいやっと出力しろと。承知しました。
<?php echo the_title('<li>','</li>', FALSE); ?>
美しさ★☆☆
理解しやすさ★★☆
ほう。記事のタイトルの前と後にリストタグいれて出力せーゆーことやな。で、
<?php the_title('<li>','</li>'); ?>
美しさ★★★
理解しやすさ★★☆
記事冒頭に書いたすっきり文がきます。3つ目のパラメータはデフォルトでオッケーなので省略。デフォルトは出力までしてくれるのでecho書かなくてオッケー。
WordPressの素晴らしさを味わいつくすために…ちゃんと勉強しましょう!
というわけでいろいろ見てきましたが、まぁ★の数は主観なんで気にしないでください。それより改めて思ったことはこれです : WordPressはよくできてるなー( ´ ▽ ` )ノ
タグをコピペするれば目の前の仕事ははかどりますが、ちゃんとCodex読むともっと理解が深まって、より美しく分かりやすいコードを書けるようになる気がする。みなさん一緒に頑張りましょう_| ̄|○