定義:
Drupal Views モジュールでは、思いどおりの方法で世界にあなたのコンテンツを整理して表示することができます。 50万人以上のDrupalサイトは、Viewsモジュールを使用していると報告しています。 それは良いことだ。
たとえば、書籍レビューのカスタムコンテンツタイプがあるとします。 各ブックのレビューには、次のフィールドがあります。
- 表紙画像
- タイトル
- 著者
- 出版社
- 発行年
デフォルトでは、Drupalはこれらのレビューの基本的なリストを作成させます。 リスト内の各フィールドを非表示にするか、表示のサイズを設定することができます。 そして他にもたくさんありません。
あなたのコンテンツをミックスしてマッチさせる
一方、ビューを使用すると、このデータをあらゆる種類のカスタムリストに混在させることができます 。 たとえば、次のようにすることができます。
- すべての書籍をタイトルだけで一覧表示するページがあります。 各タイトルは完全なレビューにリンクしています。
- レビューしたすべての著者をリストする別のページがあります。 各著者は、その著者による短いタイトルのリストにリンクしています。
- グリッド内で、画像のみをカバーする3ページ目をお持ちください。 各画像は完全なレビューにリンクしています。
- 最新の6件のレビューのサムネイルのカバー画像とティーザーのみを表示するサイドバーがあります。 さらに、 "西洋"、 "謎"、または "読解可能なスタートレックファンフィクション"という用語でタグ付けされた本のみを表示します。
そしてそれらの例は、私の頭の上からちょうど外れています。 あなたがそれを考えることができるなら、それはViewsでそれを構築する可能性が非常に高いです。
見て、馬! コードなし!
また、1つのコード行なしでこれらのビューをすべて構築できます。
コードでビューを実行する必要がある場合は、次のようになります。
SELECT node.nid AS nid、node.created AS node_created FROMノードノードLEFT JOIN term_node term_node ON node.vid = term_node.vid LEFT JOIN term_data term_data ON term_node.tid = term_data.tid WHERE(node.status = 1 OR(node。 uid = *** CURRENT_USER *** AND *** CURRENT_USER *** <> 0)OR *** ADMINISTER_NODES *** = 1)AND(node.promote <> 0)AND(UPPER(term_data.name)= UPPER( 'blog'))ORDER BY node_created DESCそれはMySQLクエリです。
結果をフォーマットして出力するコードも必要です。 フィールドや条件を追加したければ、何も壊さずにコードを微調整して調整する必要があります。
ビュー? ポイントアンドクリック。
コンテンツタイプとビューの考え方
カスタムのコンテンツタイプとビューを操作する方法を学ぶと、今まで困難だったCMSの問題の大部分を解決できることがわかります。
しばしば、あなたやあなたのクライアントは、他のCMSソフトウェア上で複雑なコーディングやプラグインの必死の捜索を必要とする「特別な」ページを必要とします。 しかし、少し考えれば、それらを1つ以上のカスタムコンテンツタイプと適切なビューに減らすことができます。
カスタムモジュールでビューを拡張する
本当に、ビューはすべてを行うことはできません。 しかし、あなたがビューの限界に遭遇したことがあるなら、drupal.orgをチェックしてください。 Viewsを拡張する何千ものモジュールがあります。 いつものように、あなたはモジュールを賢明に選ぶべきですが、誰かがすでにあなたの問題を解決している可能性は非常に高いです。
しかし、最初にビューを学ぶ
しかし、カスタムモジュールを探す前に、 "基本的な"ビューでできることを本当に学んでいることを確認してください。 そこには多くのチュートリアルがありますが、学習する最善の方法は、含まれているビューの1つを有効にすることです。 すぐに、あなたが見るために必要な基本的な要素が表示されます。 それから、調整を始めることができます - それが学ぶ最も良い方法です。