Xeory Extension

ブログの最新記事一覧ページが欲しい

  • このエントリーをはてなブックマークに追加
ブログの新着一覧ページを作る

Xeory Extensionって本当に素敵ですよね。
でも、よくある「ブログ一覧ページ」ないんです。

最新記事が10件とかで、表示されているあれです。
トップページに「人気のある記事」と「最近の投稿」は表示されているのですが、やっぱり「ブログのトップページ」的なページが欲しいです。

ということで。
これから作ります。

カスタマイズ概要

WordPressが使用するテンプレートの優先順位を利用して、「front-page.php」と「index.php」でXeory Extensionをますます素敵にしちゃいます。

  1. [フロントページの設定]で、「フロントページ」と「投稿ページ」で指定する固定ページを作成
  2. 「設定」>「表示設定」で、[フロントページの設定]を「固定ページ」に変更して、先程作った固定ページをそれぞれ指定
  3. index.phpを編集して、「投稿ページ」を表示している時はbzb_title();を出さないように修正
  4. メニューに「投稿ページ一覧」へのリンクを追加します。

流れとしては以上です。
では、行きましょう!

カスタマイズ開始

「フロントページ」と「投稿ページ」で指定する固定ページを作成

特に難しいことはないです。
スラッグとタイトルだけ入力して、本文は空でOKです。

私は以下のように作成しました。

スラッグ タイトル
フロントページ用 top TOP
投稿ページ用 blog ItemServe Blog

[フロントページの設定]に設定をする

特に難しいことはありません。
先程作った固定ページを指定するだけです。

「フロントページの設定」に設定をする

サイト名を消す

カスタマイズの概要でも書いた通り、WordPressは使用するテンプレートに優先順位をつけています。

「front-page.php」<「home.php」<「index.php」

front-page.php
「トップページ」を表示する場合、最も優先されるテンプレート名です。
この優先度は最も高く、[フロントページの設定]でどのような設定を行っていも、「トップページ」を表示する場合は、必ずこのテンプレートが呼び出されます。
home.php
[フロントページの設定]で、「フロントページ」と「投稿ページ」を設定した場合に優先されるテンプレートです。
「フロントページ」と「投稿ページ」、どちらかのみ指定しても呼び出されます。
index.php
特殊なテンプレートです。WordPressのいかなるページを呼び出し、適当なテンプレートがない場合、最後に呼び出されるテンプレートがindex.phpになります。

今回の場合、以下のようになります。

フロントページ用 front_page.php
投稿ページ用 index.php

投稿ページ用に「home.php」を作成しても構いませんが、今回は、「サイト名を表示させない」以外は、index.phpと同じです。
なので、新規に「home.php」は作らずにindex.phpをテンプレートとして使用しながら、もし「投稿ページ」=「home.php」を優先テンプレートで表示するなら~、と分岐させることにしました。

index.php

    <?php if( !is_front_page() && !is_home() ){?>
          <h1 class="post-title" ><?php bzb_title(); ?></h1>
    <?php } ?>

追加したのは、 && !is_home()です。
トップページ=front_page()でも、投稿ページ一覧=is_home()でもない場合は、サイト名を表示させる。
と言った分岐になります。

メニューに「投稿ページ一覧」へのリンクを追加

「外観」>「メニュー」で、「投稿ページ一覧」へのリンクを追加します。

「投稿一覧」ページをメニューに追加する

完成です。
お疲れ様でした。

まとめ

意外に簡単にできたかと思います。
ブログ一覧が欲しかったので、完成してよかったです。

また次のカスタマイズも頑張ります!

  • このエントリーをはてなブックマークに追加

PR

コメント

コメントを残す

*