WordPressのTwenty Tenで、アーカイブページに改行を反映させる方法

初歩的なことですが、WordPressのカスタマイズを始めたばかりの方もたくさんいると思うのでご紹介。

WordPress3系は、現在においてTwenty Tenというテーマがデフォルトです。
(Twenty Tenは、2010年版のWordPressテーマとのことなので、厳密にはWordPress3だから、という訳ではないですが)

Twenty Tenはデフォルトなので、自作テーマを作る際、これを基に作るという方も多いのではないでしょうか。

しかしこのTwenty Ten、アーカイブページ等の表示に改行が反映されません。ついでに言えば、画像も表示されません。
普通はこれで問題ないかもしれませんが、改行や画像が無くては見栄えが悪い場合もあるでしょう(ない?)。

という訳で、記事ページなどと同様に、アーカイブページにも改行を反映させるようにする方法です。

アーカイブページと検索ページで改行させるようにする方法

まずは簡単な方法からです。
wp-content/themes/twentyten/loop.phpを
開きます。

※twentytenをカスタマイズしたテーマの場合、twentyten部分をそのテーマディレクトリ名に読みかえてください。

もし何もいじっていなければ、loop.phpの134行目付近に

<?php the_excerpt(); ?>

のような記述があります。
これを、

<?php the_content(); ?>

に変更すれば、アーカイブページと検索ページに改行が反映されるようになります。

ただしこのやり方だと、検索の場合にかえって不便な場合もあるので、アーカイブページだけに改行が反映されるようにしたいですよね。

その場合は、ちょっとだけ難しくなりますが次の方法を採ります。

アーカイブページだけに改行を反映させる方法

loop.phpの先ほどの部分(134行目付近)

<?php the_excerpt(); ?>

を、if-elseifで振り分けてやれば目的が達成できます。

<?php if ( is_archive() ) : ?>
  <?php the_content(); ?>
<?php elseif ( is_search() ) : ?>
  <?php the_excerpt(); ?>
<?php endif; ?>

周辺(132~140行付近)を全体的に見ると、下記のような感じです。

<?php if ( is_archive() || is_search() ) : // Only display excerpts for archives and search. ?>
  <div class="entry-summary">
    <?php if ( is_archive() ) : ?>
      <?php the_content(); ?>
    <?php elseif ( is_search() ) : ?>
      <?php the_excerpt(); ?>
    <?php endif; ?>
  </div><!-- .entry-summary -->
<?php else : ?>

PHPを書く人にとっては簡単なことですが、最近はPHPを書かない人もWordPressのカスタマイズに挑戦している場合もあるようなので記しておきました。

WordPressってPHPが分からなくても、コピペすれば結構カスタマイズできたりもしますしね。

コメント

  1. kon より:

    メールアドレスはダミーです。

    検索した場合やアーカイブで記事が改行されず、ほとほと困り果てていました。。。
    この記事を参考に設定ファイルを編集した所、無事改行されるようになりました!
    本当にありがとうございます!
    言語を全く知らないと、カスタマイズにすごく苦労しますね^^;

    • whitemitt より:

      konさん、こんばんは。
      お役立ていただけたようで幸いです。
      他に同じ事やりたい人がいるかな~と思いながらエントリーしましたが、書いたかいがありました☆

  2. ぺろきち より:

    メアドはダミーです
    まさに探してた情報が・・・!!
    ありがとうございます!めっちゃ助かりました!!

    • whitemitt より:

      ぺろきちさん、こんばんは。
      めっちゃ助かったとのこと、お役に立ててうれしいです♪

タイトルとURLをコピーしました