web-dev-qa-db-ja.com

パネル領域にクラスを追加

私は長い間これを試しています。パネル領域にクラスを追加しようとしています。パネルページを使用してノードの1つを表示しています。リージョンクラスを追加したいのですが、うまくいきません。これを達成する方法はありますか?テーマのレイアウトテンプレートを書き換えることはできますか?もしそうなら、私はこれを素早く達成することができます。たとえば、自分のノードのコンテンツタイプに基づいてレイアウトテンプレートを上書きできるかどうか疑問に思っています。

どうもありがとう。

3
cissharp

私は今朝同じ問題に遭遇しました、そしていくつかのグーグルが答えを見つけた後。それは、適切なtpl.phpファイルを見つけて、独自のテーマにコピーすることです。

ベーステーマ(私の例では、adaptivetheme)からサブテーマを作成している場合、ベーステーマが独自のレイアウトを提供する場合があります。テンプレートファイルはそこに含まれます。 。tpl.php内でサポートされている場合、基本テーマは、クラスの追加に使用できるtemplate_preprocess関数も実装する場合があります。

パネルには、いくつかの組み込みレイアウトが付属しています。 plugins/layouts/<layout>/panels_ <layout> .tpl.phpの下のパネルモジュールディレクトリにあるテンプレートファイルがあなたが探しているものになると思います。特に使用していませんが、同じパターンに従っているようです。

ただし、ノードのコンテンツタイプに応じて異なるレイアウトを提供する場合は、node_viewパネルページのパネルページバリアントを使用して探索することをお勧めします。 UIを使用して、レイアウトを変更し、ペイン固有のクラスを追加できます。

1
user18728

パネルのテーマにカスタムレイアウトを作成できます。ここでガイドするかなり良い方法があります: https://drupal.org/node/495654

ノードごとに異なるレイアウトを使用したい場合は、パネルページにバリアントを追加し、[選択ルール]で[node:type]を選択して、必要なコンテンツタイプを選択します。次に、それぞれに異なるパネルレイアウトを割り当てることができます。レイアウトタブの下のそれぞれのバリアント。

1
Jance

レイアウト全体を変更せずに、パネル領域とペインのマークアップとクラスを変更するだけの場合は、次のモジュールを確認してください。

  • クリーンマークアップ

    このモジュールは、Drupalコアおよび Panels などのいくつかの一般的なcontribモジュール)のマークアップのカスタマイズをクリーンアップ、拡張、および促進することを目的としています。

  • セマンティックパネル

    これは、パネルペインのHTML出力を完全に制御できるCToolsスタイルのプラグインです。これを使用すると、個別に以下を追加/削除できます。

    • HTML要素
    • クラス
    • その他の属性

    ペインタイトル、ペインコンテンツ、ペインラッパー。

1
dcmouyard