วิธีแสดงรหัสโพสต์และเพจในผู้ดูแลระบบ WordPress
เผยแพร่แล้ว: 2015-02-14เป็นครั้งคราวจะสะดวกที่จะทราบ ID ของโพสต์หรือหน้าใน WordPress ใช่ไหม?
ไม่ว่าจะเป็นรหัสย่อ เมื่อตั้งค่าบางอย่างในการตั้งค่าธีม หรืออาจเพียงเพื่อรับลิงก์ด่วน
ไม่ว่าในกรณีใด WordPress ไม่ได้ทำให้ง่ายต่อการค้นหา ID ของโพสต์ วิธีหนึ่งที่จะคว้ามันได้คือไปที่หน้าแก้ไขของโพสต์และดู URL ควรมีลักษณะดังนี้:
https://yourwebsite.com/wp-admin/post.php?post=137171&action=edit
137171 ในตัวอย่างด้านบนคือ ID ของโพสต์ – ตัวระบุหลักในฐานข้อมูล แน่นอนว่าต้องมีวิธีที่ง่ายกว่าในการคิดออกใช่ไหม โชคดีที่มี
- แสดงรหัสโพสต์ด้วย Plugin
- DIY: แสดงรหัสโพสต์ด้วยรหัส
- การเพิ่มคอลัมน์ที่กำหนดเอง
- ค้นหาตะขอที่ใช่
- วาง ID ไว้ด้านหน้า
- บทสรุป
แสดงรหัสโพสต์ด้วย Plugin
ทางออกที่ง่ายที่สุดคือการใช้ปลั๊กอิน คุณปู่คือ Reveal IDs ซึ่งเป็นปลั๊กอินฟรีที่มีการดาวน์โหลดมากกว่า 425,000 ครั้ง
อีกตัวเลือกหนึ่งคือ WPsite Show IDs
ปลั๊กอินทั้งสองทำสิ่งเดียวกัน: แสดง ID ของโพสต์ เพจ ผู้ใช้ หมวดหมู่ การจัดหมวดหมู่แบบกำหนดเอง ประเภทโพสต์ที่กำหนดเอง และอื่นๆ เหตุผลเดียวที่ฉันเอนเอียงไปทาง WPsite Show ID คือรอยเท้า 8Kb Reveal Ids อยู่ที่ประมาณ 311Kb ซึ่งดูจะมากเกินไปสำหรับปลั๊กอินธรรมดาๆ เช่นนี้
DIY: แสดงรหัสโพสต์ด้วยรหัส
หากคุณสนใจวิธีแสดงรหัสโพสต์ด้วยตัวเอง มาดูโค้ดกันเลย
โค้ดด้านล่างควรอยู่ภายในปลั๊กอินหรือไฟล์ฟังก์ชันของธีม หากคุณต้องการสร้างปลั๊กอิน โปรดดูคำแนะนำในการพัฒนาปลั๊กอินสำหรับเทมเพลตอย่างง่าย
ก่อนที่เราจะเริ่มต้น คุณควรสร้างธีมย่อยด้วย ดูคำแนะนำเกี่ยวกับธีมย่อยของเรา หากคุณยังไม่คุ้นเคยกับวิธีสร้างธีมดังกล่าว
การเพิ่มคอลัมน์ที่กำหนดเอง
WordPress มีเครื่องมือที่ยอดเยี่ยมในการแก้ไขรายการโพสต์ของผู้ดูแลระบบ รวมถึงการสร้างคอลัมน์และเนื้อหาของคุณเอง เราจะต้องใช้ตัวกรองเพื่อเพิ่มคอลัมน์และการดำเนินการเพื่อเพิ่มค่า ลองทำแบบทดสอบอย่างรวดเร็วในตารางการโพสต์ปกติ:
นั่นคือทั้งหมดที่เราต้องการ ตัวกรองช่วยให้เราเพิ่มคอลัมน์โดยแก้ไขอาร์เรย์คอลัมน์ คีย์อาร์เรย์ควรเป็นตัวระบุสำหรับคอลัมน์ และค่าจะแสดงเป็นข้อความส่วนหัว
ฟังก์ชันที่เชื่อมโยงกับการกระทำนั้นใช้พารามิเตอร์สองตัว: ชื่อคอลัมน์และรหัสของโพสต์จะปรากฏขึ้น วิธีนี้สมบูรณ์แบบ – เราต้องแน่ใจว่าได้สะท้อน ID เมื่อคอลัมน์กำหนดเองของเราแสดงขึ้น
ฟังก์ชัน "เปิดเผย" เป็นความพยายามของฉันในการเล่นสำนวน ขอโทษด้วย! มีไว้เพื่อเป็นคำนำหน้าสำหรับฟังก์ชันทั้งหมดของเรา เพื่อให้แน่ใจว่าจะไม่ชนกับปลั๊กอินอื่นๆ
กันอย่างรวดเร็ว: สังเกตว่าฉันใช้ 'revealid_id' == $column
อย่างไร ซึ่งดูแปลกๆ ไปหน่อย สิ่งนี้เรียกว่าเงื่อนไข Yoda และเป็นที่นิยมใน WordPress เหตุผลก็คือ หากคุณลืมกำหนดตัวแปร คุณจะไม่ได้รับข้อผิดพลาด PHP ที่ช่องว่างขนาดใหญ่บนหน้าเว็บของคุณ
ค้นหาตะขอที่ใช่
ทั้งสองฟังก์ชันข้างต้นเป็นสิ่งที่เราต้องการ ส่วนที่เหลือของปริศนาคือ ตำแหน่งที่ จะเชื่อมต่อตะขอที่เราใช้กำหนดเป้าหมายโพสต์ปกติเท่านั้นและ ID ของเราจะไม่แสดงขึ้นสำหรับหน้าหรือองค์ประกอบอื่น ๆ
ในความเป็นจริง hooks เหล่านี้เรียกว่า hooks แบบปรับ ได้เนื่องจากอยู่ในชุดมาตรฐาน รูปแบบทั่วไปคือ: manage_[post_type_or_element]_columns
and manage_[post_type_or_element]_custom_column
จากสิ่งนี้ โพสต์ เพจ สื่อ และประเภทโพสต์ที่กำหนดเองควรเป็นเรื่องง่าย เนื่องจากเป็นประเภทโพสต์ทั้งหมด ในการทำให้ ID แสดงขึ้นสำหรับองค์ประกอบทั้งหมดเหล่านี้ คุณสามารถใช้ hooks ต่อไปนี้:

ข้อแม้เล็กน้อยที่นี่: ทุกอย่างยกเว้นโพสต์และหน้าใช้ประเภทโพสต์ ประเภทโพสต์สำหรับโพสต์ในทางเทคนิคคือ "โพสต์" ประเภทโพสต์สำหรับหน้าคือ "หน้า" ด้วยเหตุผลบางอย่าง hooks ใช้รูปพหูพจน์ นี่เป็นเรื่องแปลกของ WordPress เนื่องจากควรเป็นรูปแบบเอกพจน์ ดูสิ แม้แต่แกนหลักของ WordPress ก็ยังไม่สมบูรณ์แบบ
ฉันได้เพิ่มประเภทโพสต์ที่กำหนดเองในนั้น: โครงการ จะทำอย่างไรถ้าคุณต้องการนำไปใช้กับประเภทโพสต์ที่กำหนดเอง ทั้งหมด ในกรณีนั้นคุณสามารถวนรอบสิ่งเหล่านี้ได้อย่างง่ายดายเช่น:
ฉันแนะนำวิธีการเดียวกันนี้เมื่อต้องรับมือกับอนุกรมวิธาน หากต้องการส่งออก ID สำหรับหมวดหมู่เท่านั้น คุณสามารถใช้ manage_edit-link-categories_columns
และ manage_link_categories_custom_column
แต่หากต้องการเพิ่มลงในการจัดหมวดหมู่ทั้งหมด เราจำเป็นต้องใช้ลูปอื่น:
สุดท้ายแต่ไม่ท้ายสุด เรามีผู้ใช้และความคิดเห็น สิ่งเหล่านี้ค่อนข้างตรงไปตรงมาเช่นกัน ลองดูสิ:
วาง ID ไว้ด้านหน้า
การเปลี่ยนแปลงเล็กน้อยนี้ยากกว่าที่คิดเล็กน้อย เมื่อเราเพิ่มคอลัมน์ ID เราจะต่อท้ายอาร์เรย์ที่มีอยู่ซึ่งมีคอลัมน์อื่นๆ ทั้งหมด วิธีแก้ปัญหาดูเหมือนง่ายพอ: เพิ่มไปที่ด้านหน้า เราสามารถทำได้โดยการรวมอาร์เรย์เข้าด้วยกัน แต่ปรากฏว่าช่องทำเครื่องหมายเป็นคอลัมน์แรก เราต้องการ ID ในตำแหน่งที่สอง
เราจะยังคงใช้การผสานอาร์เรย์ แต่เราต้องใช้กลอุบายมากกว่านี้ เราต้องแยกมันออกก่อน อาร์เรย์แรกจะประกอบด้วยช่องทำเครื่องหมาย (องค์ประกอบแรกของอาร์เรย์ดั้งเดิม) อาร์เรย์ที่สองจะมีทุกอย่างอื่น เราจะรวมอาร์เรย์แรกกับอาร์เรย์ที่มี ID ของเราแล้วรวมกับอาร์เรย์ที่สอง รหัสควรทำให้สิ่งนี้ชัดเจนขึ้นมาก:
บทสรุป
ฉันคิดว่านี่เป็นตัวอย่างที่ดีของโมดูลาร์ของ WordPress ครั้งหนึ่งเคยแสดง ID ในผู้ดูแลระบบ (pre-WordPress 2.5) แต่กลับกลายเป็นว่ามีคนไม่มากที่ต้องการ เมื่อคุณลักษณะนี้ถูกลบออก ปลั๊กอินก็ผุดขึ้นเพื่อรองรับผู้ที่ยังต้องการเห็นรหัสโพสต์
การเขียนปลั๊กอินเองทำให้เห็นว่า WordPress เป็นแบบโมดูลาร์และการปรับเปลี่ยนผู้ดูแลระบบนั้นง่ายเพียงใด สามารถใช้วิธีการเดียวกับที่สรุปข้างต้นเพื่อเพิ่มภาพขนาดย่อ ตัวอย่างคำอธิบาย และข้อมูลอื่นๆ ลงในตารางรายการผู้ดูแลระบบ
แท็ก: