ทำไมต้องใช้ชุดรูปแบบเมื่อคุณมีโมดูล?


9

ภายในโมดูลที่กำหนดเองของฉันฉันได้เพิ่มไฟล์

Vendor/Theme/view/layout/default.xml

ซึ่งฉันใช้เพื่อแทนที่ templating ทั่วโลกของไซต์จำนวนมากด้วยเทมเพลต / บล็อก / เลย์เอาต์จากโมดูลที่กำหนดเอง ฉันกำลังแนบสไตล์ของตัวเองทั่วโลกที่มีอยู่ในview/webไดเรกทอรีในโมดูลนั้น

ฉันควรจะใช้ชุดรูปแบบสำหรับสิ่งนี้แทนหรือไม่? มีข้อโต้แย้งที่ดีสำหรับรูปแบบการออกแบบหนึ่งมากกว่าอีกรูปแบบหนึ่งหรือไม่? เช่น. ใช้app/designมากกว่าapp/codeหรือไม่

คำตอบ:


13

คุณสามารถทำสิ่งใดก็ตามที่คุณนึกฝัน แต่ถ้ามันเป็นสิ่งที่ถูกที่ควรทำนั่นคือคำถามที่นี่

โมดูล

โมดูลควรเพิ่มหรือเปลี่ยนฟังก์ชั่นการใช้งานของร้านค้าบนเว็บและควร / สามารถโอนไปยังการประชุมเชิงปฏิบัติการ Magento 2 อื่น ๆ โมดูลสามารถมีเลย์เอาต์เทมเพลตและสไตล์ของตนเองและสามารถเปลี่ยนเลย์เอาต์ทั่วไปแม่แบบและสไตล์ได้หากจำเป็นสำหรับการทำงานของโมดูลของคุณ โมดูลส่วนใหญ่มุ่งเน้นไปที่ฟังก์ชั่นเดียวดังนั้นจึงมีขนาดค่อนข้างเล็กและทำให้เว็บวีโอไอพี 2 มีจำนวนมาก

สามารถเปิดใช้งานและปิดใช้งานโมดูลได้อย่างง่ายดายซึ่งจะทำให้ฟังก์ชั่นเฉพาะที่เพิ่มหรือเปลี่ยนแปลงปรากฏขึ้นหรือหายไป ไม่ควรทำให้ไซต์ทั้งหมดเปลี่ยนแปลง

ธีมส์

ชุดรูปแบบเปลี่ยนเค้าโครงของร้านค้าบนเว็บทั่วโลกการสร้างเทมเพลตและการกำหนดสไตล์และควรเพิ่มหรือลบฟังก์ชันการทำงาน แม้ว่าชุดรูปแบบ (จ่าย) อาจมีคุณสมบัติพิเศษ แต่ส่วนใหญ่จะทำในโมดูลที่มาพร้อมกับชุดรูปแบบดังกล่าว ชุดรูปแบบควรจะใช้แทนกันได้จึงสามารถนำไปใช้กับร้านค้า Magento 2 เว็บใดก็ได้ แต่ยังสามารถเปลี่ยนชุดรูปแบบได้อย่างง่ายดาย (เช่นมีหลายรายการในการตั้งค่าหลายร้าน)


ดังนั้นถ้าคุณถามว่าจะ"แทนที่มากของแม่แบบระดับโลกของเว็บไซต์ที่มีแม่แบบ / บล็อก / รูปแบบที่เป็น"คำตอบจะเป็นในรูปแบบ

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


1
ฉันต้องการทำสิ่งที่ถูกต้อง ขอบคุณคำตอบที่เป็นประโยชน์ฉันจะเริ่มโยกย้ายการเปลี่ยนแปลงเหล่านี้ไปยังชุดรูปแบบ
Daniel Thompson

3

คำตอบนี้คือสิ่งที่ฉันคิดว่านี่อาจไม่ได้มาตรฐานวีโอไอพี

จะใช้ชุดรูปแบบสำหรับเค้าโครงและแม่แบบเมื่อใดและจะใช้โมดูลเมื่อใด

กระทู้

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

โมดูล

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

สิ่งที่ฉันแนะนำให้สร้างสำเนาต้นฉบับหนึ่งชุดในโมดูลเสมอและหากคุณต้องการเปลี่ยนตามความต้องการของคุณให้คัดลอกชุดรูปแบบและทำการเปลี่ยนแปลงในแม่แบบ

วิธีนี้คุณสามารถแก้ปัญหาได้เช่นถ้าธีมเปลี่ยนไปจากนั้นไฟล์โมดูลของคุณก็อยู่ที่นั่น

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