การเปลี่ยน Theme แบบซ้บซ้อน - ตอนที่ 1
posted on 14 Jun 2007 23:32 by oatato in BlogDesignโดยปกติเราสามารถจัดเก็บธีมประกอบหน้าเว็บสไตล์ชีท (stylesheets) ของเรา
แยกออกไปเป็นไฟล์นามสกุล .css ได้อยู่แล้ว ซึ่งข้อมูลที่เก็บอยู่ในไฟล์นี้ก็จะมี
หน้าตาเหมือนโค้ดในหน้า Config CSS > Custom ของบล็อกเรานั่นเอง
ถ้าสมมุติว่าเราคัดลอก (copy) เอาโค้ดในส่วน custom ของบล็อก exteen แล้ว
บันทึก (save) เก็บไว้ในไฟล์ css ไฟล์หนึ่ง แล้วเอาไฟล์นี้ไปฝากไว้ที่เว็บรับฝากไฟล์ฟรี ๆ
ซักแห่งหนึ่ง (ตอนนี้ผมใช้ fileden.com อยู่ เสียดายว่าที่ exteen ไม่ยอมให้เก็บไฟล์สคริปต์
ประเภท css และ js มิเช่นนั้นคาดว่าคงจะสนุกกว่านี้แน่นอน)
แล้วสามารถเปลี่ยนให้บล็อกหรือเว็บของเรา ไปใช้ธีมจากไฟล์นั้นแทนได้ไหม?
คำตอบคือ ได้ครับ
การทดลองในวันนี้ ก็คือ ทำตามที่บอกข้างบนล่ะครับ
- คัดลอกโค้ดเก็บไว้ อาจมีการเปลี่ยนรูปให้ต่างจากของเดิมในปัจจุบันซะหน่อย
เพื่อให้เห็นความแตกต่าง บังเอิญที่ผมบันทึกธีมเก่า ๆ เก็บไว้อยู่แล้ว ก็เลยไม่ต้อง
เสียเวลาทำอะไรเท่าไหร่ มีปรับแต่งโค้ดนิดหน่อยซึ่งบอกในหมายเหตุตอนท้ายครับ
และทำการบันทึกเก็บไว้ในไฟล์ style03.css เป็นอันดับแรก - เอาไฟล์ style03.css ฝากไว้ที่ filedenพออัพโหลดเสร็จ จะได้ URL ของไฟล์นี้ คือ http://www.fileden.com/files/2007/1/5/597239/css_exteen/style03.css
- เปิดเอ็นทรีใหม่(หรือเก่าก็ได้)ขึ้นมา 1 เอ็นทรี เขียนบทความอะไรให้เสร็จซะก่อน
แล้วคลิกที่ปุ่ม
เพื่อดูซอร์สโค้ด แล้วก็แปะโค้ดนี้เข้าไป น่าจะเป็นส่วนด้านบน
เพราะตรวจเช็คโค้ดง่าย
<link rel="stylesheet" href="http://www.fileden.com/files/2007/1/5/597239/css_exteen/style03.css" type="text/css" /> - กดปุ่ม Publish ทันทีโดยไม่ต้องสวิตซ์โหมดกลับมา มิเช่นนั้น โค้ดข้างบนจะหายไป
ในพริบตา และต้องเอามาแปะใหม่อยู่เรื่อย ๆไม่สนุกนักหรอก - ไปดูเอ็นทรีนี้ข้างนอก คุณจะพบการเปลี่ยนแปลง อย่างที่คุณกำลังเห็นอยู่ในขณะนี้
ผู้เข้าชมหลายคนอาจจะเพิ่งสังเกตุเห็นว่าธีมของบล็อกนี้ในวันนี้เปลี่ยนไปจากเมื่อวันก่อนๆ
ที่จริงผมไม่ได้เข้าไปเปลี่ยนธีมอะไรใน exteen เลยล่ะครับเพียงแค่ว่าผมมาใส่โค้ดเพื่อเลือก
ใช้ css เพิ่มเข้ามาในเอ็นทรีนี้ และบังเอิญเอ็นทรีนี้แสดงในหน้าแรก ธีมก็เลยเปลี่ยนไปทั้งหมด
เดี๋ยวพอเอ็นทรีนี้หลุดออกไปจากหน้าแรก ธีมก็จะกลับมาเป็นปกติเหมือนเดิม
แต่ถ้ายังคิดถึงธีมเดิมนั้นอยู่ ก็ลองคลิกเข้าไปในเอ็นทรีอื่นสิครับ ธีมของเมื่อวาน
(อันที่จริงก็เป็นของวันนี้ด้วย) จะกลับมาปรากฏเหมือนเดิม เหมือนไม่มีอะไรเกิดขึ้นเลย
สนุกดีไหมครับ?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
หมายเหตุที่ 1:
ที่ผมบอกเกริ่นไว้ว่า มีการปรับโค้ดในไฟล์ css นิดหน่อย นั่นคือการแก้ url ของไฟล์รูปต่าง ๆ ครับ
บางที url ของไฟล์รูปต่าง ๆ ที่ exteen กำหนดมาให้จะไม่เป็น url ในรูปแบบเต็ม เพราะถือเป็นการ
อ้างไฟล์ในเว็บเดียวกันเอง แต่กรณีนี้ ผมย้ายธีมไปเก็บในเว็บอื่นซะแล้ว เพราะฉะนั้น วิธีการอ้างแบบ
ย่อแบบเดิม ๆ ก็จะทำให้เกิดข้อผิดพลาด และทำให้หารูปไม่เจอได้ จึงต้องแก้ไข url ของไฟล์ซะใหม่
เปลี่ยนให้เป็นแบบเต็มครับ
ตัวอย่างเช่น ถ้าของเดิมเขียนอย่างนี้
- background-image: url(/global/theme/predefined/artistry/entrycomment.gif);
เราก็ต้องแก้เป็นอย่างนี้แทน
- background-image: url(http://www.exteen.com/global/theme/predefined/artistry/entrycomment.gif);
หมายเหตุที่ 2:
เมื่อใดที่คุณกลับเข้ามาแก้ไขเอ็นทรีนี้ ถ้าคุณไปคลิกที่ปุ่ม
เพื่อดูซอร์สโค้ดแล้ว
จงอย่าคลิกกับมาในโหมดปกตินะครับ เพราะโค้ดของการเรียก css จะหายไปทันที
ซึ่งคุณต้องแปะโค้ดนี้ใหม่ครับ
- <link rel="stylesheet" href="http://www.fileden.com/files/2007/1/5/597239/css_exteen/style03.css" type="text/css" />
ถ้าจำเป็นต้องคลิกเข้าไปจริง ๆ ก็ให้ Publish ออกไปก่อนที่หน้ารวมเอ็นทรี
แล้วค่อยคลิก edit กลับเข้ามาใหม่ เพื่อทำการแก้ไขต่อครับ
หมายเหตุที่ 3:
ความรู้ทั่วไปเกี่ยวกับนามสกุลของไฟล์สคริปต์
- cssย่อมาจาก Cascaded Style Sheet
- js ย่อมาจาก JavaScript
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
ความสนุกยังไม่จบเพียงแค่นี้ แล้วเจอกันตอนถัดไป ...
edit @ 2007/06/18 21:13:10





