सुलभता के लिए AJAX के कंट्रोल वाली साइटें डिज़ाइन करना

कई वेबसाइट के मालिकों को यह समझ आ गया है कि साइट पर उपयोगकर्ता के अनुभव को बेहतर बनाने के लिए AJAX का इस्तेमाल क्यों करना चाहिए. AJAX की मदद से डाइनैमिक पेज बनाए जा सकते हैं जो कारगर वेब ऐप्लिकेशन के तौर पर काम करते हैं. हालांकि, फ़्लैश की तरह ही, अगर टेक्नोलॉजी को ध्यान से लागू न किया जाए, तो AJAX सर्च इंजन के लिए साइट को इंंडेक्स करने का काम मुश्किल बना सकता है. AJAX के साथ सर्च इंजन से जुड़ी दो समस्याएं हैं: यह पक्का करना कि सर्च इंजन बॉट आपका कॉन्टेंट देख सकते हैं. साथ ही, यह पक्का करना कि सर्च इंजन बॉट आपके नेविगेशन को देख सकते हैं और उसको फ़ॉलो कर सकते हैं.

Googlebot एचटीएमएल लिंक की बनावट को अच्छे से समझ सकता है, लेकिन उसे ऐसी साइटों के साथ मुश्किल हो सकती है जो नेविगेशन के लिए JavaScript का इस्तेमाल करती हैं. हम JavaScript को समझने के लिए लगातार काम कर रहे हैं, लेकिन ऐसी साइट बनाने के लिए जिसे Google और दूसरे सर्च इंजन क्रॉल कर सकें, अपने कॉन्टेंट के एचटीएमएल लिंक दें.

सुलभता के लिए डिज़ाइन

हम चाहते हैं कि वेबसाइट के मालिक सिर्फ़ सर्च इंजन के लिए ही नहीं बल्कि उपयोगकर्ताओं के लिए भी पेज बनाएं. अपनी AJAX साइट को डिज़ाइन करते समय, अपने उपयोगकर्ताओं की ज़रूरतों के बारे में सोचें. साथ ही, उनके बारे में भी सोचें जो JavaScript वाले ब्राउज़र का इस्तेमाल शायद न करते हों. उदाहरण के लिए, वे लोग जो स्क्रीन रीडर या मोबाइल डिवाइस का इस्तेमाल करते हैं. अपनी साइट की सुलभता को जांचने का सबसे अच्छा तरीका यह है कि आप अपने ब्राउज़र में उसकी झलक देख लें और उस समय JavaScript को बंद रखें या फिर उसको सिर्फ़ टेक्स्ट वाले ब्राउज़र, जैसे कि Lynx में देखें. किसी साइट को सिर्फ़ टेक्स्ट के रूप में देखने से आपको ऐसे कॉन्टेंट को पहचानने में भी मदद मिल सकती है जिसे Googlebot आसानी से न देख सकता हो, जैसे कि इमेज या फ़्लैश में एम्बेड किया गया टेक्स्ट.

iFrames इस्तेमाल करने से बचें – या उनके कॉन्टेंट को अलग से लिंक करना

ऐसा हो सकता है कि iFrames के ज़रिए दिखाया गया कॉन्टेंट इंडेक्स न किया गया हो और Google के खोज नतीजों में दिखने के लिए उपलब्ध न हो. हमारा सुझाव है कि आप कॉन्टेंट दिखाने के लिए, iFrames का इस्तेमाल न करें. अगर आप फिर भी iFrames का इस्तेमाल करते हैं, तो पक्का करें वहां जो कॉन्टेंट दिख रहा है उसके लिए अतिरिक्त टेक्स्ट वाले लिंक उपलब्ध हों, ताकि Googlebot इस कॉन्टेंट को क्रॉल और इंडेक्स कर सके.

परतदार वृद्धि के साथ डेवलप करना

अगर आप बिल्कुल शुरूआत से साइट बनाने जा रहे हैं, तो एक अच्छा तरीका यह है कि अपनी साइट के स्ट्रक्चर और नेविगेशन को सिर्फ़ एचटीएमएल का इस्तेमाल करके बनाएं. इसके बाद, एक बार जब आपकी साइट के पेज, लिंक, और उसका कॉन्टेंट एक जगह इकट्ठा हो जाए, तो आप उसके दिखने के तरीके और इंटरफ़ेस को AJAX के साथ बेहतर बना सकते हैं. इससे Googlebot, एचटीएमएल के साथ बेहतर तरीके से काम कर पाएगा. इतना ही नहीं, मॉडर्न ब्राउज़र का इस्तेमाल करने वाले उपयोगकर्ता AJAX के फ़ायदों का इस्तेमाल कर सकते हैं.

बेशक, आपके पास JavaScript वाले ऐसे लिंक होंगे जिनकी मदद से AJAX काम कर सके. वेब डेवलपर जेरमी कीथ ने इस तकनीक को Hijax का नाम दिया है. इस तकनीक की मदद से AJAX और स्टैटिक लिंक एक साथ काम कर पाते हैं.

अपने लिंक बनाते समय, उन्हें कुछ इस तरह फ़ॉर्मैट करें कि वे स्टैटिक लिंक के साथ-साथ किसी JavaScript फ़ंक्शन के साथ भी काम कर सकें. इस तरीके से आपके पास JavaScript के उपयोगकर्ताओं के लिए AJAX का फ़ंक्शन होगा. साथ ही, जो उपयोगकर्ता JavaScript का इस्तेमाल नहीं करते हैं वे स्क्रिप्ट को अनदेखा कर सकते हैं और सीधे लिंक पर जा सकते हैं. उदाहरण के लिए:

<a href="ajax.htm?foo=32" onClick="navigate('ajax.html#foo=32');
 return false">foo 32</a>

ध्यान दें कि स्टैटिक लिंक के यूआरएल में फ़्रैगमेंट (#foo=32) की जगह पर पैरामीटर (?foo=32) होता है. AJAX कोड इस पैरामीटर का इस्तेमाल करता है. यह इसलिए अहम है, क्योंकि सर्च इंजन, यूआरएल पैरामीटर को तो समझते हैं, लेकिन फ़्रैगमेंट को अक्सर अनदेखा कर देते हैं. अब आप स्टैटिक लिंक उपलब्ध करा रहे हैं, इसलिए उपयोगकर्ता और सर्च इंजन उस कॉन्टेंट से लिंक कर सकते हैं जिसके बारे में वे बताना या जिसे शेयर करना चाहते हैं.

हम लगातार क्रॉल करने की प्रक्रिया को बेहतर बना रहे हैं, फिर भी एचटीएमएल लिंक आपकी साइट के स्ट्रक्चर को समझने में हमारी (और दूसरे सर्च इंजन, मोबाइल डिवाइस और उपयोगकर्ताओं की) मदद करते हैं.

गाइडलाइन का पालन करना

यहां दी गई सलाह के अलावा, हम आपको वेबमास्टर गाइडलाइन देखने की भी सलाह देते हैं. इससे आप Google और उपयोगकर्ताओं के लिए अपनी साइट को बेहतर बनाने के बारे में ज़्यादा जानकारी पा सकते हैं. गाइडलाइन में स्नीकी JavaScript रीडायरेक्ट के साथ-साथ कुछ और चीज़ों के बारे में भी बताया गया है जिनसे बचना चाहिए. भले ही आप अपने उपयोगकर्ताओं को उनकी ज़रूरतों के हिसाब से अलग-अलग अनुभव उपलब्ध कराते हैं, लेकिन इस बात का ध्यान रखें कि कॉन्टेंट हमेशा एक जैसा होना चाहिए. उदाहरण के लिए, मान लें कि हमने वीज़ के हैम्सटर फ़ार्म के लिए एक पेज तैयार किया है. पेज के सबसे ऊपर एक शीर्षक "वीज़ का हैम्सटर फ़ार्म" है और उसके नीचे आने वाले नए हैम्सटर का स्लाइडशो है. यह स्लाइडशो AJAX से चलता है. अगर उस पेज पर JavaScript को बंद कर दिया जाता है, तो उपयोगकर्ता को वहां दिखने वाले इस टेक्स्ट से चौंकाना नहीं चाहिए:

वीज़ का हैम्सटर फ़ार्म -- हैम्सटर, सबसे अच्छे हैम्स्टर, सस्ते हैम्सटर, मुफ़्त हैम्सटर, पालतू जानवर, फ़ार्म, हैम्सटर फ़ार्मर, नाचने वाले हैम्सटर, चूहे, हैम्पस्टर, हैम्सर, सबसे अच्छे हैम्सटर, पालतू जानवरों के लिए खिलौने, डांसिंग लेसन, प्यारे, हैम्सटर ट्रिक, पालतू जानवरों का खाना, हैम्सटर की रहने की जगह, हैम्सटर के होटल, हैम्सटर के जन्मदिन पर देने के लिए गिफ़्ट के सुझाव वगैरह!

इससे बेहतर तरीका यह होगा कि उसी टेक्स्ट को दिखाया जाए, फिर चाहे JavaScript चालू हो या नहीं. इतना ही नहीं, जो उपयोगकर्ता JavaScript का इस्तेमाल नहीं करते उनको स्लाइडशो का एचटीएमएल वर्शन भी उपलब्ध कराया जा सकता है. न दिखने वाले टेक्स्ट के बारे में ज़्यादा जानकारी.