1 मिलियन बार डाउनलोड किए जाने के बाद, Yoast प्लगइन द्वारा वर्डप्रेस एसईओ द्वारा WordPress के लिए अब तक का सबसे अच्छा और सबसे पूर्ण एसईओ प्लगइन है। हालांकि उसने हमें अतीत में कोई समस्या नहीं दी है, कुछ उपयोगकर्ताओं के लिए यह एक दर्द है। हाल ही में हमारे ग्राहकों में से एक ने Yoast के WordPress एसईओ प्लगइन द्वारा उत्पन्न उनके साइटमैप के लिए 404 त्रुटि प्राप्त करने के मुद्दे पर भाग लिया। कुछ चीजों की कोशिश करने के बाद, हम समाधान का पता लगाने में सक्षम थे। इस लेख में, हम आपको दिखाएंगे कि Yoast द्वारा वर्डप्रेस एसईओ प्लगइन में साइटमैप 404 त्रुटि कैसे ठीक करें
अद्यतन: यह महत्वपूर्ण है कि आप समझते हैं कि यह समस्या खराब कोडित विषय फ़ंक्शन या प्लगइन के कारण होने की संभावना है। Yoast का प्लगइन हमारी साइटों पर ठीक काम करता है बस इस बारे में बहुत स्पष्ट होना चाहता था
सबसे पहले आप को कोशिश करनी चाहिए अपनी .htaccess फ़ाइल खोलने (आप वास्तव में वर्डप्रेस एसईओ प्लगइन से कर सकते हैं> फाइल विकल्प संपादित करें) और बस वहां निम्नलिखित कोड जोड़ें:
# वर्डप्रेस एसईओ - एक्सएमएल साइटमैप पुनर्लेखन फिक्सरीवरइटइन्गइन ऑन रीव्रेटबेस / रिवेराइटियम ^ sitemap_index.xml $ /index.php?sitemap=1 [एल] पुनर्लेखन नियम ^ ([^ /] +?) - साइटमैप ([0-9] +)। Xml $ /index.php?sitemap=$1&sitemap_n=$2 [एल] # END वर्डप्रेस एसईओ - एक्सएमएल साइटमैप रीइर्रेट फिक्स
अधिकांश लोगों के लिए इस समस्या को तय किया किसी ने बताया कि इस कोड ने इस मुद्दे को तय करते समय पृष्ठ अभी भी 404 प्रतिक्रिया शीर्षक भेज रहा था जिसका मतलब है कि Google वेबमास्टर्स उपकरण इसे नहीं खोज सके। हमारे ग्राहक के मामले में अच्छी तरह से, ऊपर दिए गए समाधान ने इस मुद्दे को ठीक नहीं किया।
जबकि प्राथमिकता नहीं है, समस्या को ठीक करने के लिए कोर प्लगइन फ़ाइलों को संपादित करने के लिए हमारे पास कोई विकल्प नहीं था। जैसा कि हजजेज द्वारा सुझाव दिया गया, हमने इसे संपादित किया वर्ग-sitemaps.php “/wp-content/plugins/wordpress-seo/inc/class-sitemaps.php” में स्थित
आपको फ़ंक्शन init () कोड को देखने की आवश्यकता है और उस अनुभाग को इस प्रकार देखो:
/ ** * साइटमैप आरंभ करें Sitemap rewrite नियम और क्वेरी var जोड़ें * / फ़ंक्शन इनिट () { वैश्विक $ wp_rewrite; $ ग्लोबल ['wp'] -> एड_क्वेरी_वार ('साइटमैप'); $ ग्लोबल्स ['wp'] -> एड_क्वेरी_वार ('साइटमैप_एन'); add_rewrite_rule ('sitemap_index.xml $', 'index.php? साइटमैप = 1', 'शीर्ष'); add_rewrite_rule ('([^ /] +?) - साइटमैप ([0-9] +)। xml $', 'index.php? sitemap = $ matches [1] और sitemap_n = $ matches [2]', 'top '); $ Wp_rewrite-> flush_rules (); }
मूल रूप से हम जो कर रहे हैं वह वैश्विक $ wp_rewrite जोड़ रहा है; पहले से ही सब कुछ पहले और कोड के बाद flush_rules जोड़ने से पहले इस प्लगइन में जोड़कर, यह हमारे ग्राहक की वेबसाइट पर 404 अंक को ठीक करने के लिए लगता है। हमें नहीं पता क्यों Yoast डिफ़ॉल्ट रूप से ऐसा नहीं कर रहा है , लेकिन ऐसा लगता है कि काफी कुछ उपयोगकर्ताओं को इस साइटमैप 404 समस्या हो रही है। इस मुद्दे को टिप्पणियों में समझाया गया है।
अद्यतन करें: जैसा कि हमारे कुछ उपयोगकर्ताओं ने रिपोर्ट किया है कि उपरोक्त सुधार को लागू करने के बाद, उन्हें यॉट के एसईओ प्लगइन में साइटमैप विकल्प को अनचेक करने और उनकी सेटिंग्स बचाने की आवश्यकता है। उसके बाद साइटमैप के विकल्प को फिर से जांचने के बाद उनके लिए त्रुटि तय हुई।
यदि आप इस मुद्दे की तलाश कर रहे थे, तो हम आशा करते हैं कि इस फिक्स ने आपकी मदद की है।