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

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


ลักษณะของเงื่อนไขเบื้องต้น

โดยทั่วไปแล้วเงื่อนไขสำหรับการแสดงผลของ Blogger นั้นจะมีลักษณะคือ
<b:if cond='เงื่อนไข'>
คำสั่ง
</b:if>


ความหมายคือ
ถ้าหน้าที่ผู้เข้าชมกำลังเปิดอยู่นั้นตรงกับ 'เงื่อนไข' ที่เลือกไว้
ก็จะเกิดการทำงานตาม คำสั่ง ที่เรากำหนด


ประเภทของเงื่อนไขที่ทำงานเมื่อตรงตามสิ่งที่เราระบุ

มีผลคือคำสั่งเหล่านั้นจะทำงานก็ต่อเมื่อ ระบบตรวจสอบแล้วพบว่าเงื่อนไข 'ตรง' กับสิ่งที่เราเลือกไว้ ซึ่งมีหลายชนิดดังนี้

1. Index (list) pages
ทำงานเมื่อเปิดรายการบทความ รวมทั้งการเปิดหน้าแรก  การเข้าใช้ป้ายกำกับและคลังบทความของบล็อก
<b:if cond='data:blog.pageType == "index"'>

2. Post (item) pages
ทำงานเมื่อเปิดเนื้อหาบทความแบบเต็ม
<b:if cond='data:blog.pageType == "item"'>

3. Static pages
ทำงานเมื่อเข้าสู่หน้าเว็บอิสระของบล็อก
<b:if cond='data:blog.pageType == "static_page"'>

4. Archive pages
ทำงานเมื่อเข้าสู่คลังบทความของบล็อก
<b:if cond='data:blog.pageType == "archive"'>

5. Homepage
ทำงานเมื่อเปิดหน้าแรก
<b:if cond='data:blog.url == data:blog.homepageUrl'>

6. Specific page/URL
ทำงานเมื่อ URL ตรงตามระบุ
<b:if cond='data:blog.url == "PUT_URL_HERE"'>

7. Post and static pages
ทำงานเมื่อเปิดเนื้อหาบทความแบบเต็มหรือเข้าสู่หน้าเว็บอิสระ
<b:if cond='data:blog.url == data:post.url'>

8. Label-search pages
ทำงานเมื่อเลือกใช้ป้ายกำกับ
<b:if cond='data:blog.searchLabel'>

9. First post
ทำงานเมื่อเป็นบทความอันแรก
<b:if cond='data:post.isFirstPost'>


ประยุกต์ให้เงื่อนไขทำงานก็ต่อเมื่อไม่ตรงตามสิ่งที่ระบุ

มีผลคือคำสั่งเหล่านั้นจะทำงานก็ต่อเมื่อ ระบบตรวจสอบแล้วพบว่าเงื่อนไข 'ไม่ตรง' กับสิ่งที่เราเลือกไว้
ทำได้โดยเปลี่ยนจากโค้ดในบรรทัดกำหนดเงื่อนไขจาก == ให้เป็น != เช่น

ให้คำสั่งนั้นทำงานเมื่อ 'เปิด' เนื้อหาบทความแบบเต็ม เขียนว่า
<b:if cond='data:blog.pageType == "item"'>
คำสั่ง
</b:if>


ให้คำสั่งนั้นทำงานเมื่อ 'ไม่ได้เปิด' เนื้อหาบทความแบบเต็ม
หรือก็คือคำสั่งจะทำงานในหน้าอื่นๆ ทั้งหมดแต่ยกเว้นเฉพาะขณะเปิดบทความแบบเต็ม เขียนว่า
<b:if cond='data:blog.pageType != "item"'>
คำสั่ง
</b:if>



เงื่อนไขที่สลับการทำงานเมื่อต่างจากสิ่งที่ระบุ

ทำได้โดยใช้ <b:else/> คั่นระหว่างคำสั่ง
มีผลคือถ้าคำสั่งที่อยู่เหนือ <b:else/> ไม่ทำงานก็จะให้คำสั่งที่อยู่ใต้อ <b:else/> ทำงานแทน

ตัวอย่างเช่น
<b:if cond='data:blog.pageType == "item"'>
คำสั่งที่ 1
<b:else/>
คำสั่งที่ 2
</b:if>
ความหมายคือเมื่อเปิดหน้าเนื้อหาบทความแบบเต็มจะทำให้ 'คำสั่งที่ 1' ทำงาน แต่เมื่ออยู่ในหน้าอื่นๆ จะทำให้ 'คำสั่งที่ 2' ทำงานแทน


Credit: http://tip.maxlayout.com/2012/11/targeting-specific-pages-urls-with-conditional-tags.html

0 ความคิดเห็น:

แสดงความคิดเห็น

 
Thaisite66 © 2013. All Rights Reserved. Powered by Blogger
Top