मुख्य समस्या लापता स्क्रिप्ट हैं। इसमें लिपिबद्ध स्क्रिप्ट _WP_Editors::enqueue_scripts()
कभी नहीं छपी हैं। उसी के लिए सच है _WP_Editors::editor_js()
।
तो आपको यह करना होगा कि आपके AJAX कॉलबैक हैंडलर में। मैंने एक डेमो प्लगइन लिखा है और इसे GitHub: T5 AJAX संपादक पर रखा है ।
नाम का एक वर्ग है Ajax_Editor
। इसकी विधि render()
AJAX अनुरोधों पर संपादक को प्रिंट करती है।
public function render()
{
if ( ! $this->validator->is_valid( TRUE ) )
die( 'nope' );
wp_editor( $this->data->get(), $this->editor_id, $this->settings );
\_WP_Editors::enqueue_scripts();
print_footer_scripts();
\_WP_Editors::editor_js();
die();
}
सटीक आदेश महत्वपूर्ण है, die()
अंत में मत भूलना । क्या काम नहीं करता है अभी तक मीडिया अपलोड है। मुझे एक जावास्क्रिप्ट त्रुटि मिलती है जब मैं उसे शामिल करने की कोशिश करता हूं।
ध्यान दें कि कॉलिंग print_footer_scripts();
आपको अपेक्षित से अधिक देगा: कुछ प्लगइन्स (उदाहरण के लिए क्वेरी मॉनिटर) अपनी स्क्रिप्ट को AJAX अनुरोधों के लिए भी पंजीकृत करते हैं, भले ही उन्हें वहां उनकी आवश्यकता न हो।