คู่มือเริ่มต้นสำหรับ PHP ใน WordPress
เผยแพร่แล้ว: 2013-03-24WordPress ใช้รหัสประเภทต่างๆ เพื่อเรียกใช้ซอฟต์แวร์
PHP, CSS, HTML และ Javascript เป็น 4 ภาษาโค้ดที่แตกต่างกันซึ่งคุณจะพบได้ในไฟล์ WordPress หลัก
PhP เป็นโค้ดที่ทรงพลังที่สุดที่รันไฟล์ WordPress หลัก ปลั๊กอินใดๆ ที่คุณติดตั้ง และธีมที่ใช้งานของคุณ
PHP มีประโยชน์มากกว่าฟังก์ชันแบบกำหนดเองมากมาย อย่างไรก็ตาม ฟังก์ชันแบบกำหนดเองนั้นใช้กันอย่างแพร่หลายในการปรับแต่งและออกแบบไซต์ WordPress
จะใส่โค้ด PHP ได้ที่ไหน
คุณสามารถวางโค้ด php ของคุณลงในไฟล์เทมเพลตธีมลูกของคุณโดยตรง หรือในไฟล์ functions.php ของธีมของคุณ
อีกวิธีหนึ่งคือการติดตั้งปลั๊กอิน hook เช่น Genesis Simple Hooks ซึ่งมีประโยชน์หากคุณต้องการเพิ่มโค้ด HTML, Text หรือ PHP เพียงไม่กี่บรรทัดในตำแหน่งเฉพาะที่ธีมของคุณใช้ hooks
เมื่อเพิ่มโค้ด PHP ลงในตำแหน่ง hook โดยใช้ปลั๊กอิน ตรวจสอบให้แน่ใจว่าคุณใส่ PHP ในการเปิดและปิดแท็ก PHP ตัวอย่าง:
<?php echo "Output Text Using PHP in a Themes Hook Locations"; ?>
เพื่อหลีกเลี่ยงไม่ให้ไฟล์เทมเพลตของคุณเต็มไปด้วยโค้ดและเก็บโค้ดทั้งหมดไว้ในที่เดียว แนวทางปฏิบัติที่ดีที่สุดในการสร้างธีมย่อยและเพิ่มไฟล์ฟังก์ชันสำหรับโค้ดที่กำหนดเองทั้งหมดของคุณ
วิธีนี้จะทำให้การเข้ารหัสแบบกำหนดเองทั้งหมดของคุณไม่สูญหายเมื่อคุณอัปเดตเฟรมเวิร์กธีมหลักหรือไฟล์หลักของ WordPress
การเปิดและปิดแท็ก PHP
โค้ด PHP ขึ้นต้นด้วย <?php และลงท้ายด้วย ?> . เสมอ
หากคุณกำลังวางโค้ด PHP ในไฟล์เทมเพลต คุณจะต้องเพิ่มแท็กเปิดและปิด PHP เหล่านี้เสมอ
การพิจารณาการเพิ่ม PHP ลงในไฟล์ของคุณโดยตรงไม่ใช่แนวทางปฏิบัติที่ดีที่สุด คุณไม่จำเป็นต้องเพิ่มแท็กเหล่านี้ในทุกบล็อกของโค้ดที่คุณเขียนในไฟล์ฟังก์ชันของคุณ เหตุผลก็คือ ไฟล์ฟังก์ชันของคุณจะมีแท็ก PHP เปิดอยู่ที่จุดเริ่มต้นแล้ว และบางครั้งก็อยู่ที่ส่วนท้ายของไฟล์ด้วย ขึ้นอยู่กับว่าธีมของคุณถูกเข้ารหัสอย่างไร
คุณเพียงแค่เพิ่มโค้ด PHP หลังแท็กเปิด PHP
จะเพิ่มโค้ด PHP ของคุณได้ที่ไหน
ตัวอย่างของไฟล์ฟังก์ชันธีมพาเรนต์:
ภาพหน้าจอด้านบนแสดงส่วนไฟล์ฟังก์ชันธีม Woo ซึ่งคุณสามารถใช้เพื่อเพิ่มโค้ด php ที่กำหนดเองสำหรับฟังก์ชันที่กำหนดเองได้ ธีม Woo มีเฟรมเวิร์ก Woo ในทุกธีม ในขณะที่ธีมย่อยของ StudioPress สร้างขึ้นจากเฟรมเวิร์กแยกต่างหากที่ชื่อว่า Genesis
ธีมย่อย เช่น ข้อเสนอของ StudioPress รวมถึงไฟล์ functions.php สำหรับการเข้ารหัสแบบกำหนดเอง วิธีนี้ทำให้คุณไม่จำเป็นต้องเพิ่มหรือแก้ไขโค้ด PHP ในธีมหลักหรือเฟรมเวิร์กของธีม ซึ่งในกรณีนี้คือ Genesis
คุณยังสามารถใช้ตัวแก้ไขไฟล์ในตัวที่อยู่ใต้แท็บลักษณะที่ปรากฏของคุณในแดชบอร์ดของคุณได้ อย่างไรก็ตาม นี่ไม่ใช่แนวทางปฏิบัติที่ดีที่สุด
การแก้ไขโค้ด PHP
เลือกตัวแก้ไขข้อความ/โค้ดที่คุณชื่นชอบและสำรองไฟล์ที่คุณกำลังแก้ไขอยู่เสมอในกรณีที่คุณทำผิดพลาด
การแสดงข้อความโดยใช้ PHP
หากคุณต้องการพิมพ์ข้อความโดยใช้โค้ด php คุณต้องเขียนโค้ดดังนี้:
<?php echo "Howdy Folks!"; ?>
echo ใช้เมื่อคุณต้องการพิมพ์ข้อความและรหัสนี้จะส่งออกข้อความ Howdy Folks!
แต่รหัสจะส่งออกข้อความที่ไหน
หากคุณวางโค้ดนี้ใน functions.php ของธีมของคุณ รหัสจะแสดงข้อความที่ด้านบนสุดของทุกหน้าในเว็บไซต์ของคุณ
หากคุณวางโค้ดในตำแหน่งเฉพาะในไฟล์เทมเพลตเฉพาะ เช่น footer.php โค้ดจะแสดงข้อความในส่วนท้ายของคุณ ไม่เพียงเท่านั้น ข้อความนี้จะแสดงทุกครั้งที่โหลดหน้า
วิธีที่ดีกว่าในการพิจารณาว่าเมื่อใดควรรันโค้ดเพื่อแสดงผลข้อความคือการใช้ฟังก์ชัน
และวิธีที่ดีกว่าในการระบุตำแหน่งที่ข้อความของคุณจะแสดง คือการใช้ WordPress hooks และยิ่งไปกว่านั้น ธีมของคุณก็เกี่ยวพัน
การพิจารณาว่าการเพิ่มโค้ด PHP ลงในไฟล์เทมเพลตของคุณไม่ใช่วิธีที่มีประสิทธิภาพในการใช้โค้ด PHP เพื่อปรับแต่งเอง คุณจะต้องเพิ่มโค้ดนี้ในฟังก์ชันและรวมเบ็ดเพื่อระบุตำแหน่งที่แน่นอนที่เนื้อหาของคุณแสดงในธีมของคุณ
อันดับแรก มาดูการใช้ฟังก์ชันพื้นฐานแบบกำหนดเอง แล้วดูว่าจะใช้ตะขอใดเพื่อระบุตำแหน่งที่ข้อความของคุณจะแสดง
ฟังก์ชั่น
เราจะเขียนฟังก์ชันแบบกำหนดเองขั้นพื้นฐานเพื่อรันโค้ดที่แสดงผลข้อความเมื่อหน้าเว็บโหลดในเบราว์เซอร์ เฉพาะเมื่อมีการเรียกใช้ฟังก์ชันนี้เท่านั้น
ขั้นตอนแรกคือการสร้างฟังก์ชันที่กำหนดเองและตั้งชื่อที่อธิบายว่าฟังก์ชันนั้นจะทำอะไร
function your_custom_function_name() { echo "Howdy Folks!"; }
ชื่อฟังก์ชัน
function display_welcome_text() { echo "Howdy Folks!"; }
ตอนนี้เราได้ตั้งชื่อฟังก์ชันแบบกำหนดเองแล้ว เราต้องการเลือกตำแหน่งที่จะแสดง (ส่งออก) ข้อความต้อนรับในธีมของเรา
คุณสามารถรันโค้ด PHP ได้ทุกที่ในธีมของคุณโดยใช้ hooks
ประการแรก เราจะเพิ่มเบ็ด WordPress ที่ทำงานในธีมใดก็ได้เพื่อแสดงข้อความต้อนรับในส่วนท้าย
เบ็ดที่ WordPress ใช้สำหรับส่วนท้ายคือ wp_hook ดังนั้นสิ่งที่เราต้องทำตอนนี้คือเพิ่มลงในโค้ด
ในการเพิ่ม hook ให้กับโค้ด เราใช้ add_action
add_action( 'wp_footer', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }
รหัสนี้จะทำงานในธีมใดก็ได้เพราะใช้เบ็ด WordPress แต่ถ้าธีมของคุณใช้ตะขอของตัวเองเช่น Genesis หรือ Woo
จะทำอย่างไรถ้าคุณไม่ต้องการให้ข้อความแสดงในส่วนท้าย
จะทำอย่างไรถ้าคุณต้องการให้แสดงข้อความก่อนหรือหลังเนื้อหาโพสต์ของคุณ
จากนั้นคุณต้องใช้ตะขอที่เหมาะสมกับธีมของคุณ
รหัสนี้แสดงข้อความต้อนรับก่อนเนื้อหาโพสต์เมื่อใช้ธีม Woo
add_action( 'woo_post_before', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }
รหัสนี้แสดงข้อความต้อนรับหลังเนื้อหาเมื่อใช้ธีมลูก Genesis จาก StudioPress
function display_welcome_text() { echo "Howdy Folks!"; } add_action( 'genesis_after_content', 'display_welcome_text' );
ตกลง แต่ข้อความยังแสดงบนหน้าเก็บถาวร เช่น หน้าแรกหรือหน้าบล็อก แล้วเราจะกรองข้อมูลนั้นได้อย่างไร
เราเพิ่มแท็กเงื่อนไข
คุณสามารถดูตัวอย่างโค้ดโดยใช้แท็กแบบมีเงื่อนไขสำหรับผู้ใช้ Woo Theme และผู้ใช้ธีมย่อยของ Genesis
นี่คือตัวอย่างหนึ่ง:
add_action( 'genesis_after_content', 'display_welcome_text' ); function display_welcome_text() { if (is_single() && is_active_sidebar( 'after-post' ) ) { echo "Howdy Folks!"; }}
รหัสนี้จะแสดงข้อความธรรมดาของคุณในโพสต์เดียวทั้งหมดหลังจากเนื้อหาโพสต์
ทำไมเราใช้วงเล็บปีกกาปิด 2 อัน?
เนื่องจากเราต้องจบทั้งฟังก์ชันแบบกำหนดเองและคำสั่งแบบมีเงื่อนไข
การพัฒนารหัสท้องถิ่น
ติดตั้ง WordPress ในเครื่องโดยใช้ instantwp สำหรับ Windows หรือ MAMP สำหรับผู้ใช้ Mac
วิธีนี้จะทำให้คุณทำผิดพลาดได้มากเท่าที่จำเป็นเพื่อเรียนรู้วิธีเขียนโค้ด PHP จนกว่าจะได้ผล
การแสดงโค้ด PHP ใน WordPress
จากประสบการณ์ของฉัน วิธีที่ดีที่สุดในการแสดงและจัดเก็บข้อมูลโค้ด PHP คือการใช้บริการออนไลน์ฟรี เช่น Github Gists
อ่านเพิ่มเติมเกี่ยวกับการแสดงโค้ด PHP ใน WordPress