เอกสาร WordPress สำหรับการกำหนดปลั๊กอินและไดเรกทอรีเนื้อหาระบุว่า:
WordPress ใช้ประโยชน์จากค่าคงที่ต่อไปนี้เมื่อกำหนดพา ธ ไปยังไดเรกทอรีเนื้อหาและปลั๊กอิน ไม่ควรใช้ปลั๊กอินหรือธีมโดยตรง แต่จะแสดงไว้ที่นี่เพื่อความสมบูรณ์
มันจะไปในรายการWP_CONTENT_DIR
และWP_PLUGIN_DIR
ในหมู่ค่าคงที่นักพัฒนาชุดรูปแบบและปลั๊กอินไม่ควรใช้สันนิษฐานว่าเป็นเพราะนี้:
WordPress อนุญาตให้ผู้ใช้วางไดเร็กทอรี wp-content ได้ทุกที่ที่ต้องการดังนั้นคุณต้องไม่สมมติว่าปลั๊กอินจะอยู่ใน wp-content / plugins หรือการอัปโหลดนั้นจะอยู่ใน wp-content / upload หรือธีมนั้นจะอยู่ใน wp- content / themes
Mark Jaquith ยังแสดงความคิดเห็นที่นี่ด้วยว่าไม่ควรใช้ค่าคงที่เหล่านี้:
อย่าใช้ WP_PLUGIN_URL หรือ WP_PLUGIN_DIR - ปลั๊กอินอาจไม่อยู่ในไดเรกทอรีปลั๊กอิน
ดังนั้นวิธีที่ยอมรับของการอ้างอิงพา ธ แบบเต็มไปยังโฟลเดอร์ปลั๊กอินเนื้อหา wp และธีมโดยไม่ใช้ค่าคงที่เหล่านี้คืออะไร
เป็นตัวอย่างง่ายๆในการแสดงเส้นทางแบบเต็มของปลั๊กอินที่ติดตั้งทั้งหมดฉันสามารถทำสิ่งนี้:
<?php
$plugins = get_plugins();
foreach ($plugins as $file => $details) {
echo WP_PLUGIN_DIR . '/' . $file . '<br>';
}
ซึ่งสร้างรายการดังนี้:
/var/www/wp-content/plugins/akismet/akismet.php
/var/www/wp-content/plugins/debug-bar/debug-bar.php
/var/www/wp-content/plugins/hello.php
(ฉันอาจต้องการทำเช่นนี้หากฉันเขียนปลั๊กอินเพื่ออนุญาตให้ผู้ใช้เลือกเก็บถาวรปลั๊กอินเป็นส่วนหนึ่งของการสำรองข้อมูลไซต์เป็นต้น)
หากใช้WP_PLUGIN_DIR
ไม่ถูกต้องตัวเลือกที่แนะนำคืออะไร ไม่มีสิ่งใดเทียบเท่าwp_upload_dir()
สำหรับปลั๊กอินธีมและโฟลเดอร์ wp-content ที่ฉันสามารถค้นหาได้ซึ่งทำให้การอ้างอิงถึงธีมที่อาจหลงทางและไดเรกทอรีรูทปลั๊กอินที่เป็นปัญหา
WP_PLUGIN_DIR
ดังนั้นคำถามของฉันที่นี่