custom.moduleとtemplate.php


9

これはそれほど対象を絞った質問ではありませんが、これに関する適切な情報は見つかりません。

template.phpファイル内にコードを配置するのが正しい方法と見なされるのはいつですか、いつモジュールに実装するのですか?

私の現在の例では、hook_preprocess_nodeを呼び出して内部でdrupal_get_formを実行し、そのフォームをレンダリングする必要があることを意味します。ロジックをtemplate.phpに入れました。

あれは正しいですか?そうでない場合、問題に関するDOSとDONTSの短いリストを教えていただけますか?


1
複雑すぎる場合はモジュールに配置し、コードが数行の場合はtemplate.phpに配置します。次に、それが1つのテーマ(template.php)であるか別のテーマ(モジュール)であるかは、使用方法にも依存します。それはあなた次第です。
タイラーダーデン2012

回答:


9

この決定を下すときに心に留めておくべきことが2つあります。

これは機能的な機能ですか、それとも純粋に視覚的な機能ですか?機能コンポーネントはモジュール化されます。純粋に視覚的なものがテーマになります。

今後、テーマを変更または大幅に変更したり、サイトに複数のテーマを許可したりするとどうなりますか?機能を複製したくない場合は、モジュールに入れる必要があります。

Drupalを使用すると、コンテンツ、ビジネスロジック、およびプレゼンテーションを簡単に組み合わせることができます。サイトの長期保守性のために、物事を実装するときは本当に注意する必要があります。

親指の良いルールは、テーマはIDが(について知る必要がないということです$nid$uid$tid何のための、など)、そして唯一の視覚的な外観を変更するためにマシン名を知っておく必要がありますする必要があります。

あなたの場合、ノードにフォームを追加することは機能的な変更であり、私はそれをモジュールに入れます。

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