新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

WordPress(ワードプレス)でトップページ以外にブログトップを設置する方法【完全版】 #wp

      2014/11/09

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

1年以上前の記事です。内容が古い可能性があります。

つぶくまブログの「←古い投稿」リンクが正常に動かなかったので修正することにした。
ちなみにつぶくまブログとはWordPress(ワードプレス)で作られているつぶくまにおけるブログトップページになる。
通常、ワードプレスではトップページがブログトップになるのだがつぶくまの場合トップページは別に用意(現状はindex.phpを編集して直接表示)しているため、別のページに飛んでからブログトップページを表示させるようにしていた。
こちらの方法は以下の記事を参考に。
□ ワードプレス(WordPress)、トップページとは別の場所で記事一覧を表示させる方法 #wp – ちほちゅう
ただし、この方法だけでは2ページ目、3ページ目に流れていった古い記事のページが表示されず、
2ページ目、3ページ目を見ても、1ページ目と全く同じインデックスしか表示されない。

スポンサーリンク
 

これは当初「query_posts」を「get_posts」に変えれば済むことだと思っていたのだが、そんな簡単には済まなかった。

いずれにしても、「query_posts」がグローバル変数を書き換えてしまっている影響で、2ページ目や3ページ目も1ページ目と同じ記事が表示されてしまっている可能性が高いのでquery_postsを使わないで記事一覧を表示させるようにする。
そのためにはトップページ用に直接編集していた「index.php」をオリジナルのテンプレート同様ブログトップのテンプレートに戻し、現在ブログトップのテンプレートになっている「blog.php」に読み込ませる必要がある。

  1. まずは、上記記事の要領でトップページを固定ページとして別に用意する。
    現在直接呼び出されているindex.phpを別のphpプログラムにして固定ページテンプレートとして保存。
    ワードプレスでブログトップページ01
    単純にindex.phpの内容をコピーしたテキストファイルをsitetop.php(任意)にでも改名してユニコードで保存。
    該当のテーマフォルダ内にアップ後、上記のようにテンプレート名をつけてあげればOK!
  2. 固定ページを作り、先ほど作ったテンプレートを適応させる。
    ワードプレスでブログトップページ02
    これが新しいトップページになる。
  3. 「設定」→「表示設定」で「フロントページの表示」を以下のように変える。
    ワードプレスでブログトップページ03
    フロントページを先ほど作った固定ページに。ここで設定ミスがあるとトップが表示されなくなってしまうので注意。
    その場合は早急に元に戻し、sitetop.php(任意)をチェックしましょう。
  4. これで「index.php」は使われなくなったので編集できるようになった。
    まずは、blog.phpのプログラム部分(get_header以下)のみindex.phpに上書き。
    ワードプレスでブログトップページ05
    その際、「query_posts( ‘post’ );」を削除する。
  5. blog.phpを以下のように修正。
    ワードプレスでブログトップページ06
    <?php
        load_template( TEMPLATEPATH . '/index.php');
    ?>

    ここに関しては以下の記事も参考に。
    □ WordPress(ワードプレス)でテンプレートにテンプレートを読み込む方法(インクルードタグ)

  6. 最後に再度、「設定」→「表示設定」に行き「投稿ページ」をブログトップページに変える。
    ワードプレスでブログトップページ04

以上。

ポイントになるのは「表示設定」の設定でトップページとブログのトップを指定してあげるところと、ブログトップページはテンプレートを直接編集せずにindex.phpを編集してそれを読み込ませるようにするところ。
これで、別ページをトップページ同様の挙動にすることでやっかいな「query_posts」を使わずに済ますことができるというわけ。

ただ、これでもまだ満足の行かない部分がある。
.html on PAGES」の影響で2ページ目、3ページ目のURL表記の途中に「.html」が入ってしまうのだ。
↓こんなかんじ。

http://tubukuma.com/blog.html/page/2

これ、なんとかなりませんかねぇ。。

参考) WordPress でトップページを静的ページにして、サブディレクトリにブログを配置する方法 – minorio のプログラミング・メモ

 - CMS, WordPress, プログラミング, 覚え書き , ,

アドセンス広告メイン

Message

メールアドレスが公開されることはありません。

  関連記事

さくらのレンタルサーバー+ラピッドSSLを使ってWordPressをhttps化するときの注意点

1年以上前の記事です。内容が古い可能性があります。さくらインターネットで非常に安 …

最近、2ちゃんねるまとめブログ風のランディングページ(偽ブログ)が乱立しているくさい

1年以上前の記事です。内容が古い可能性があります。以前、キラキラ☆ウォーカーに騙 …

「JAF(ジャフ)」のツイッターアカウントがつぶやく自動車豆知識がすごく役に立つ

1年以上前の記事です。内容が古い可能性があります。「JAF(ジャフ)」とは「JA …

このサイトはコンピュータに損害を与える可能性があります

1年以上前の記事です。内容が古い可能性があります。Googleでは、検索結果に「 …

Photoshop CC(2014)で「◯◯ツールを使用できません。プログラムエラーです。」が出た時の対処法

1年以上前の記事です。内容が古い可能性があります。知り合いのデザイナーさんのパソ …

「おはようパンダ」と「ねむログ」を連携させる方法

1年以上前の記事です。内容が古い可能性があります。需要があるかないかは別として、 …

モバイルサイトのスクリーンショット

1年以上前の記事です。内容が古い可能性があります。「モバイルサイトを本格的に始め …

最近のイラストレーター(Illustrator)aiデータはAdobe Readerでプレビューできる【DTP】

1年以上前の記事です。内容が古い可能性があります。Illustratorのデータ …

Google Chromeでページランクを確認する方法(最新版)

1年以上前の記事です。内容が古い可能性があります。以前紹介したGoogle Ch …

Remember The Milk(RTM)のタスクをTwitter(ツイッター)と連携する方法

1年以上前の記事です。内容が古い可能性があります。以前、Twitter(ツイッタ …

血液型オヤジ