fbpx
Wordpress Condition Tags

รู้จักแท็กเงื่อนไขของเวิร์ดเพรส (WordPress Conditional Tags)

สวัสดีครับ สำหรับบทความในวันนี้จะต่อจากบทความที่แล้ว ที่คุยเรื่องเกี่ยวกับ WordPress functions นะครับ โดยวันนี้เราจะมาพูดถึงเรื่องแท็กเงื่อนไขของเวิร์ดเพรส (WordPress Conditional Tags) ก่อนที่เราจะเข้าเรื่องเราจะมารู้จักกันก่อนว่าแท็กเงื่อนไขนี้คืออะไร และทำหน้าที่อย่างไรกันครับ

รายละเอียดเนื้อหา

แท็กเงื่อนไขของเวิร์ดเพรส (WordPress Conditional Tags)

แท็กเงื่อนไขนี้เป็นกลุ่มฟังก์ชั่นที่กำหนดเงื่อนไขของ WordPress มีไว้เพื่อใช้ในการตรวจสอบว่าเป็นไปตามเงื่อนไขหรือไม่ในหน้าเทมเพลต โดยจะใช้คู่กับประโยค If else เมื่อเราใช้งาน เราจะสามารถกำหนดได้ว่า เนื้อหาที่เราต้องการจะให้แสดงในหน้าใดตามเงื่อนไขที่เรากำหนดไว้ เช่น ต้องการให้รายการบทความแสดงอยู่ในหน้าแรกเท่านั้น หน้าในไม่จำเป็นต้องแสดงผล เป็นต้น

วิธีการใช้งาน Conditional Tags

ตัวอย่าง การใช้แท็กทดสอบว่าหน้าที่แสดงเป็นหน้าบทความหรือไม่ด้วย แท็ก is_single() ถ้าใช่ให้แสดงหัวข้อประโยค This post title is ชื่อบทความ

เราสามารถใช้ใน functions.php ในกรณีที่อยู่ใน Child Theme ตามตัวอย่างด้านล่าง

ในกรณีที่ต้องการทดสอบหลายคอนดิชั่น เช่น สองแท็กหรือมากกว่านั้นก็สามารถทำได้ เช่น ตรวจสอบว่าเป็นหน้าแรก (Home) หรือหน้าบทความ (Single) หรือไม่ ตามตัวอย่าง

และในกรณีที่ ต้องการทดสอบว่าไม่ใช่ เช่น หากหน้าที่แสดงไม่ใช่หน้า Homepage ตามตัวอย่าง

การระบุค่าใน Conditional Tags

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

  • is_single(‘9’) เป็นแท็กที่ใช้ตรวจสอบหน้าบทความที่แสดงเป็นไอดีที่ 9 หรือไม่ หากใช่ก็ให้ทำต่อไป
  • is_single(‘Cute Dog’) เป็นแท็กที่ใช้ตรวจสอบหน้าบทความที่แสดงชื่อ Cute Dog หรือไม่ หากใช่ก็ให้ทำต่อไป
  • is_single(‘cute-dog’) เป็นแท็กที่ใช้ตรวจสอบหน้าบทความที่แสดงมีสลักชื่อ cute-dog หรือไม่ หากใช่ก็ให้ทำต่อไป
  • is_single(array( ‘beef-stew’, ‘pea-soup’, ‘chili’ )) เป็นแท็กที่ใช้ตรวจสอบว่าหน้าบทความอยู่ในกลุ่ม Array นี่หรือไม่

รายการแท็กคอนดิชั่น (Conditional Tags Lists)

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

หน้าแรกหรือหน้าหลัก (Home Page or Front Page)

is_home() เป็นแท็กเงื่อนไขสำหรับการตรวจสอบว่า หน้าแรกเป็นรายการบทความหรือไม่ ถ้าหน้าแรกถูกตั้งค่าที่ Administration > Settings > Reading เป็น Blog Page ก็จะทำการตรวจเงื่อนไขในส่วนของรายการบทความในหน้าแรก แต่ถ้าหน้าแรกถูกตั้งค่าเป็น Static Page แท็กเงื่อนไขนี้จะถูกใช้ในการตรวจสอบในหน้า Blog ที่เป็นหน้ารายการบทความ (Posts page) ครับ

is_front_page() เป็นแท็กเงื่อนไขที่ใช้สำหรับการตรวจสอบว่าเป็นหน้าแรกหรือไม่เท่านั้นและค่าที่ได้จะเป็นจริงไม่ว่าหน้าแรกจะเป็นแบบรายการบทความ (Your Latest Post) หรือ หน้าคงที่ (Static Page) ทั้งนี้การตั้งค่าหน้าแรกอยู่ตรงในส่วนของ Administration > Settings > Reading

หน้ารายการบทความ (Blog)

is_front_page() and is_home() เป็นแท็กเงื่อนไขที่ใช้สำหรับหน้ารายการบทความ โดยจะต้องใช้ทั้งสองฟังก์ชั่นร่วมกัน ซึ่งรูปแบบคำสั่งนั้นผู้ใช้สามารถระบุได้ว่าหน้าหลักเป็นหน้าแรก และหน้าอื่นเป็นหน้ารายการบทความ ดังตัวอย่าง

หน้าแอดมิน (Administration Panels)

is_admin() เป็นแท็กเงื่อนไขสำหรับตรวจสอบว่าหน้าที่แสดงอยู่เป็นหน้าหน้าแอดมินหรือหลังบ้าน (Dashboard) หรือไม่

is_network_admin() เป็นแท็กเงื่อนไขสำหรับตรวจสอบว่าหน้าที่แสดงอยู่เป็นหน้าแอดมินสำหรับหลายเว็บแบบเครือข่าย (Multisite) หรือไม่

สอน WordPress หรือ WooCommerce
สอน WordPress หรือ WooCommerce

หน้าบทความ (A Single Post Page)

is_single() เป็นแท็กเงื่อนไขสำหรับตรวจสอบว่าหน้าที่แสดงอยู่คือหน้าบทความหรือไม่ แท็กนี้สามารถที่จะใช้การระบุค่าใน Conditional Tags ตามเนื้อหาด้านบน

บทความที่โดนล็อกไว้ (A Sticky Post)

is_sticky() เป็นแท็กเงื่อนไขสำหรับตรวจสอบว่าส่วนที่แสดงอยู่นั้นเป็นส่วนของบทความที่กำหนดล็อกไว้ให้แสดงในหน้าแรกหรือไม่ เราสามารถกำหนดลงลึกไปได้ด้วยว่าเป็นหมายเลขไอดีอะไร เช่น is_sticky(‘17’) เป็นต้น

หน้าหลัก (A PAGE Page)

is_page() เป็นแท็กเงื่อนไขไว้ตรวจสอบว่าหน้าที่แสดงอยู่เป็นหน้าหลักใช่หรือไม่ และสำหรับแท็กนี้สามารถที่จะใช้การระบุค่าใน Conditional Tags ตามเนื้อหาด้านบน

is_page_template() แท็กที่ไว้ตรวจสอบว่ามีหน้าเทมเพลตถูกใช้งานหรือไม่ เราสามารถทำการระบุได้ถึงไฟล์ที่ใช้งานของเทมเพลตนั้นๆ ด้วย เช่น is_page_template(‘about.php’) เป็นการตรวจสอบว่าหน้าที่แสดงใช้เทมเพลต About.php หรือไม่

หน้าหมวดหมู่ (A Category Page)

is_category() สำหรับแท็กหมวดหมู่นี้ใช้ตรวจสอบหน้าแสดงผลว่าเป็นหน้าหมวดหมู่หรือไม่ เราสามารถเขียนเพื่อตรวจสอบทุกหน้าหรือระบุลงไปใน Conditional Tags ตามเนื้อหาด้านบน

หน้าป้ายกำกับ (A Tag Page)

is_tag() เป็นแท็กสำหรับป้ายกำกับไว้ใช้สำหรับตรวจสอบหน้าแสดงผลว่าเป็นหน้าป้ายกำกับหรือไม่ เราสามารถเขียนเพื่อตรวจสอบทุกหน้าหรือระบุใน Conditional Tags ตามเนื้อหาด้านบน

หน้าที่เป็นอนุกรมวิธาน (Taxonomy Page)

is_tax() จะใช้สำหรับส่วนของหน้า Taxonomy Page หรือหน้าหมวดหมู่ที่ถูกสร้างขึ้นมาเฉพาะ โดยจะเป็นการแยกระหว่างหน้าที่เป็น Custom taxonomy กับหน้าที่เป็น Built-in taxonomy ในที่นี้ก็คือหน้าหมวดหมู่ (Category) หน้าป้ายกำกับ (Tag) ออกจากกัน  แท็กนี้สามารถที่จะใช้การระบุค่าใน Conditional Tags ตามเนื้อหาด้านบน

หน้าผู้เขียน (An Author Page)

is_author() เป็นแท็กที่ไว้ใช้ตรวจสอบหน้าที่แสดงผลว่าเป็นหน้าผู้เขียนหรือไม่ แท็กนี้สามารถที่จะใช้การระบุค่าใน Condition Tags ตามเนื้อหาด้านบน

หน้าวัน (A date Page)

เราสามารถตรวจสอบหน้าดังกล่าวว่าเป็นหน้าแสดงผลเป็นรายวัน รายเดือน รายปี ได้ ดังต่อไปนี้

  • is_date() ใช้ตรวจสอบว่าหน้าที่แสดงผลแสดงรายการแบบ วัน เดือน ปี เช่น 13 สิงหาคม 2564 ใช่หรือไม่
  • is_date() ใช้ตรวจสอบว่าหน้าที่แสดงผลแสดงรายการแบบ วัน เดือน ปี เช่น 13 สิงหาคม 2564 ใช่หรือไม่
  • is_year() ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้ารายปีหรือไม่
  • is_month() ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้ารายเดือนหรือไม่
  • is_day() ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้ารายวันหรือไม่
  • is_time() ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นการแสดงผลแบบรายชั่วโมง นาที หรือวินาที หรือไม่
  • is_new_day() ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้าวันใหม่หรือไม่

หน้าคลังเก็บข้อมูล (Any Archive Page)

is_archive() เป็นแท็กที่ไว้ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นคลังเก็บรายการบทความในรูปแบบต่างๆ ไม่วาจะเป็นหมวดหมู่ (Category) ป้ายกำกับ (Tag) หรือหมวดหมู่ที่กำหนดเอง หน้าผู้เขียนและหน้าวัน เดือน ปี

หน้าค้นหา (A Search Result Page)

is_search() เป็นแท็กที่ไว้ใช้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้าผลลัพธ์ของการค้นหาหรือไม่

หน้าค้นหาข้อมูลไม่พบ (A 404 Not Found Page)

is_404() เป็นแท็กที่ไว้ตรวจสอบว่าหน้าที่แสดงผลเป็นหน้าค้นหาข้อมูลไม่พบหรือไม่

หน้าบทความ หน้าคงที่ หน้าเอกสารแนบ และหน้าประเภทเนื้อหาที่กำหนดเอง (A Single Page, a Single Post, and Attachment or Any Other Custom Post Type)

is_singular() เป็นแท็กที่ใช้เพื่อตรวจสอบว่าหน้าที่แสดงนั้นเป็นหน้าบทความ หน้าคงที่ หน้าเอกสารแนบ และหน้าประเภทเนื้อหาที่กำหนดหรือไม่ แท็กนี้สามารถที่จะใช้การระบุค่าใน Conditional Tags ตามเนื้อหาด้านบน

ปรึกษาด้านเว็บไซต์
ปรึกษาด้านเว็บไซต์

การประมวลผลหลัก (Is Main Query)

is_main_query() เป็นแท็กที่ใช้ตรวจสอบว่าการประมวลผล ณ จุดนั้น (Current query) เป็นการประมวลผลหลัก (Main query) หรือไม่ ดังตัวอย่าง

พรีวิว (A Preview)

is_preview() เป็นแท็กใช้ตรวจสอบว่าหน้าที่แสดงเป็นหน้าพรีวิวหรือไม่

ข้อความที่ตัดตอนมา (Has An Excerpt)

has_excerpt() เป็นแท็กที่ใช้ตรวจสอบว่า บทความที่แสดงอยู่นั้นมีส่วนของข้อความที่ตัดตอนมาหรือคำโปรยบทความหรือไม่

แถบด้านข้างไดนามิค (Is Dynamic SideBar)

is_dynamic_sidebar() เป็นแท้กที่ใช้ใช้ตรวจสอบว่า ธีมที่ใช้สนบสนุนแถบด้านข้างแบบไดนามิคหรือไม่

แถบด้านข้างถูกใช้งาน (Is Sidebar Active)

is_active_sidebar() เป็นแท็กที่ใช้ตรวจสอบว่าแถบด้านข้าง (Sidebar) ได้ถูกใช้หรือไม่

วิตเจ็ตถูกใช้งาน (Is Widget Active)

is_active_widget( $widget_callback, $widget_id ) เป็นแท็กที่ใช้ตรวจสอบว่ามี widget ที่มีไอดีตามที่ระบุไว้แสดงในหน้าแรกหรือไม่

ผู้ใช้งานล็อกอิน (Is User Logged in)

is_user_logged_in() เป็นแท็กที่ไว้ใช้ตรวจสอบว่ามีผู้ใช้งานล็อกอินหรือไม่

ปลั๊กอินถูกใช้งาน (An Active Plugin)

is_plugin_active() เป็นแท็กที่ไว้ใช้ตรวจสอบว่าปลั๊กอินมีการเปิดใช้งานหรือไม่

ธีมลูก (A Child Theme)

is_child_theme() เป็นแท็กที่ไว้ใช้ตรวจสอบว่า ได้มีการใช้ Child Theme หรือไม่

รูปหลัก (Has Post Thumbnail)

has_post_thumbnail( $post_id ) เป็นแท็กที่ไว้ใช้ตรวจสอบว่า ในหน้าบทควาที่ระบุมีรูปหลัก (Featured Image) หรือไม่

พรีวิวในหน้าปรับแต่ง (Is Previewd in the Customizer)

is_customize_preview() เป้นแท็กที่ใช้ใช้ตรวจสอบว่า ไซต์ถูกแสดงลักษณะพรีวิวในหน้าปรับแต่งหรือไม่

บทสรุป

แท็ก WordPress ที่เป็น Conditional Tags นั้น หากเรานำมาใช้งานในการเขียนธีมหรือปลั๊กอิน จะมีประโยชน์มาก ทำให้เราสามารถกำหนดให้การแสดงผลเป็นไปตามที่เราต้องการได้ หากสงสัยในแท็กต่างๆ เราก็สามารถทำการค้นหาแท็กนั้นๆ ไปดูตัวอย่างใน WordPress ได้นะครับ ในนั้นจะมีรายละเอียดวิธีการใช้งานให้เห็นภาพชัดขึ้น แต่หากใครยังสงสัยอยู่ก็สามารถติดต่อสอบถามมาได้นะครับ สำหรับบทความนี้ก็ขอจบไว้เพียงเท่านี้ สวัสดีครับ..

บทความนี้มีประโยชน์สำหรับคุณหรือไม่?

ให้คะแนนบทความนี้

คะแนนเฉลี่ย 0 / 5. จำนวนโหวต: 0

ยังไม่มีการให้คะแนนบทความนี้ ลงคะแนนได้เลย!

As you found this post useful...

Follow us on social media!

avatar

นายปิ๊ก


ผู้ก่อตั้งเว็บไซต์ Themevilles.com เป็นอาจารย์สอน WordPress และ WooCommerce ในเว็บคอร์สออนไลน์ Skilllane และรับทำเว็บไซต์ ทำการตลาดออนไลน์ เช่น SEO, Facebook และ LINE


Shares
สมัครสมาชิกเพื่อรับข้อมูลข่าวสาร
Get the latest content first.
Read about Privacy Policy.