WordPressを使っていて、原因は分からないがタグの説明文:tags_description()が出力されないことがあった。ひょっとしたらAll in One SEOと競合でもしているのかと思ったが、色々条件を変えて何度検証しても<?php the_tags(); ?>は出力されるが、<?php tags_description(); ?>は出てこない。
そこで、WP公式のマニュアルサイトを見てみると、タグに関する記述があった。
&posttags=get_the_tags();
if($posttags){
foreach($posttags as $tag){
echo ‘<span class=”tag”>’.$tag->name.'</span>’;
}
}
?>
これをWPのテーマファイルに記述するとタグの名前が出力されたが、出力したいのはあくまでdescriptionだ。注目は$tag->nameという部分で、このnameはデータベースから来ているのだろうと思い、WPのDBにログインしデータ構造を確認すると、下の写真のようにdescriptionという項目が確認された。設定したタグ説明文もきっちり記述されている。
ここまで確認できればしめたものだ。あとは$tag->nameを$tag->descriptionにして最終的に以下の記述をテーマファイルにすればいい。
&posttags=get_the_tags();
if(&posttags){
foreach(&posttags as &tag){
echo ‘<span class=”tag”>’.$tag->description.'</span>’;
}
}
?>
以上でタグの説明文が出力された。他にもやりかたはあるかもしれないが、とりあえず解決できたのOKとしておこう。
WPに限らず、仕様を分からないままにやみくもにネットで調べるのは時間の無駄で、自分でデータベースにログインするとか、ドキュメントを読むなどすれば、大抵は解決できることが多い。面倒くさがらず自分で体型的な知識を身につけていくのが結局一番の近道だ。
しかし、世の中には仕様書やマニュアルがないWebシステムなど、エンジニア泣かせの現実はたくさんあるだろうから、そういう場合はカオスですが。。