ในขณะที่ฉันมักจะใช้include
หรือเป็นrequire
ของตัวเองเพื่อบันทึกการบำรุงรักษาโค้ดระยะยาวฉันเริ่มใช้งานget_template_part
และการlocate_template
ใช้เวิร์ดเพรสในตัวเป็นสิ่งที่ดีที่สุดเสมอ
คำถามของฉันคือคุณควรจะสามารถส่งผ่านตัวแปรไปยังผลลัพธ์ของอย่างใดอย่างหนึ่งget_template_part
หรือlocate_template
?
<?php
$var = get_option( 'my-custom-option' );
get_template_part( 'custom-template-part' );
?>
ในโค้ดด้านบน$var
จะถูกพิมพ์ภายในเทมเพลตที่กำหนดเอง แต่ตัวแปรดูเหมือนจะไม่ทำงาน ฉันทำอะไรบางอย่างขาดหายไปหรือพฤติกรรมนี้เป็นสิ่งที่คาดหวัง
ฉันพบว่าพวกเขาไม่ผ่านในตัวอย่างด้านบนหรือเมื่อใช้ locate_template
<?php
locate_template( 'custom-template-part.php', true );
?>