วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (2024)

หวังว่าคุณสามารถใช้รหัสย่อของ WordPress ในไฟล์เทมเพลตธีมหรือดำเนินการผ่าน PHP ได้หรือไม่? ทำให้เป็นจริงด้วยฟังก์ชัน do_shortcode รหัสย่อยังคงมีบทบาทสำคัญในระบบนิเวศของ WordPress แม้ว่าเลื่อนไปทางเครื่องมือแก้ไขบล็อก (AKA Gutenberg).การใช้วงเล็บและข้อความ เช่น [yourshortcode] จะทำให้คุณสามารถฝังเนื้อหาและทำงานต่างๆ ได้อย่างมีประสิทธิภาพ

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (2)

ทั้งหมดนี้ฟังดูดี แต่คุณไม่สามารถวางโค้ดในธีมเทมเพลตของคุณได้เพราะมันจะไม่ทำงาน คุณจะต้องเพิ่มโค้ดพิเศษเพื่อให้ใช้งานได้ และมีหลายสิ่งที่ต้องพิจารณาอ่านต่อเพื่อเรียนรู้วิธีการทำงานและแนวทางปฏิบัติที่ดีที่สุดที่สำคัญอื่นๆ สำหรับการใช้รหัสย่อของ WordPress ในไฟล์เทมเพลตของคุณ

  • WordPress do_shortcode ทำงานอย่างไร

  • ตัวอย่าง WordPress do_shortcode
  • การแก้ไขปัญหาเมื่อ WordPress do_shortcode ไม่ทำงาน
  • การใช้ WordPress do_shortcode มีความเสี่ยงหรือไม่?
  • เริ่มต้นใช้งาน WordPress do_shortcode

WordPress do_shortcode ทำงานอย่างไร

ด้วยฟังก์ชัน do_shortcode คุณสามารถรวมรหัสย่อของคุณในฟังก์ชัน do_shortcode PHP และใช้ฟังก์ชันนั้นเพื่อเพิ่มรหัสย่อลงในไฟล์เทมเพลตของไซต์ของคุณได้โดยตรง

คุณสามารถใส่รหัสย่อที่ใดก็ได้บนเว็บไซต์ของคุณ รวมถึงตำแหน่งต่อไปนี้:

  • หัวข้อ
  • ส่วนท้าย
  • เทมเพลตเดี่ยว (เช่น. โพสต์บล็อกเดียว)
  • เทมเพลตการเก็บถาวร (เช่น. หน้าที่แสดงรายการโพสต์ในบล็อกทั้งหมดของคุณ)

หากต้องการใช้งาน สิ่งที่คุณต้องทำคือเพิ่มรหัสสั้นลงในฟังก์ชัน do_shortcode ของ WordPress ดังนี้:

จากนั้นคุณสามารถเพิ่มฟังก์ชันนี้ลงในไฟล์เทมเพลตของคุณได้โดยตรง หรือคุณสามารถใช้ตะขอของ WordPress เพื่อแทรกลงในตำแหน่งเฉพาะได้

ไม่แน่ใจว่ามันทำงานอย่างไร? ลองดูตัวอย่าง

ตัวอย่าง WordPress do_shortcode

เพื่อช่วยให้คุณเข้าใจวิธีการทำงานของฟังก์ชัน do_shortcode เรามาดูตัวอย่างจริงกัน

สมมติว่าคุณสร้างแบบฟอร์มด้วยปลั๊กอิน WPFormsและตอนนี้คุณต้องการฝังแบบฟอร์มนั้นลงในไฟล์เทมเพลตของธีมของคุณโดยตรงโดยใช้ do_shortcode

ต่อไปนี้เป็นวิธีดำเนินการ

1. สำรองข้อมูลไซต์ของคุณและเลือกธีมลูก

เนื่องจากคุณจะต้องแก้ไขไฟล์เทมเพลตของคุณโดยตรงในตัวอย่างนี้ จึงจำเป็นต้องทำสองสิ่งก่อนที่จะเริ่ม:

  1. สำรองข้อมูลไซต์ WordPress ของคุณในกรณีที่มีอะไรผิดพลาดเกิดขึ้น
  2. ตรวจสอบให้แน่ใจว่าใช้ธีมลูก หากคุณไม่ทำเช่นนั้น การเปลี่ยนแปลงเทมเพลตของคุณจะถูกเขียนทับในครั้งถัดไปที่คุณอัปเดตธีมของคุณอ่านคู่มือฉบับเต็มของเราเกี่ยวกับธีมย่อยของ WordPressหากคุณไม่แน่ใจว่าต้องทำอะไรที่นี่

เมื่อคุณทำเสร็จแล้ว คุณก็พร้อมที่จะเริ่มต้น

2. เตรียมรหัสย่อของคุณ

ในการเริ่มต้น คุณจะต้องเตรียมรหัสย่อที่คุณจะใช้

สำหรับตัวอย่าง WPForms ของเรา คุณสามารถค้นหารหัสย่อได้ในอินเทอร์เฟซ WPForms

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (3)

2. แก้ไขไฟล์เทมเพลต

ถัดไป คุณต้องแก้ไขไฟล์เทมเพลตที่คุณต้องการรวมรหัสย่อของคุณ สำหรับตัวอย่างนี้ สมมติว่าคุณต้องการเพิ่มแบบฟอร์มด้านล่างโพสต์และหน้าบล็อกทุกรายการ

เพื่อให้บรรลุผลดังกล่าว คุณจะต้องค้นหาธีมของคุณsingle.phpแม่แบบ หากต้องการเพิ่มรหัสสั้นด้านล่างเนื้อหา คุณจะต้องเพิ่มฟังก์ชัน do_shortcode ด้านล่างฟังก์ชัน the_content ในไฟล์เทมเพลต

คุณสามารถทำการแก้ไขผ่านโปรแกรมแก้ไขธีมในตัวของ WordPress โดยไปที่ลักษณะที่ปรากฏ → ตัวแก้ไขธีม. หรือสามารถเชื่อมต่อผ่านทางไคลเอนต์ FTPและแก้ไขไฟล์ด้วยวิธีนั้น

3. เพิ่มฟังก์ชัน do_shortcode ของ WordPress

หากต้องการเสร็จสิ้น เพียงเพิ่มฟังก์ชัน do_shortcode โดยมีรหัสย่ออยู่ภายในในตำแหน่งที่ถูกต้อง อย่าลืมสะท้อนฟังก์ชัน do_shortcode ไม่เช่นนั้น คุณจะไม่เห็นเอาต์พุตที่ส่วนหน้า

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (4)

พอบันทึกการเปลี่ยนแปลงแล้ว คุณจะเห็นผลลัพธ์ของ shortcode ในตำแหน่งที่คุณเพิ่มฟังก์ชัน นี่คือลักษณะที่ปรากฏจากตัวอย่างของเราและธีมเริ่มต้น Twenty Twenty-One

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (5)

หากทุกอย่างทำงานได้ดี แสดงว่าคุณทำเสร็จแล้ว หากคุณประสบปัญหากับ WordPress do_shortcode ไม่ทำงาน ให้ไปยังส่วนถัดไปเพื่อดูขั้นตอนการแก้ไขปัญหา

การแก้ไขปัญหาเมื่อ WordPress do_shortcode ไม่ทำงาน

หากคุณประสบปัญหากับ WordPress do_shortcode ไม่ทำงาน ต่อไปนี้เป็นขั้นตอนการแก้ไขปัญหาเบื้องต้นที่ควรพิจารณา

1. สะท้อนรหัสย่อ

โดยตัวมันเอง WordPress do_shortcode เพียงแค่ส่งคืนค่า หากคุณต้องการแสดงผลลัพธ์ของรหัสย่อ คุณจะต้องสะท้อนฟังก์ชัน do_shortcode

หากคุณสังเกตเห็นในตัวอย่าง do_shortcode ของ WordPress ด้านบน เราแน่ใจว่าได้สะท้อนฟังก์ชัน do_shortcode เพื่อแสดงค่าเสมอ

2. ตรวจสอบอีกครั้งว่าคุณใช้เครื่องหมายคำพูดอย่างถูกต้อง

หากคุณพบข้อผิดพลาด PHP หลังจากเพิ่มรหัสย่อด้วย do_shortcode อาจเป็นปัญหากับเครื่องหมายคำพูดที่คุณใช้อยู่

รหัสย่อบางตัวให้คุณเพิ่มพารามิเตอร์ภายในรหัสย่อได้ ซึ่งอาจทำให้เกิดปัญหาได้หากคุณทำผิดกับเครื่องหมายคำพูดที่คุณใช้

ตัวอย่างเช่น สมมติว่าคุณต้องการเพิ่มรหัสย่อดังนี้:

[contact-form-7 id="44" title="แบบฟอร์มติดต่อหลัก"]

รหัสย่อมีเครื่องหมายคำพูดคู่อยู่แล้ว ดังนั้น หากคุณพยายามใช้เครื่องหมายคำพูดคู่สำหรับฟังก์ชัน do_shortcode คุณก็มีแนวโน้มที่จะทำให้เกิดข้อผิดพลาด

การแก้ไขปัญหา? เพียงใช้เครื่องหมายคำพูดเดี่ยวสำหรับฟังก์ชัน PHP

นี่คือผิดวิธีการทำ — สังเกตว่ารหัสย่อนั้นอยู่ในเครื่องหมายคำพูดคู่ด้านนอกอย่างไร:

echo do_shortcode("[รูปแบบการติดต่อ-7 id="44" title="แบบฟอร์มการติดต่อหลัก"]");

นี่คือถูกต้องวิธีดำเนินการ — สังเกตว่าตอนนี้รหัสย่อถูกรวมไว้ในเครื่องหมายคำพูดเดี่ยวอย่างไร ในขณะที่ยังคงมีเครื่องหมายคำพูดคู่อยู่ในรหัสย่อ:

echo do_shortcode('[contact-form-7 id="44" title="แบบฟอร์มการติดต่อหลัก"]');

3. ยืนยันว่าคุณใช้รหัสย่อที่ถูกต้อง

สิ่งนี้อาจดูชัดเจน แต่จริงๆ แล้วอาจยุ่งยากเล็กน้อย ปลั๊กอินบางตัวจะใช้ไวยากรณ์รหัสย่อที่เหมือนกันทุกประการ แต่ใช้สิ่งต่าง ๆ ที่แตกต่างกันเล็กน้อย ดังนั้นจึงไม่ใช่รหัสย่อของ WordPress จริงๆ

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

การใช้ WordPress do_shortcode มีความเสี่ยงหรือไม่?

ฟังก์ชั่น do_shortcode ของ WordPress มีประโยชน์มากเมื่อคุณมีเพียงรหัสสั้นและคุณต้องการวิธีเพิ่มลงในเทมเพลตหรือโค้ด PHP

โดยทั่วไปคุณควรพยายามหลีกเลี่ยงการใช้มันเมื่อเป็นไปได้

ทำไมคุณควรหลีกเลี่ยงมัน?

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

ทางเลือก WordPress do_shortcode

1. ใช้ฟังก์ชัน PHP หากมีให้

ปัจจุบันนี้ ปลั๊กอินจำนวนมากให้ทั้งรหัสย่อและฟังก์ชัน PHP เป็นตัวเลือกการฝัง เมื่อคุณมีทั้งสองตัวเลือกนี้ คุณควรเลือกใช้ฟังก์ชัน PHP แทนฟังก์ชัน do_shortcode ของ WordPress เสมอ ไม่มีความซับซ้อนเพิ่มเติมและจะช่วยปรับปรุงประสิทธิภาพและประสิทธิภาพของไซต์ของคุณ

2. ค้นหาฟังก์ชันโทรกลับของรหัสย่อ

หากปลั๊กอินไม่มีฟังก์ชัน PHP และคุณต้องการหลีกเลี่ยงการใช้ do_shortcode ด้วยเหตุผลด้านประสิทธิภาพ ก็ยังมีตัวเลือกอื่นๆ ให้เลือก อย่างไรก็ตาม โซลูชันเหล่านี้อาจมีความซับซ้อน หากคุณต้องการความเรียบง่าย ควรใช้ do_shortcode ต่อไป

แทนที่จะใช้รหัสย่อและ do_shortcode คุณสามารถค้นหาฟังก์ชันโทรกลับของรหัสย่อได้ ฟังก์ชันนี้เป็นฟังก์ชัน PHP จริงที่จะดำเนินการเมื่อใช้รหัสย่อ จากนั้นคุณสามารถสะท้อนฟังก์ชันนี้แทนการใช้ do_shortcode

อย่างไรก็ตาม มีข้อเสียอยู่สองประการ:

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

สำหรับปลั๊กอินที่เรียบง่ายกว่านั้น คุณสามารถค้นหาฟังก์ชันโทรกลับได้โดยไม่ยากเกินไป สำหรับตัวอย่างนี้ สมมติว่าคุณต้องการใช้รหัสย่อจากปีปัจจุบันและปลั๊กอินรหัสย่อลิขสิทธิ์.

นี่เป็นวิธีที่ง่ายที่สุดในการดำเนินการนี้:

  1. ดาวน์โหลดปลั๊กอินและแตกไฟล์ zip เพื่อให้คุณสามารถเข้าถึงไฟล์ทั้งหมดของปลั๊กอินได้อย่างง่ายดาย
  2. ใช้ซอฟต์แวร์ที่ช่วยให้คุณสามารถค้นหาไฟล์ทั้งหมดในโฟลเดอร์นั้นได้ Notepad ++ เป็นตัวเลือกฟรีที่มั่นคงทำให้ง่ายต่อการทำเช่นนี้.
  3. ค้นหารหัสย่อที่คุณวางแผนจะใช้ในฟังก์ชัน do_shortcode ของ WordPress

คุณควรเห็นสิ่งนี้:

add_shortcode( 'cy', 'jr_cy_cy' );

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (7)

ในตัวอย่างนี้:

  • [cy] คือรหัสย่อ
  • jr_cy_cy() เป็นฟังก์ชันจริงที่ shortcode เรียกใช้

ด้วย do_shortcode คุณจะนำไปใช้ในลักษณะนี้:

echo do_shortcode( '[cy]' );

แต่ตอนนี้คุณมีฟังก์ชันการโทรกลับแล้ว คุณสามารถใช้ฟังก์ชันนี้ได้โดยตรงดังนี้:

เสียงสะท้อน jr_cy_cy();

คุณได้รับผลเช่นเดียวกัน แต่คุณได้ลดงานที่เว็บไซต์ของคุณต้องทำลง

เริ่มต้นใช้งาน WordPress do_shortcode

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

แม้ว่า do_shortcode จะใช้งานง่าย แต่ก็ควรหลีกเลี่ยงทุกครั้งที่เป็นไปได้ เนื่องจากการเรียกใช้ฟังก์ชัน PHP โดยตรงนั้นเป็นมิตรต่อประสิทธิภาพมากกว่า หากปลั๊กอินมีทั้งรหัสย่อและฟังก์ชัน PHP ให้จัดลำดับความสำคัญโดยใช้ฟังก์ชัน PHP แม้ว่าจะไม่มีฟังก์ชัน PHP คุณก็อาจค้นหาและใช้ฟังก์ชันโทรกลับที่เกี่ยวข้องได้โดยตรง

หาก do_shortcode เป็นวิธีเดียวที่ได้ผล ให้ยึดถือไว้ ลองใช้เพื่อเพิ่มความยืดหยุ่นเมื่อทำงานกับไฟล์เทมเพลต

หัวข้อ: เว็บไซต์เวิร์ดเพรส

As an expert and enthusiast, I have a deep understanding of various topics, including WordPress and its functionalities. I can provide information and insights on how to use WordPress shortcodes in theme template files and execute them via PHP. Let's dive into the concepts mentioned in the article you provided.

WordPress Shortcodes

WordPress shortcodes are a way to embed dynamic content or perform specific tasks within your WordPress website. They are represented by brackets and text, such as [yourshortcode]. Shortcodes are commonly used to add functionality to posts, pages, widgets, and other areas of a WordPress site.

The do_shortcode Function

The do_shortcode function is a built-in WordPress function that allows you to execute a shortcode within your theme template files or PHP code. By wrapping your shortcode in the do_shortcode function, you can add the shortcode directly to your site's template files.

To use the do_shortcode function, you need to follow these steps:

  1. Place the shortcode inside the do_shortcode function.
  2. Echo the do_shortcode function to display the output on the frontend.

Here's an example of how to use the do_shortcode function in your template files:

<?php echo do_shortcode('[your_actual_shortcode]'); ?>

You can add this function directly to your template files or use WordPress hooks to insert it at specific locations, such as the header, footer, single templates, or archive templates.

Troubleshooting When do_shortcode Is Not Working

If you encounter issues with the do_shortcode function not working, here are a few troubleshooting steps you can take:

  1. Echo the shortcode: The do_shortcode function returns a value, but to display the output of the shortcode, you need to echo the do_shortcode function.

  2. Check quotation marks: When using shortcodes with parameters, ensure that you're using the correct quotation marks. If you're experiencing a PHP error after adding a shortcode with do_shortcode, it might be due to an issue with the quotation marks used. Make sure to use single quotes for the PHP function and double quotes inside the shortcode.

  3. Confirm the correct shortcode: Double-check that you're using the correct shortcode. Some plugins may use similar syntax but implement it differently, making it incompatible with the do_shortcode function. Ensure that the shortcode you're using is recognized as a valid WordPress shortcode.

Risks of Using do_shortcode

While the do_shortcode function can be useful for adding shortcodes to template files, it's generally recommended to avoid using it when possible due to performance considerations. When you use do_shortcode, WordPress needs to process all existing shortcodes on a page, including default WordPress shortcodes, theme shortcodes, and plugin shortcodes. This can impact the performance and efficiency of your site.

To mitigate these risks, consider the following alternatives:

  1. Use the PHP function if provided: Many plugins offer both a shortcode and a PHP function as embed options. When available, prioritize using the PHP function instead of do_shortcode for improved performance and efficiency.

  2. Find the shortcode's callback function: If a plugin doesn't provide a PHP function and you want to avoid using do_shortcode for performance reasons, you can try to locate the shortcode's callback function. The callback function is the actual PHP function executed when the shortcode is used. By echoing the callback function directly, you can achieve the same effect as using do_shortcode. However, finding the callback function may require technical expertise and can be more complex, especially if it's inside an object class.

It's important to note that these alternatives may not be applicable in all cases, and using do_shortcode is still a valid approach when no other options are available or feasible.

I hope this information helps you understand how to use WordPress shortcodes in theme template files and execute them via PHP. If you have any further questions, feel free to ask!

วิธีใช้ WordPress do_shortcode: บทช่วยสอนและแนวทางปฏิบัติที่ดีที่สุด (2024)

References

Top Articles
Latest Posts
Article information

Author: Terrell Hackett

Last Updated:

Views: 6128

Rating: 4.1 / 5 (52 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Terrell Hackett

Birthday: 1992-03-17

Address: Suite 453 459 Gibson Squares, East Adriane, AK 71925-5692

Phone: +21811810803470

Job: Chief Representative

Hobby: Board games, Rock climbing, Ghost hunting, Origami, Kabaddi, Mushroom hunting, Gaming

Introduction: My name is Terrell Hackett, I am a gleaming, brainy, courageous, helpful, healthy, cooperative, graceful person who loves writing and wants to share my knowledge and understanding with you.