คำถามติดแท็ก callbacks

1
วิธีการส่งผ่านข้อโต้แย้งจาก add_settings_field () เพื่อฟังก์ชั่นการโทรกลับ?
ฉันมีฟังก์ชั่นเช่นนี้: add_settings_field( 'contact_phone', 'Contact Phone', 'settings_callback', 'general'); ที่ได้ผล มันเรียก settings_callback เย็น. ปัญหาที่ฉันมีคือ: ฉันไม่ต้องการกำหนดฟังก์ชั่นการโทรกลับสำหรับทุกการตั้งค่าที่ฉันเพิ่มถ้าสิ่งที่ฉันทำคือการสะท้อนสิ่งเล็กน้อย function settings_callback() { echo '<input id="contact_phone" type="text" class="regular-text" name="contact_phone" />'; } ทำไมบนโลกนี้ฉันต้องทำอย่างนั้น? ID คลาสและชื่อทั้งหมดควรเป็นพารามิเตอร์ ไม่มีวิธีการส่งต่อพารามิเตอร์ไปที่ฟังก์ชั่น settings_callback หรือไม่ ฉันเริ่มดูหลักมาที่นี่: http://core.trac.wordpress.org/browser/tags/3.1.3/wp-admin/includes/template.php .. และพบกับ $ wp_settings_fields ทั่วโลก สิ่งนี้กำหนดไว้ที่ไหน?

2
current_shortcode () - ตรวจสอบรหัสย่อที่ใช้ในปัจจุบัน
ในคลาสปลั๊กอินฉันต้องการให้ฟิลด์ง่าย ๆ สำหรับข้อมูลสาธารณะ: อีเมล, หมายเลขโทรศัพท์, Twitter เป็นต้นสามารถขยายรายการได้ ดูปลั๊กอินข้อมูลติดต่อสาธารณะใน GitHub สำหรับรายละเอียด เพื่อให้การใช้งานง่ายขึ้นฉันต้องการเสนอรหัสย่อที่พิมพ์ได้ง่าย: [public_email] [public_phone] [public_something] ข้อแตกต่างเพียงอย่างเดียวคือส่วนที่สอง ฉันไม่ต้องการอาร์กิวเมนต์เพิ่มเติมสำหรับรหัสย่อเนื่องจากข้อผิดพลาดเกิดขึ้นได้ง่าย ดังนั้นฉันลงทะเบียนตัวจัดการรหัสย่อหนึ่งรายการสำหรับฟิลด์ทั้งหมดในคลาสปลั๊กอินของฉัน: foreach ( $this->fields as $key => $value ) { add_shortcode( 'public_' . $key, array( $this, 'shortcode_handler' ) ); } ตอนนี้shortcode_handler()ต้องทราบรหัสย่อที่ถูกเรียก คำถามของฉันคือ: ฉันจะทำเช่นนี้ได้อย่างไร วิธีแก้ปัญหาปัจจุบันของฉันคือฟังก์ชั่นอื่น: protected function current_shortcode() { $backtrace = debug_backtrace( DEBUG_BACKTRACE_IGNORE_ARGS ); return …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.