โดยปกติแล้วถ้าเราเขียนบทความขึ้นมาใหม่เลย หรือไม่ได้ใช้ html mode ก็ไม่น่าจะมีปัญหานะครับ แต่ถ้าเกิดเรามีการ import จากที่อื่นหรือมีการใช้สคริป import ข้อมูลเข้าไปเองก็อาจจะมีบ้างที่จะมีการเปิด-ปิดแท็กไม่ครบ แล้วพอเอาไป validate กับ W3C ก็จะไม่ผ่านครับ ^^
เอาล่ะมาดูวิธีแก้กันดีกว่า WordPress เองก็มีฟังก์ชันที่เอาไว้ช่วยจัดการกับปัญหานี้อยู่ครับ คือ balanceTags สิ่งที่เราต้องทำเพิ่มก็แค่เอาไปใช้ครับ โดยเพิ่มฟังก์ชันข้างล่างนี้เข้าไปในไฟล์ functions.php ของธีมที่เราใช้นะครับ
if( !function_exists('fixed_unbalance_tags') ){ function fixed_unbalance_tags($content){ if(!empty($content)){ return balanceTags($content, true); } return ''; } } add_filter('the_content', 'fixed_unbalance_tags');
จากโค้ดข้างบนจะเป็นการเรียกใช้ Hooks ของ WordPress ตอนที่เรียกใช้ฟังก์ชัน the_content ครับ ก่อนที่จะคือค่า (return) เนื้อหาออกไปก็ให้เข้าฟังก์ชัน fixed_unbalance_tags ของเราเพื่อแก้ไขแท็กที่เปิดหรือปิดไม่ครบก่อนครับ