WordPress Permalinks को कैसे handle करता है?


11

WordPress ऑटो पर्मलिंक (URL) को सही करता है, भले ही वह गलत तरीके से दर्ज किया गया हो। उदाहरण के लिए, वर्डप्रेस आपको example.com/some-postयहां तक ​​कि अगर आप दर्ज करते हैं example.com/idontexist/some-postया यहां तक कि आपको लैंड करेंगेexample.com/some

यह हो सकता है कि, वर्डप्रेस RegEx पसंद या कुछ मिलान एल्गोरिथ्म का उपयोग करता है जो दाएं से बाएं की तुलना करता है और यदि यह एक मैच पाता है, तो यह आपको पृष्ठ पर ले जाएगा, भले ही /.*/बाईं ओर बाईं ओर हो। केवल अनुमान है! वर्डप्रेस यह कैसे करता है?

संपादित करें: मैं भी है कि आभासी फ़ाइल / निर्देशिका के लिए .htaccess फाइल चेकों का उपयोग कर देखा !fऔर !dऔर ब्लॉग फ़ोल्डर पर index.php के लिए अनुरोध पुनर्निर्देश।

जवाबों:


6

/Wp-includes/canonical.php में redirect_canonical फ़ंक्शन को किसी भी दिए गए URL पर कॉल किया जाता है और वह उस URL को सर्वोत्तम रूप से अनुमान लगाने का प्रयास करेगा जो उपयोगकर्ता चाहते थे, और जब कोई URL मौजूद नहीं होता है, तो उन्हें पुनर्निर्देशित करें। सभी प्रकार की सामान्य त्रुटियों के लिए ऐसा करने के लिए कोड की एक पूरी विशाल राशि है।


1
"संपूर्ण विशाल राशि" के लिए उत्कीर्ण: डी।
ट्रैविस नॉर्थकट


1

यह बहुत आसान है। जब यह 404 पृष्ठ का होता है तो आंशिक URL से पूर्ण URL का अनुमान लगाने के लिए वर्डप्रेस SQL ​​क्वेरी में LIKE ऑपरेटर का उपयोग करता है

/Wp-includes/canonical.php redirect_guess_404_permalink()फ़ंक्शन से लिए गए इस कोड की जाँच करें

$where = $wpdb->prepare( 'post_name LIKE %s', $wpdb->esc_like( get_query_var( 'name' ) ) . '%' );
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.