Drupal 6、関連する記事の表示をViewsで実現
よくブログには、関連記事っていう欄がありますよね。
本文を読んだ最後に、本文に関連する記事の一覧が表示されるアレです。
これをDrupalでも実現します。
Related linksというモジュールがありますが、Drupal 6用はalpha版なので、Views 2で実現します。
設定を始める前に、Viewsの翻訳をインポートしてください。
ビューを追加します。
ビューの名前は適当。ビューのタイプは「ノード」にして「次へ」ボタンを押してください。

引数の隣にある「+」ボタンを押してください。

「タームID」にチェックをつけ、「追加」ボタンを押してください。

このページは設定箇所が多いです。

引数が存在しない場合の動作は「デフォルト引数を提供」を選んでください。
デフォルト引数のタイプは「PHPコード」を選んでください。
PHP引数コードに以下コードを貼り付けてください。
- $node = node_load(arg(1));
- if ($node) {
- foreach ( $node->taxonomy as $term) { $terms[] = $term->tid; }
- } else { return; }
「1つの引数で複数のタームを利用可能にする」にチェックをつけてください。
「重複の削減」にチェックをつけてください。
「更新」ボタンを押してください。これで引数の設定は終了です。
フィールドの隣にある「+」ボタンを押してください。

「ノード:タイトル」にチェックをつけて、「追加」ボタンを押してください。

タイトルに入っている「タイトル」を削除して、「このフィールドをノードへリンクする」のチェックを外してください。「更新」ボタンを押してください。

基本設定のタイトルの「なし」をクリックしてください。

ブロックに表示させるタイトルをつけてください。

このままではブロックには表示されません。左上のプルダウンメニューから「ブロック」を選び、「ディスプレイの追加」ボタンを押してください。

全部設定すると、このようになります。

これで、ブロックの管理画面に、基本情報のタイトルでつけた名前が表示されます。ノードの下に表示されるようにブロックを移動してください。
Views、Related Linksどちらも同じですが、本文とコメントの間に表示されません。
Drupal 5なら、Related Linksを改造して、コメントの前に表示させていました。
Viewsだと、どうやるんだろう。ちょっと研究してみます。
元ネタはこちら
Using Views 2 and Drupal 6 to Create a Related Pages Block
http://drupaleasy.com/blogs/ryanprice/2008/06/using-views-2-drupal-6-cre...
ryanprice さん、ありがとう。
DrupalをAmazonで検索する。

コメント(0)
新しいコメントの投稿