wp シングルページのmetaディスクリプションに概要を使う
まずは結論。
- <?php
- if (is_single() && !is_paged()){
- echo '<meta name="Description" content="' . get_the_excerpt() . '" />' . "\n";
- }
- ?>
経緯
Goolgeさんで検索してたら自分のページを発見。でも説明文が本文流用。
まぁ、問題は無いんだけど…気に入らない。
ちょっとした概要は別に用意してんだからそれを使って欲しいなぁ…と思った次第です。
流れ
まずは「ちょっとした概要」ってのを表示することに。
トップページで各記事の「ちょっとした概要」を表示しているのでその箇所を探す。
テンプレートファイルの「index.php」を見ると「the_excerpt()」ってので表示している様子。
早速使ってみるとHTMLタグが付加された状態で表示される。
「<meta name="Description" content=~」ってトコに使いたいのでタグはいらない。
しょうがないので「the_excerpt()」の元を探すことに。
the_excerpt()について
「/wp-includes/post-template.php」ってとこにいたので「the_excerpt()」を見てみた。
何をやってるかはよくわかんないけど…「apply_filters()」に引数として「the_excerpt」と「get_the_excerpt()」を渡すとタグつきの「ちょっとした概要」を「echo」しているってことがわかった。
見てるとあちこちで「apply_filters()」が使われている。
このお方は何をされているかは知らないけど…「get_the_excerpt()」で「ちょっとした概要」が戻り値になるのかなぁ…と推測。
ということで記事ページで「get_the_excerpt()」を「echo」してみた。
「記事ページのみ」について
Googleさんに聞いてみたら「if (is_single() && !is_paged()){}」でOK的なお返事。
…ということで適当に組み合わせてみたらいけた。