Programming

【WordPress】タイトルは表示されるのにthe_content()が表示されないことについての原因と対策

2018/12/04

先日、本サイトの構築のため数年ぶりにワードプレスの編集を行いました。

昔はしょっちゅう触っていたのでワードプレスくらいお手の物だったのですが、何年も触っていないと初歩的なことも忘れてしまっており、その時のつまづいたことを備忘録的に残しておこうと思います。

<?php the_title(); ?>は表示されるのに<?php the_content(); ?>が表示されない

本文を表示させようと思って<?php the_content(); ?>を書いているのになぜか表示されない、、、

<?php the_title(); ?>は問題なく表示されているのにいったいなぜ、、、

考えてもわからないのでGoogle先生に相談。

一瞬にして解決しました。

まさかこんな初歩的な箇所でつまずいたのは自分でも驚きでした。

<?php the_content(); ?>はループの中でしか動作しない

そうでした。公式のドキュメントにもきちっと書かれているみたいですが、<?php the_content(); ?>を表示させようと思うと、ループの中で使う必要があるようです。

すっかり忘れてました。

 
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> 
  <?php the_content(); ?> 
<?php endwhile; endif; ?> 

 

これで問題なく表示されました。

まさか本文を表示させる、という初歩の初歩がわからなくなっているとは・・・。

英語なんかも同じですが定期的にプログラムとかは触っておかないとどんどん衰えていってしまいますね。いい学びでした。