エントリーのランダム表示【Movable Type 3.3】
ランダムに数件のエントリーをピックアップしてリスト化
必須条件:PHPが使える事
実際に当サイトでも「おすすめ相互リンク」のエントリーで利用しております。
まずはこちらのサンプルをご覧頂ければイメージがつくかと思います。
- 例)
- 相互リンク熱烈募集中!!
- 『さらに、おすすめ相互リンク!』のリスト部分
- ※当サイトではエントリー・アーカイブ毎でキャッシュするようになっております。
よって「再構築」を行うまで表示内容は変わりません。
手順の概要
手順としては以下の様になります。
各回の手順をきちんと確認すれば、難しくないです。だぶん(爆)
- エントリーデータ出力用のテンプレートを作成
- エントリーデータよりランダムにリストを作成するPHPプログラムの設置
- エントリー・アーカイブなどのテンプレートにPHPプログラムの読み出しの設置
エントリーデータ出力用のテンプレートを作成
出力の元となるエントリーデータのデータベースとも言えるファイルを作成します。
エントリーデータ出力用のインデックステンプレートを作成します。
- テンプレート名:自分が分かりやすいように適当に
- 出力ファイル名:entries_array.inc (重要:エントリーデータ・ファイル)
- 再構築オプション:自動的に再構築…に、チェックを入れる
- テンプレートの内容:下記フォーム内容をコピー&ペースト
- <MTIfCategory name=”【抽出したいカテゴリー】“>
- </MTIfCategory>
- 全てのエントリーが対象の場合は、上記の行を削除する事。
- 「抽出したいカテゴリー」がある場合は抽出したいカテゴリーを【抽出したいカテゴリー】部分に記述する。
- <MTEntries lastn=”【777】“>
- 出力の元となるエントリーデータの数です。適当に変更して下さい。
- 記述が終わったら[保存と再構築]ボタンをクリックして下さい。
- 出力ファイル名でファイルが出力されているか確認して下さい。
エントリーデータ・ファイルよりランダムにリストを作成するPHPプログラムの設置
出力されたエントリーデータを読み込みランダムでリストを表示するPHPプログラムを設置します。
下記フォーム内容をコピー&ペーストして下さい。
保存するPHPプログラムのファイル名は entries_array.php です。
- include_once(’entries_array.inc‘);
- エントリーデータ・ファイルのファイル名と同じ事を確認して下さい。
- $numbers = array_slice($numbers, 0, 15);
- リストに表示する件数です。ここでは15件表示します。
- PHPプログラムを保存する際、漢字コードを Movable Type と同じにして下さい。
- ブラウザで表示を確認して下さい。
(ブラウザの表示文字コードをPHPプログラムの漢字コードに合わせて下さい)
エントリー・アーカイブなどのテンプレートにPHPプログラムの読み出しの設置
表示をさせたいテンプレートに下記フォーム内容をコピー&ペーストして下さい。
- <?php require ‘entries_array.php‘;?>
- PHPプログラムのファイル名と同じ事を確認して下さい。
以上、お疲れ様でした。
- カテゴリ:Web開発
- 公開日:2006/09/14
- ↑ 記事評価をお願いします。

