custom.module vs template.php


9

Це не націлене запитання, але я не можу знайти жодної хорошої інформації з цього приводу.

Коли правильно вважати практику введення коду у файл template.php і коли його реалізовувати в модулі?

Я маю на увазі в своєму теперішньому прикладі мені потрібно зателефонувати на гачку_preprocess_node, а всередині виконати drupal_get_form і надати цю форму. Я вклав свою логіку всередині template.php.

Це правильно? Якщо ні, чи можете ви дати мені короткий перелік DOS і DONTS щодо цього питання?


1
якщо це занадто складно, я кладу його в модуль, якщо це декілька рядків коду, я ставлю його в template.php. Тоді це також залежить від використання, якщо це стосується однієї теми (template.php) або для різних тем (модуля). Тобі вирішувати.
Тайлер Дюрден

Відповіді:


9

Є дві речі, про які я намагаюся пам’ятати, приймаючи це рішення.

Це функціональна особливість чи суто візуальна? Функціональні компоненти входять в модулі. Чисто візуальні йдуть у темі.

Що станеться, якщо я змінити або докорінно змінити тему в дорозі та / або дозволити кілька тем для свого сайту? Якщо ви не хочете копіювати функцію, вона повинна перейти в модуль.

Drupal дозволяє легко переплетати вміст, ділову логіку та презентацію. Для довгострокового обслуговування сайту, вам потрібно бути обережним, коли ви реалізуєте речі.

Гарне емпіричне правило полягає в тому , що тема не повинно знати про ідентифікатори ( $nid, $uid, $tid, і т.д.) для чого - або, і повинна тільки знати імена комп'ютерів , щоб змінити зовнішній вигляд.

У вашому випадку додавання форми до вузла - це функціональна зміна, і я дійсно ставлю це до модуля.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.