MovableTypeでStyleCatherのBryantというテンプレートを使っています。1ページに表示するエントリを20エントリとしていますが、それ以上の数のエントリがある場合は、ページの一番下に、「次へ」「戻る」などのリンクがほしいのですが、どのように追加するのでしょうか。現在は、最新20件だけは表示されますが、21~40件目を表示する手段がありません。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/05/10 16:15:43
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:zelazny No.3

回答回数95ベストアンサー獲得回数12

ポイント100pt

ご質問されている、ページというのは、ブログのトップページ(メインインデックス)を指しているのではないでしょうか。

だとしたら、1ページに表示するエントリを設定している所で指定したエントリー数までが、表示されるの最大となります。

ページ分割用のプラグインを使って、例えばエントリーが500あったとしたら、500エントリー分を20エントリーずつ、25ページ分に分割することが出来ます。

ページ分活用のプラグインで、一般的なのはMTPaginate

http://www.nonplus.net/software/mt/MTPaginate.htm

というプラグインで、検索すればかなりの実例が見つかると思います。

ただし、1ファイル500エントリーのインデックスページというのは、ファイルサイズが巨大になる為、運用には困難が伴います。

それと、最低限サーバーでPHPスクリプトが使用できることが、前提になります。PHPが扱える環境だと確認できているなら、おそらくこれが一番ハードルが低いと思います。

可能ならば、静的再構築に対応したページ分割プラグインを使うことをお勧めします。PageBute

http://www.skyarc.co.jp/engineerblog/entry/2642.html

ただし、情報が少ないので、導入には苦労するかもしれません。

ダイナミックパブリッシングは、サーバーの設定等有る程度の知識と、MTを導入しているサーバーの情報が必要になります。この質問をここでする段階の方には、おそらくかなり難しいと思います。

id:jd6jd

ありがとうございます。ダイナミックパブリッシングをするにはバークレイDBではだめで、MySQLを入れなければならないというところまでは分かったのですが、私の使っているレンタルサーバーはPerlからMySQLへのDBIを提供していないらしく、あきらめていたところでした。

2007/05/06 03:02:55

その他の回答3件)

id:sanbo-n No.1

回答回数509ベストアンサー獲得回数1

ポイント23pt

情報としてクリップしていただけでまだ自分自身で試してはいないので詳細はわからないのですが

http://www.koikikukan.com/archives/2005/11/13-235207.php

こちらでページ分割の方法として言われているようなことが紹介されています。

ページ分割 Movabletypeで検索をかけるとこれらの方法を解説したページがたくさん出てきます。

id:kokorohamoe No.2

回答回数27ベストアンサー獲得回数2

ポイント23pt

http://www.sixapart.jp/movabletype/plugins/divpages.html

Six Apart - Movable Type プラグインディレクトリ

Perlを使ってダイナミックパブリッシングをしている方はこちら。


http://revilog.com/program/2007/05/010715.html

レビログ::Movable TypeでPHPダイナミックパブリッシングとキャッシュとページ分割を同時に利用する方法

手前みそですがPHPを使ってダイナミックパブリッシングをしているかたはこちら。

ダイナミックパブリッシングなしで実行するのは難しいかと思います。まずは、ダイナミックパブリッシングを設定し、すこしコードをいじるのが近道かと思います。

id:zelazny No.3

回答回数95ベストアンサー獲得回数12ここでベストアンサー

ポイント100pt

ご質問されている、ページというのは、ブログのトップページ(メインインデックス)を指しているのではないでしょうか。

だとしたら、1ページに表示するエントリを設定している所で指定したエントリー数までが、表示されるの最大となります。

ページ分割用のプラグインを使って、例えばエントリーが500あったとしたら、500エントリー分を20エントリーずつ、25ページ分に分割することが出来ます。

ページ分活用のプラグインで、一般的なのはMTPaginate

http://www.nonplus.net/software/mt/MTPaginate.htm

というプラグインで、検索すればかなりの実例が見つかると思います。

ただし、1ファイル500エントリーのインデックスページというのは、ファイルサイズが巨大になる為、運用には困難が伴います。

それと、最低限サーバーでPHPスクリプトが使用できることが、前提になります。PHPが扱える環境だと確認できているなら、おそらくこれが一番ハードルが低いと思います。

可能ならば、静的再構築に対応したページ分割プラグインを使うことをお勧めします。PageBute

http://www.skyarc.co.jp/engineerblog/entry/2642.html

ただし、情報が少ないので、導入には苦労するかもしれません。

ダイナミックパブリッシングは、サーバーの設定等有る程度の知識と、MTを導入しているサーバーの情報が必要になります。この質問をここでする段階の方には、おそらくかなり難しいと思います。

id:jd6jd

ありがとうございます。ダイナミックパブリッシングをするにはバークレイDBではだめで、MySQLを入れなければならないというところまでは分かったのですが、私の使っているレンタルサーバーはPerlからMySQLへのDBIを提供していないらしく、あきらめていたところでした。

2007/05/06 03:02:55
id:zelazny No.4

回答回数95ベストアンサー獲得回数12

ポイント22pt

>私の使っているレンタルサーバーはPerlからMySQLへのDBIを提供していないらしく、あきらめていたところでした。

他にもSQLiteとかの選択肢もあったと思いますので、あきらめるのは少し早いかと。使えるのならば、ダイナミックパブリッシングは便利ですよ。

id:jd6jd

実はSQLiteも

DBD::SQLite

サーバーにDBD::SQLiteがインストールされていないか、DBD::SQLiteに必要なモジュールがインストールされていません DBIとDBD::SQLiteは、SQLiteを使ってブログのデータを管理するために必要です。 DBD::SQLiteをインストールする場合は、インストール手順を参照してください。

という状況でした。ありがとうございます。

と思ったら、前で紹介いただいた

PageButeで解決できそうです!ありがとうございます。

2007/05/10 16:14:40

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません