WordPress

WordPress テーマ作成事始め。その2

トップページと、アーカイブのページを分けたい…、と思いました。

前の投稿では、index.phpにhogehoge書いていたけれど、そもそもindex.phpはとりあえず、どんなページでも自動的に生成するためのテンプレートファイルだそうです。ただ、トップページと、その他のページのデザインを分けたいと思ってしまったので、新たに、front-page.phpというのを作りました。front-page.phpは、トップページ用の、特別なテンプレートファイルです。

index.phpに書くこと

hogehoge表示されてもしかたがないので、固定ページや投稿の記事を表示するようにします。

<?php get_header(); ?>

<?
if (have_posts()){
    while (have_posts()){
        the_post();
        the_content();
    }
}
?>

<?php get_footer(); ?>

私はちょっと詰まったところがあったんですが、the_post関数を呼ぶだけでは表示されないんですね…、あくまでも固定ページ等のデータをロードするだけです。実際に表示するためには、the_content関数の戻り値をechoすると良いみたいです。すごく簡単な表示方法なので、この辺りはいくらでもカスタマイズが可能だと思いますが、まずは最もシンプルな例として…。

front-page.phpに書くこと

とりあえず、トップページとその他のページのデザインが変わることだけを確認出来れば良いので、こちらにhogehoge書くことにします。

<?php get_header(); ?>

hoge front

<?php get_footer(); ?>

とりあえずこれで、トップページとそれ以外で、ページの表示の仕方を変えることができました。

追記。index.phpに echo the_content(); と書いていましたが、echoは要りませんでした。上記ソースは修正してあります。日々勉強です…。