ทำ 2 theme ในเวปเดียว :D
posts
หลังจากที่ทำ blog ของตัวเองแอบเอาไว้ใน mmm ผมคิดว่า จะใช้ theme เดิมของ mmm เลยก็ดูจะกระไรอยู่ วันนี้เลยลองหาทางศึกษาความเป็นไปได้ว่าจะสามารถจัดการ CSS ให้แตกต่างกันเหมือนคนละ theme ในเวปเดียวกันได้หรือไม่บน drupal.org
ได้มาเจอกระทู้นี้ครับ http://drupal.org/node/451446
ที่ผมได้มาเป็นหลักในการแยก theme ของ node หรือว่าเนื้อหาต่าง ๆ ของ drupal ออกจากกัน แต่เดิมผมพอจะทราบวิธีการวาง layout ของ node แต่ละแบบให้แตกต่างกันได้บ้างแล้ว โดยใช้ page-node-xx.tpl.php (ดูตัวอย่างได้จากหน้า iPhone บนเวปครับ)
แต่ที่ผมอยากได้ขึ้นไปอีกคือ ไม่ใช่แค่ layout ที่เปลี่ยนไป แต่ผมอยากเปลี่ยน CSS หรือว่าหน้าตาของ theme ด้วย =)
เลยมาลงที่การควบคุม theme แบบแยกประเภทของ node ครับ ซึ่งเราจะใช้ selector ว่า
.node-type-MyContentType หรือ
.section-MyContentType
ผมไม่แน่ใจว่าทั้งสองแบบแตกต่างกันอย่างไรนะครับ แต่เขาบังคับการแสดงผลให้เป็นส่วน ๆ ไปตาม content type ที่เราต้องการได้ โดยที่ไม่ไปยุ่งกับ theme ส่วนอื่นของเวป .. ผมเลยเอาตรงนี้มาสร้าง CSS เฉพาะกิจขึ้นมาเพื่อควบคุมส่วนของ Kblog (blog ที่คุณกำลังอ่านอยู่ในตอนนี้) ครับ และนี่เป็นวิธีที่ผมใช้ครับ
- สร้าง node-kblog.tpl.php ใหม่ขึ้นมา โดยการ copy ไฟล์ node.tpl.php แล้วเปลี่ยนโครงสร้างข้างในเล็กน้อย
- จากนั้นผมก็เริ่มลงมือจิ้ม CSS แล้วควบคุมด้วย .node-type-kblog ไม่ก็ .section-kblog เพื่อ theme เฉพาะส่วน content type แบบ Kblog หรือว่า section นี้ครับ ผลที่ได้คือ ได้ CSS ไฟล์เพิ่มจากของเดิมจาก theme ที่ใช้อยู่มาอีกประมาณ 100 บรรทัด :P
เสร็จแล้วก็ได้ออกมาอย่างที่เห็นนี้ครับ ^o^ / ~
- Login to post comments
My website projects
websites ที่ผมทำครับ ทั้งมีส่วนร่วมทำทั้งหมด หรือบางเวปทำเฉพาะ theme ครับ =)
Comments
posts
โอ้ว
ฉานเกลียด CSS
แง่งๆๆๆๆ
posts
อย่าเพิ่งต๊กใจก่ะ
เดี๋ยวอีกหน่อยหนูก็จะทำได้ล่ะนะคะ ทำบ่อย ๆ เดี๋ยวก็ได้ล่ะ ;D