ページレイアウトのベストプラクティス


19

Drupalのページレイアウトのベストプラクティスを理解しようとしています。多くのページには、メインコンテンツ、ヘッダー画像など、いくつかの異なる要素があります。「基本的なページ」または類似のもの(ページ全体に1つのノード)を作成するつもりはありません。

すべてのページにパネルを使用し、それらにブロックをドロップするのは良いですか?ビュー、場合によってはノード、連絡先フォームなどをドロップできます。


「すべてのページにパネルを使用するのは良いことです」パネルのパフォーマンス負荷はほとんど、またはまったくありません。パネルをキャッシュできるため、場合によってはさらに高速になります。
iStryker

回答:


11

パネルは優れたモジュールですが、複雑な場合もあり、完全に理解するまでに時間がかかる場合があります。すべてのページにパネルを使用することに興味がある場合、Panels Everywhereモジュールは興味深いプロジェクトです。

より柔軟なレイアウトを提供するもう1つの素晴らしいプロジェクトは、Display Suiteです。

人々はPanelsまたはDSを使用する傾向がありますが、競合他社ではありません。DSの作成者/管理者のブログで読むことができるように、これらを一緒に使用することもできます。Drupal7の表示モードでのパネルの使用


5
コンテキストとオメガ(オメガツール)を忘れないでください


0

はい、パネルは要素をドロップできるレイアウトを提供します。

Panelizerは、既存のノードにパネルを追加するだけの最も簡単なパネルモジュールです。(ノードパネルは非推奨ですが、この事実は広く指摘されていません。)

したがって、通常のノードシステムを使用しますが、必要に応じてノードを「パネル化」します。


0

複数のページでレイアウトを再利用する場合は、多数のフィールドを持つ表示スイートが最適な選択肢のようです。

ページごとに個別のレイアウトが必要な場合は、パネルが適切な場合があります。


後者が必要であるが、(私がそうであるように)パネルを恐れている場合、他に試すことができる何かがあります。(/drupal//a/90744/2974から)

モジュール:

どうやって?

  • ノードタイプ「frontpage」を作成します。
  • 「複数選択リスト」ウィジェットで複数値ブロック参照フィールドを追加します。
  • フロントページに配置できるさまざまな種類のファンシーボックスを許可するために、いくつかのBeanタイプをセットアップします。
  • ネストされたレイアウトのBean内でブロック参照を使用します。
  • Beanタイプの1つは、複数の値のエンティティ参照を持つことができます。たとえば、多数の製品を参照します(そしてそれらをソート可能にします)。私は通常、ノードキューよりもこれを好みます。
  • 表示スイートを使用して、各Beanおよびフロントページ自体の表示方法を定義します。
  • 表示スイートのカスタムフィールドテンプレートを使用して、blockreferenceの各Bean /ブロック、または各製品などの周りに装飾ボックスを配置します。hook_ds_field_theme_functions_info()を確認します。このようなものは強力で素晴らしいです!
  • コンテキストリンクを使用して個々のBeanを編集するように、クライアント/コンテンツエディターに指示します。
  • さらに、ビューブロックをブロック参照で使用できます。
  • インラインエンティティフォームは便利かもしれませんが、実際にこの組み合わせで試したことはありません。これは宿題です:)

戦略は、1ページに固有のすべてがブロック(またはBeanインスタンス)であるということです。これらのブロックはテーマ領域を汚染しないので、それを買う余裕があります。

これにより、遊ぶための資料が得られるはずです。
より詳細な質問は、専用のstackexchangeの質問で議論する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.