अपनी ही साइट ठीक करने से मिले SEO सबक
हमने कुछ दिन अपनी साइट को उसी तरह पढ़ने में लगाए जैसे सर्च इंजन पढ़ता है, और ठीक करने लायक छह बातें मिलीं। हर पेज दो FAQ ब्लॉक घोषित कर रहा था, Google हमारे होमपेज के हीरो के पीछे की सजावटी चमक को थंबनेल बना रहा था, कुछ टेम्पलेट पेज ऐसी खोजों में रैंक कर रहे थे जिनका वे जवाब नहीं देते थे, और साइट का एक नया हिस्सा स्टेजिंग पर हमारे अपने एज द्वारा ब्लॉक हो रहा था। इनमें से कुछ भी नाटकीय नहीं था। फिर भी ये चुपचाप हमारी दृश्यता को नुकसान पहुँचा रही थीं।
एक पैराग्राफ़ में साइट
mythex.ai एक सिंगल-पेज ऐप है, जिसे हम बिल्ड के समय प्रीरेंडर करते हैं: एक स्क्रिप्ट हर रूट पर जाती है, उसके लिए एक स्टैटिक HTML फ़ाइल लिखती है, और पेज का टाइटल, विवरण और स्ट्रक्चर्ड डेटा (JSON-LD ब्लॉक, जो सर्च इंजन को बताता है कि पेज क्या है, देखें स्ट्रक्चर्ड डेटा क्या है) डालती है। नीचे की ज़्यादातर बातें इसी प्रीरेंडर चरण में होती हैं, क्योंकि यही वह HTML है जिसे क्रॉलर असल में पढ़ता है।
1. हर पेज खुद को FAQ पेज बता रहा था
लक्षण। हमारे HTML टेम्पलेट में साइट-व्यापी FAQPage ब्लॉक था, जिसका URL /faq की ओर इशारा करता था। फिर प्रीरेंडर हर पेज का अपना FAQPage ऊपर से जोड़ देता था। इसलिए साइट का हर पेज दो भेजता था, और हमारी गोपनीयता नीति Google को बता रही थी कि वह FAQ पेज है।
यह क्यों मायने रखता है। Google प्रति पेज अधिकतम एक FAQPage अपेक्षित करता है। किसी दूसरी जगह की ओर इशारा करने वाला दूसरा मार्कअप ऐसी चीज़ है जिससे पेज का मार्कअप अनदेखा नहीं, बल्कि कम महत्व वाला माना जा सकता है।
ठीक करना। वैश्विक ब्लॉक हटा दिया गया। अब हर पेज का FAQ मार्कअप एक ही जगह से आता है, /faq सहित, जो प्रश्नों की पूरी सूची से उसे बनाता है। जिन पेजों पर FAQ नहीं हैं, वे अब कोई घोषित नहीं करते, जो ईमानदार जवाब है। और अगर कोई पेज फिर कभी एक से ज़्यादा FAQPage ले, तो प्रीरेंडर बिल्ड विफल कर देता है। जो नियम किसी की याद में रहता है, वह टूट जाता है; जो नियम बिल्ड लागू करता है, वह नहीं टूटता।
2. Google ने हमारे लिए गलत तस्वीर चुनी
लक्षण। सर्च परिणामों में Mythex का थंबनेल हमारे होमपेज के हीरो के पीछे की नरम, धड़कती चमक थी, यानी एक सजावटी बैकग्राउंड इमेज, न कि हमारा शेयर कार्ड।
यह क्यों हुआ। हमने Google को कभी नहीं बताया था कि कौन सी इमेज किसी पेज का प्रतिनिधित्व करती है, इसलिए उसने जो मिली उसे चुन लिया।
ठीक करना। समस्या के दो पहलू थे:
- बताएँ कि इमेज पेज की है। होमपेज में अब एक
WebPageनोड है जिसकाprimaryImageOfPageहमारे शेयर कार्ड की ओर इशारा करता है, और हर प्रीरेंडर किए गए पेज का स्ट्रक्चर्ड डेटा अपनी इमेज रखता है (पेज का शेयर इमेज, या डिफ़ॉल्ट)। - सजावट छिपाएँ। बैकग्राउंड इमेज अब
robots.txtमें अनुमति से बाहर हैं औरnoindex, noimageindexहेडर के साथ दी जाती हैं, ताकि वे इमेज सर्च और थंबनेल से बाहर रहें।
3. सर्च इंजन को हमारा सिर्फ़ लोगो पता था
हमारा Organization मार्कअप में केवल नाम, लोगो और कुछ सोशल लिंक थे, यानी ब्रांडिंग, और कुछ नहीं। सर्च इंजन किसी कंपनी का नॉलेज पैनल रजिस्ट्री जैसे तथ्यों से बनाते हैं, इसलिए हमने अपने ट्रेड लाइसेंस के तथ्य जोड़े: कानूनी नाम, स्थापना की तारीख, संस्थापक और पंजीकृत पता। फ़ोन नंबर जानबूझकर बाहर रखा।
4. टेम्पलेट पेज गलत सवाल का जवाब दे रहे थे
लक्षण। Search Console में तीन टेम्पलेट पेज इम्प्रेशन जुटा रहे थे, पर क्लिक शून्य थे। एक "content strategist portfolio" और उसके रूपों में रैंक कर रहा था, एक "best italian restaurant website design" में, और एक "agile board" के आसपास के समूह में। इनमें से आधी खोजों में "free" शब्द था। पोज़ीशन मध्य-20 से 50 के बीच थीं।
क्यों। हर पेज उस सवाल से अलग सवाल का जवाब दे रहा था जो पूछा गया था। जो व्यक्ति देखना चाहता था कि अच्छा इतालवी रेस्टोरेंट डिज़ाइन कैसा दिखता है, वह एक ऐसे पेज पर पहुँच जाता था जो उसे बिल्डर बेच रहा था।
ठीक करना। इन तीनों में अब खोज के लिए लिखा गया एक सेक्शन है, उत्पाद के लिए नहीं, लोगों के टाइप किए शब्दों में टाइटल और विवरण, और ऐसे FAQ जो उस मार्कअप के लायक हैं जो वे पहले से भेज रहे थे।
उसी कमिट ने एक और शांत समस्या ठीक की। "related templates" ब्लॉक किसी श्रेणी के पहले चार टेम्पलेट लेता था, इसलिए हर portfolio टेम्पलेट उन्हीं चार portfolios की ओर इशारा करता था, और उस श्रेणी के बाकी पेजों पर कोई आंतरिक लिंक नहीं था। हमने इसकी जगह उप-श्रेणी के क्रम में एक रिंग लगा दी: अब हर टेम्पलेट पेज को ठीक चार अंदर और चार बाहर के लिंक मिलते हैं। प्रीरेंडर किया गया HTML अब ये लिंक भी छापता है। पहले ये केवल JavaScript चलने के बाद मौजूद होते थे, जो क्रॉलर कभी न चलाए।
5. नए पेज डिप्लॉय होते ही Bing को बताना
Google IndexNow को नज़रअंदाज़ करता है, यह प्रोटोकॉल है जिससे URL बदलने पर सर्च इंजन को पिंग किया जाता है। Bing, Yandex और Seznam इसका इस्तेमाल करते हैं, और Bing का इंडेक्स ही वह है जिसे ChatGPT सर्च पढ़ता है। जिस AI ऐप बिल्डर को AI असिस्टेंट ढूँढ नहीं सकते, वह एक खास तरह की विफलता है।
स्पष्ट तरीका, यानी हर डिप्लॉय पर पूरा साइटमैप सबमिट करना, वही है जिससे कुंजी थ्रॉटल होती है, और ज़्यादातर डिप्लॉय ऐसा कुछ नहीं बदलते जिसकी सर्च इंजन परवाह करे। इसलिए एक स्क्रिप्ट वह साइटमैप तुलना करती है जो साइट इस समय सर्व कर रही है, उसे ताज़ा बने साइटमैप से मिलाती है, और केवल अंतर सबमिट करती है।
इसे काम करने वाले दो विवरण:
- डिप्लॉय से पहले स्नैपशॉट लें। बेसलाइन नया बिल्ड लाइव होने से पहले लेनी होगी। बाद में "लाइव" साइटमैप पहले ही नया हो चुका होता है और हर डिफ़ खाली आता है।
- अभी केवल नए पेज। हमारे साइटमैप में
lastmodतारीखें नहीं हैं, इसलिए स्क्रिप्ट नए पेजों की घोषणा करती है, बदलावों की नहीं। हर URL पर बिल्ड की तारीख डालने से हर डिप्लॉय पर पूरी साइट बदली हुई दिखती, और ठीक यही स्पैम हम टाल रहे थे।
यह केवल प्रोडक्शन डिप्लॉय पर चलती है और बिल्ड को कभी विफल नहीं करती: जब तक यह चलती है, साइट पहले से लाइव होती है, और सर्च इंजन पिंग के लिए लाल डिप्लॉय ठीक नहीं।
6. हमारे अपने एज ने "not found" कहा
जब हमने /ai पेज लॉन्च किए (इन पर और हर तरह के व्यवसाय के लिए लैंडिंग पेज में), तो स्टेजिंग पर उन सबके लिए "Not found" दिख रहा था, जबकि स्टैटिक होस्ट उन्हें ठीक सर्व कर रहा था।
मार्केटिंग होस्ट के सामने की सर्विस केवल एक अनुमति-सूची वाले पाथ आगे भेजती है; बाकी किसी भी चीज़ पर सीधा 404 मिलता है। /ai नया था और सूची में नहीं था। हमने /ai और /ai/* जोड़े, और एक टेस्ट जोड़ा जो पुष्टि करता है कि वे पास होते हैं। छोटी गड़बड़ी थी, लेकिन ठीक वैसी जिससे नया सेक्शन बिना किसी के ध्यान दिए क्रॉलर के लिए अदृश्य हो जाता है।
हमने क्या सीखा
- वह HTML पढ़ें जो क्रॉलर पढ़ता है। इनमें से ज़्यादातर ब्राउज़र में अदृश्य थीं और प्रीरेंडर की गई फ़ाइल में साफ़ दिखती थीं।
- SEO नियमों को बिल्ड चेक में बदलें। "प्रति पेज एक FAQPage" अब लागू होता है, याद नहीं रखा जाता।
- सर्च इंजन को साफ़ बताएँ कि आप क्या हैं। अगर आप नहीं बताते कि कौन सी इमेज या कौन से तथ्य आपका प्रतिनिधित्व करते हैं, तो वे अंदाज़ा लगाएँगे।
- Search Console बताता है कि लोगों ने कौन सा सवाल पूछा। बिना क्लिक के इम्प्रेशन आमतौर पर इसका संकेत हैं कि पेज ने कोई और सवाल का जवाब दिया।
- सब नहीं, केवल अंतर सबमिट करें। केवल बदला हुआ पिंग करने से आप रेट लिमिट के सही पक्ष में रहते हैं।
अगर आप यही काम अपनी बनाई साइट के लिए कर रहे हैं, तो AI से बनी वेबसाइटों के लिए SEO और Google Search Console सेट करना की गाइड बुनियादी बातें बताती हैं।