custom.module เทียบกับ template.php


9

นี่เป็นคำถามที่ไม่ได้กำหนดเป้าหมาย แต่ฉันไม่พบข้อมูลที่ดีเกี่ยวกับเรื่องนี้

เมื่อใดที่จะถือว่าการฝึกที่ถูกต้องในการใส่รหัสลงในไฟล์ template.php ของคุณและเมื่อนำไปใช้ในโมดูล

ฉันหมายถึงในตัวอย่างปัจจุบันของฉันฉันต้องเรียก hook_preprocess_node และข้างในทำการ drupal_get_form และแสดงแบบฟอร์มนั้น ฉันวางตรรกะของฉันไว้ใน template.php

ถูกต้องหรือไม่ ถ้าไม่คุณสามารถให้รายชื่อสั้น ๆ ของ DOS และ DONTS เกี่ยวกับปัญหาได้หรือไม่


1
ถ้ามันซับซ้อนเกินไปฉันใส่ไว้ในโมดูลถ้ามันมีโค้ดไม่กี่บรรทัดที่ฉันใส่ไว้ใน template.php จากนั้นก็ขึ้นอยู่กับการใช้งานเช่นกันหากเป็นหนึ่งธีม (template.php) หรือสำหรับธีมอื่น (โมดูล) มันขึ้นอยู่กับคุณ.
Tyler Durden

คำตอบ:


9

มีสองสิ่งที่ฉันพยายามระลึกไว้เสมอเมื่อทำการตัดสินใจนี้

นี่เป็นคุณสมบัติที่ใช้งานได้หรือเป็นคุณสมบัติที่มองเห็นได้อย่างหมดจดหรือไม่? ส่วนประกอบที่ใช้งานได้ไปในโมดูล คนที่มองเห็นอย่างหมดจดไปในชุดรูปแบบ

จะเกิดอะไรขึ้นถ้าฉันเปลี่ยนหรือเปลี่ยนแปลงธีมอย่างรุนแรงตามท้องถนนและ / หรืออนุญาตให้มีธีมมากมายสำหรับไซต์ของฉัน หากคุณไม่ต้องการที่จะทำซ้ำคุณสมบัตินั้นควรไปในโมดูล

Drupal ทำให้เชื่อมโยงเนื้อหาตรรกะทางธุรกิจและการนำเสนอได้ง่าย เพื่อความสามารถในการบำรุงรักษาเว็บไซต์ในระยะยาวคุณจะต้องระมัดระวังอย่างยิ่งเมื่อคุณทำสิ่งต่าง ๆ

กฎที่ดีของหัวแม่มือคือว่ารูปแบบที่ไม่ควรต้องรู้เกี่ยวกับรหัส ( $nid, $uid, $tidฯลฯ ) สำหรับอะไรและควรต้องเท่านั้นที่จะทราบชื่อเครื่องที่จะปรับเปลี่ยนลักษณะที่มองเห็น

ในกรณีของคุณการเพิ่มแบบฟอร์มไปยังโหนดเป็นการเปลี่ยนแปลงการทำงานและฉันจะใส่ไว้ในโมดูล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.