85

CCK および View 2 モジュールを使用してビューを定義しました。このビューに固有のテンプレートをすばやく定義したいと思います。これに関するチュートリアルや情報はありますか? 変更する必要があるファイルは何ですか?


ここに私の調査結果があります:(編集済み)

実際、ビューをテーマ化する方法は 2 つあります。「フィールド」の方法と「ノード」の方法です。Row style: Node「編集ビュー」では、 「 」または「 」を選択できますRow style: Fields

  • Node」の方法では、ビュー内の各ノードに対して呼び出されるnode-contentname.tpl.phpを作成できます。$field_name[0]['value'] で cck フィールド値にアクセスできます。(edit2)このビューから表示される各ノードに対してのみ呼び出されるnode-view-viewname.tpl.phpを使用できます。
  • Field」の方法では、個別にテーマにしたい各フィールドに views-view-field--viewname--field-name-value.tpl.php を追加します。

以前の回答のおかげで、次のツールを使用しました。

  • 「基本設定」ブロックの「テーマ: 情報」で、変更できるさまざまなテンプレートをすべて確認できます。
  • フィールド変数名をすばやく見つけるためのDevel モジュールの「テーマ開発者」。
  • 2 ドキュメント、特に「テーマの使用」ページを参照してください。
4

10 に答える 10

52

実際、ビューをテーマ化する方法は 2 つあります。「フィールド」の方法と「ノード」の方法です。Row style: Node「編集ビュー」では、 「 」または「 」を選択できますRow style: Fields

  • Node」の方法で、ビュー内の各ノードに対して呼び出される node-contentname.tpl.php を作成できます。$field_name[0]['value'] で cck フィールド値にアクセスできます
  • Field」の方法では、個別にテーマにしたい各フィールドに views-view-field--viewname--field-name-value.tpl.php を追加します。

以前の回答のおかげで、次のツールを使用しました。

  • 「基本設定」ブロックの「テーマ: 情報」で、変更できるさまざまなテンプレートをすべて確認できます。
  • フィールド変数名をすばやく見つけるためのDevel モジュールの「テーマ開発者」。
  • 2 ドキュメント、特に「テーマの使用」ページを参照してください。
于 2008-09-16T22:55:11.370 に答える
22

Views 2.0 のビュー用に作成および変更できるテンプレート ファイルを見つける簡単な方法は、次のとおりです。

  1. ビューを編集する
  2. スタイルを選択します (例: ページ、ブロック、デフォルト)
  3. 「基本設定」ブロックで、「テーマ: 情報」をクリックして、変更可能なさまざまなテンプレートをすべて表示します。
于 2008-09-16T23:27:29.420 に答える
16

Devel モジュールの「テーマ開発者」機能は、Drupal が何かをテーマにするときに、どのテンプレート ファイルを探しているかを確認するのに便利です。例については、そのページのスクリーンショットを参照してください。

于 2008-09-17T00:20:09.153 に答える
10

Semantic Viewsもチェックしてください。単純なビューのテーマ設定では、非常に便利です。

于 2010-07-28T04:12:24.190 に答える
7

1 つのヒント:

同様の書式設定が必要なビューが多数ある可能性があります。これらのビューごとにテンプレートを作成してコピーすると、悪夢のようなコード分岐が発生します。サイトのルック アンド フィール全体を変更するように求められた場合 (この特定の方法でフォーマットされた各ビューの表示を変更することを意味します)、戻って、これらをそれぞれ個別に編集する必要があります。

ビュー インターフェイスを使用してビュー用の新しいテンプレートを選択する代わりに、コードの分岐を 1 つのビュー ファイルに挿入するだけです。たとえば、あるサイトのviews-view-fields.tpl.php場合:

if($view->name == 'articleList' || $view->name == 'frontList' 
|| $view->name == 'archiveList') {
/* field formatting code */
} else {
/* the default code running here */
}

これにより、この一連のビュー = articleList、frontList、および archiveList に対してのみ必要な方法でフィールドが変更されます。このテンプレートを使用する他のビューでは、このテンプレートで通常見られるコードが実行されます。クライアントが「アーカイブを表示しているページとフロント ページのリストを ( ... ) のように見えるようにしてくれませんか」と尋ねた場合、3 つのファイルではなく、この 1 つのファイルを開いて編集するだけで済みます。異なるファイル。メンテナンスがより迅速かつフレンドリーになります。

于 2011-03-24T14:14:47.397 に答える
6

私にとってblock-views-myViewName-myBlockId.tpl.phpは動作します

于 2009-10-21T00:50:41.233 に答える
4

私のショートカットオプション。

  1. /views/theme/フォルダーのtheme.incファイルに移動します。YOUR_MODULE_DIR

  2. _views_theme_functions関数で$themes変数を出力するか、関数の最後の行にブレークポイントを配置して、変数の内容を確認します。

views-viewと __ を -- に変換views_viewし、テンプレート拡張子を追加して目的のファイル名を取得するだけです。

たとえば、$themes配列の要素がviews_view__test_view__block (test_viewはビューの名前) の場合、テンプレート ファイルの名前はviews-view--test_view--block.tpl.phpになります。

于 2009-08-08T10:22:10.787 に答える
2

私の意見では、ビューのテーマ設定に使用するテンプレート ファイルを決定する最も簡単な方法は次のとおりです。1) admin/build/views/edit/ViewName -> Basic Settings -> Theme をクリックします。

これをクリックすると、可能なすべてのテンプレート ファイルが一覧表示されます。強調表示された (太字のファイル名) ファイルは、ビューのどの部分をテーマにするためにどのテンプレート ファイルが使用されているかを示します。関連するビュー テンプレート ファイル RESCAN に必要な変更を組み込むと、変更されたテンプレート ファイルが強調表示されます。

于 2010-02-21T16:48:26.843 に答える
1

多くのドラッグ アンド ドロップを使用して迅速な Drupal 開発を行いたい場合は、Display Suite モジュール def. 使用する必要があるものです: http://drupal.org/project/ds

于 2011-09-01T10:11:35.573 に答える