クールでかっこいいワードプレステーマ を カスタマイズすべ

トップページを固定ページで作る

トップページが固定になってるタイプのブログをサイト型といいます。
トップページもなにもなくて、記事を投稿すると最新から順番に表示されていくのがブログ型。
無料ブログは、このタイプ固定のものが多いね?
 

ワードプレスをサイト型で使う

通常は、ウィジェットエリアにウィジェットを張り付ければ、index.php がそれを受けて表示してくれる。
もちろん、ブログ型だ。
 
これをサイト型にするには、
 
  1. トップページ用固定ページを新規作成して、それにトップページの中身を書く。
  2. 設定 -> 表示設定 -> フロントページの設定 -> フロントページ -> トップページ用固定ページ選択 -> 保存
 
ところがだ、そうするとウィジェットが使えなくなる?!
トップページだから「新着」を表示させたいだとか、カテゴリー一覧を表示させたいだとかできないわけだ。
 
固定ページの表示は、 page.php がやっている。だから page.php をカスタマイズすればいい。
 
page.php の ボディの前に以下を投入
<?php
get_header();
?>
<!-- front_toppage.php -->
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('インフォメーション') ) : ?>
<?php include(TEMPLATEPATH.'/info.php') ?>
<?php endif; ?>
<div class="clr"></div>
<!-- /front_toppage.php -->
それから、ウィジェットに行って、「インフォメーション」に「最近の投稿」ウィジェットを張り付ける。
で、見てみると・・・ びっくりするぞ?(笑)
トップページはいいんだ、それように page.php に「インフォメーション」ウィジェットエリアの表示を付けたから。
 
ところがだ、他の固定ページにも「最近の投稿」が表示される?!
 
びっくりするべ?
つまり、それじゃだめってことなんだ。
 
どうするか? こうする。
  1. page.php をダウンロードしてきます。(使ってるテーマのディレクトリに入ってる)
     
  2. page.php を別の名前にします。例えば front_page.php
     
  3. front_page.php を terapad で開きます。
     
  4. ファイルの最初に以下のステートメントを記入します。
    <?php
    /*
    Template Name: トップ固定ページ
    */ ?>
    
    .
     
  5. ウィジェットの表示用のパーツを追加します。
    例えば、
    <?php
    /*
    Template Name: トップ固定ページ
    */ ?>
    <?php
    get_header();
    ?>
    <!-- front_toppage.php -->
    <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('インフォメーション') ) : ?>
    <?php include(TEMPLATEPATH.'/info.php') ?>
    <?php endif; ?>
    <div class="clr"></div>
    <!-- /front_toppage.php -->
    
    これは、「インフォメーション」というウィジェットエリアの内容を表示するようにしています。
     
  6. UTF-8Nでファイルを保存します。
    名称未設定 1のコピー
     
    名称未設定 2のコピー
     
  7. front_page.php をテーマのディレクトリへアップロードします。
     
  8. トップページにしている固定ページを開きます。
     
  9. 右側、更新などのボタンの下の方に「テンプレート」の選択項目が表示されています。
    2015y01m21d_230428719
     
  10. テンプレートの中から「トップ固定ページ」を選択します。
     
  11. 更新します。
     
あとは、ウィジェットで、上記例の場合だと「インフォメーション」のウィジェットエリアへ好きなウィジェットを入れちゃいます。
 
つまり、何をしたかといえば、トップページ表示用の固定ページ専用のテンプレートを追加したってことなんだ。
文字で書くと結構な手間って感じがするけど、実際やると大したことはない。結構簡単にできる。
 
ちなみに terapad ってのは、これ⇒terapad
テキストエディタだな。カスタマイズするには、必須のツールだ。