यहाँ कुछ बिट्स हैं जो लागू होते हैं, लेकिन इसकी कमी इस कोड में है customize-preview.js
:
this.body.on( 'click.preview', 'a', function( event ) {
event.preventDefault();
self.send( 'scroll', 0 );
self.send( 'url', $(this).prop('href') );
});
Event.preventDefault लिंक को वास्तव में काम करने से रोकता है। निम्न कोड फिर एक संदेश को यह कहते हुए वापस भेजता है कि) पृष्ठ के शीर्ष पर वापस स्क्रॉल करें और बी) URL बदलें।
यहाँ संदेश भेजने का कारण यह है कि वहाँ केवल एक iframe नहीं है, दो हैं। आपके द्वारा क्लिक किया गया पृष्ठ वास्तव में एक और iframe के अंदर लोड किया जाता है, जिसमें कस्टमाइज़र की सेटिंग्स से इसे जोड़ा जाता है ( POST
वास्तव में) के माध्यम से , फिर एक फीका प्रभाव पुराने एक को फीका करने और नए एक में फीका करने के लिए उपयोग किया जाता है। यह स्क्रीन को व्हाइट और बदसूरत और ब्लिंक करने से रोकता है जब यह नए पेज पर जाता है।
फ़िल्टिंग कोड जैसे विषय कोड और संभावित रूप से पृष्ठ के रूप को संशोधित करने की आवश्यकता को समाप्त करता है। इस प्रकार इस विषय को प्रदर्शित किया जाता है, इसकी सामग्री में महत्वपूर्ण बदलाव के बिना।
फॉर्म सबमिशन को काम करने से रोकने के लिए वहां मौजूद है (यह सिर्फ कुछ नहीं करता है) और इसके बाद।
कस्टमाइज़र मानों को इंटरसेप्ट करने और संभालने का फ़िल्टर है class-wp-customize-setting.php
। preview()
समारोह, फिल्टर भेजे मानों का प्रबंधन करने के लिए आवश्यक कहते _preview_filter()
समारोह है कि फिल्टर है। जब उन्हें संशोधित विकल्प माना जाता है, तो यह केवल कॉल get_option()
या get_theme_mod()
कॉल्स, नोटिस लेता है और बदले हुए मान लौटाता है।
/wp-includes/class-wp-customize-manager.php
...