خرائط مواقع XML وتحسين محركات البحث: ما تحتاج إلى معرفته
نشرت: 2023-08-16تحولت خرائط مواقع XML إلى 18 في يونيو ، وتكريمًا لمقدمتها الكاملة في مرحلة البلوغ ، أقوم بتفصيل كيفية عمل خرائط مواقع XML ، وكيفية إنشاء واحدة ، ولماذا تقدم خرائط مواقع XML عبئًا كبيرًا من مزايا تحسين محركات البحث.
ما هي خريطة موقع XML؟
باختصار ، خريطة موقع XML هي بروتوكول بتنسيق XML يخبر محركات البحث عن عناوين URL الموجودة على موقع الويب المتاح للزحف إليها.
تهدف خرائط مواقع XML إلى مشاركة المعلومات حول كل عنوان URL ، مثل:
- عندما تم تحديثه آخر مرة.
- كم مرة يتغير.
- ما مدى أهمية ذلك فيما يتعلق بعناوين URL الأخرى عبر موقع الويب الخاص بك.
تسمح خرائط مواقع XML لمحركات البحث بالزحف إلى موقع الويب الخاص بك بشكل أكثر كفاءة إذا تم عزل عناوين URL معينة.
إذا كنت محترفًا في تحسين محركات البحث ، فمن المحتمل أنك تستخدم بالفعل خرائط مواقع XML المضمنة في المكون الإضافي Yoast WordPress. ولكن هناك الكثير من الإضافات التي قد تكون في عداد المفقودين.
كيفية بناء خريطة موقع XML ديناميكية
إذا كنت تستخدم WordPress ، فاستغل إضافات تحسين محركات البحث مثل Yoast و RankMath لإنشاء خريطة موقع XML ديناميكية.
إذا كنت لا تستخدم WordPress ، فاتبع هذه الخطوات لإنشاء خريطة موقع XML ديناميكية.
افهم هيكلك الملاحي
اجمع قائمة بجميع عناوين URL الخاصة بنا على موقع الويب وقم بتجميعها لتتماشى مع بنية التنقل وتجميعات المحتوى.
شارك مع فريق التطوير الخاص بك
شارك قائمة عناوين URL المجمعة مع فريق التطوير لديك للحصول على مساعدتهم في إنشاء خريطة موقع XML ديناميكية باستخدام Python أو PHP أو JavaScript.
فيما يلي مثال على كيفية ترميز خريطة موقع XML ديناميكية باستخدام Python:
import xml.etree.ElementTree as ET import datetime # List of URLs (replace these with your actual URLs) urls = [ "https://www.example.com/page1", "https://www.example.com/page2", "https://www.example.com/page3", # Add more URLs here ] # Create the root element urlset = ET.Element("urlset") urlset.set("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9") # Loop through URLs and create URL entries for url in urls: url_elem = ET.SubElement(urlset, "url") loc_elem = ET.SubElement(url_elem, "loc") loc_elem.text = url lastmod_elem = ET.SubElement(url_elem, "lastmod") lastmod_elem.text = datetime.datetime.now().isoformat() changefreq_elem = ET.SubElement(url_elem, "changefreq") changefreq_elem.text = "daily" # You can set this to the desired frequency priority_elem = ET.SubElement(url_elem, "priority") priority_elem.text = "0.5" # You can set this to a value between 0 and 1 # Create the XML tree tree = ET.ElementTree(urlset) # Save the XML to a file tree.write("sitemap.xml", encoding="utf-8", xml_declaration=True)
عند العمل مع المطورين ، استفدت من Flask و Python معًا لإنشاء خريطة موقع XML ديناميكية حقًا تتغير كلما تغير محتوى موقع الويب.
إذا تمكنا من تحديد مسار خريطة الموقع الديناميكي بناءً على محتوى موقع الويب باستخدام وظيفة مثل get_dynamic_urls()
، فيجب أن نكون قادرين على استرداد جميع عناوين URL.
@app.route('/sitemap.xml', methods=['GET']) def sitemap(): urls = get_dynamic_urls() # Replace with your dynamic URL retrieval logic urlset = ET.Element("urlset") urlset.set("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9") for url in urls: url_elem = ET.SubElement(urlset, "url") loc_elem = ET.SubElement(url_elem, "loc") loc_elem.text = url lastmod_elem = ET.SubElement(url_elem, "lastmod") lastmod_elem.text = datetime.datetime.now().isoformat() changefreq_elem = ET.SubElement(url_elem, "changefreq") changefreq_elem.text = "daily" priority_elem = ET.SubElement(url_elem, "priority") priority_elem.text = "0.5" xml_content = ET.tostring(urlset, encoding="utf-8") return xml_content, {'Content-Type': 'application/xml'}
إذا كنت تشارك رمزًا عبر خصائص نطاق متعددة ، فتأكد من ترميز الملفات بشكل صحيح على صفحات HTML الخاصة بك.
على سبيل المثال ، يجب ربط ملفات CSS و JavaScript باستخدام علامتي <link>
و <script>
.
قبل مشاركة الكود عبر المجالات المختلفة ، ستحتاج إلى إنشاء خادم مركزي لاستضافة قواعد خريطة موقع XML المشتركة.
سيكون لديك مراحل متعددة من خريطة موقع XML الديناميكي مع مطوريك حتى يتم تأكيد جميع القواعد.
لا تنس التحقق من أن عناوين URL الديناميكية يتم استردادها بالفعل ودمجها في منطق خريطة الموقع.
تحميل على الخادم الخاص بك
بمجرد ضغط خريطة موقع XML ، قم بتحميل خريطة موقع XML الديناميكية إلى الدليل الجذر لموقع الويب الخاص بك.
أرسل إلى محركات البحث
اسمح لمحركات البحث بالتعرف على خرائط مواقع XML الخاصة بك عن طريق إرسالها من خلال Google Search Console وأدوات مشرفي المواقع من Bing.
الصيانة المستمرة
خريطة موقع XML ليست مجرد تكتيك لكبار المسئولين الاقتصاديين "اضبطه وانساه". من الضروري تحديث خريطة موقع XML الخاصة بك مع تغير موقع الويب الخاص بك.
15 نصيحة يجب وضعها في الاعتبار عند إنشاء خريطة موقع XML
1. خرائط مواقع XML ليست عامل ترتيب
عندما سئل على X (سابقًا Twitter) عما إذا كانت هناك ميزة تصنيف لاستخدام خرائط مواقع XML ، أجاب Gary Illyes من Google:
- "لا ، ليس مباشرًا على أي حال."
2. يمكن لـ Google العثور على صفحاتك بدون خريطة الموقع
لا تحتاج مواقع الويب إلى خريطة موقع إذا كانت صغيرة ومرتبطة بشكل صحيح ، شارك Daniel Waisberg ، Search Advocate في Google ، في فيديو تدريبي لـ Google Search Console.
ومع ذلك ، فقد تبع ذلك بالقول إن خريطة الموقع قد تكون مفيدة بشكل خاص إذا:
- الموقع كبير بالفعل.
- صفحات الموقع معزولة.
- الموقع جديد أو يتغير بسرعة.
أيضًا ، من المهم ملاحظة أن جون مولر من Google ذكر على X (سابقًا Twitter) أن وجود خريطة موقع XML هو "الحد الأدنى من خط الأساس لأي موقع ويب جاد".
3. يتحقق محرك بحث Google لمعرفة ما إذا كان قد تم تغيير خريطة موقع XML قبل إعادة المعالجة
أكد Illyes أن Google تتحقق لمعرفة ما إذا كانت خريطة موقع XML الخاصة بك قد تغيرت قبل أن تهدر الموارد في تحليل ومعالجة الملف مرة أخرى.
وذكر في ساعات مكتب كبار المسئولين الاقتصاديين.
- "بمجرد تغيير شيء ما في ملف Sitemap الخاص بك ، سواء كان ذلك عنصر URL أو آخر تعديل ، سيتم تحليل ملف Sitemap مرة أخرى وإعادة معالجته بشكل عام. هذا لا يعني أنه سيتم الزحف إلى عناوين URL بالتأكيد ، فهي لا تزال تخضع لتقييم الجودة مثل أي عنوان URL آخر. من الجدير بالذكر أيضًا أنه إذا قمت بإزالة عنوان URL من ملف Sitemap لأنه ربما لم يعد موجودًا بعد الآن ، فهذا لا يعني أنه سيتم حذفه تلقائيًا من الفهرس أو حتى يتم منحه الأولوية للزحف حتى يمكن إسقاطه في وقت أقرب ".
4. يمكن لخرائط مواقع XML الحصول على فهرسة أسرع للمحتوى الجديد الخاص بك
أكد Mueller أن إخبار Google بتحديث خريطة موقع XML الخاصة بك يمكن أن يساعد في فهرسة المحتوى الجديد الخاص بك بشكل أسرع.
قال إنه يشاطر:
- "يختلف أمر Ping على ملف sitemap قليلاً عن مجرد توفيره في ملف robots.txt - من خلال اختبار ping ، فأنت تقوم بشكل نشط بالإبلاغ عن تغيير في ملف Sitemap. إذا كنت حريصًا على فهرسة محتوى جديد بسرعة ، فهذه ممارسة جيدة ".
5. يجب أن تكون خرائط مواقع XML بترميز UTF-8
إذا كان ملف Sitemap XML الخاص بك لا يستخدم UTF-8 ، فلن تتمكن محركات البحث من قراءته.
6. احتفظ بحجم الملف أقل من 50 ميغا بايت (غير مضغوط) أو 50000 عنوان URL
هناك حدود لحجم خرائط مواقع XML الخاصة بك. احتفظ بها أقل من 50000 عنوان URL لكل خريطة موقع أو 50 ميغابايت (غير مضغوط).
إذا كان لديك حجم ملف أكبر أو عناوين URL أكثر ، فاستخدم خرائط مواقع XML متعددة.
7. يمكن أن يكون لديك العديد من خرائط مواقع XML
تتيح لك Google إرسال خرائط مواقع متعددة. يمكن أن يكون تقسيم خرائط المواقع إلى أقسام مختلفة من موقع الويب الخاص بك لقياس الأداء مفيدًا.
على سبيل المثال ، إذا كنت تمتلك موقعًا كبيرًا للتجارة الإلكترونية ، فيمكنك تقسيم خرائط مواقع XML حسب نوع المنتج (على سبيل المثال ، أحذية نسائية مقابل أحذية رجالية).
أو ، إذا كانت لديك لغات متعددة ، فقد ترغب في وجود hreflang مرتبط بخريطة موقع XML <loc>.
إذا كانت لديك لغات بديلة ، فلن يتم احتسابها ضمن 50000 عنوان URL كحد أقصى.
أو ، إذا كان لديك الكثير من مقاطع الفيديو أو الصور ، فيمكنك فصل خرائط مواقع XML الخاصة بك إلى ملف Sitemap للفيديو بتنسيق XML وخريطة موقع XML للصور.
لا توجد فائدة للترتيب لامتلاك خرائط مواقع XML متعددة.
8. إذا كان لديك العديد من خرائط مواقع XML ، فتذكر استخدام ملف فهرس خرائط الموقع
إذا كان لديك العديد من خرائط مواقع XML لموقع كبير ، فستحتاج إلى إرسال ملف فهرس خريطة الموقع لإرسال العديد من خرائط المواقع في وقت واحد.
9. يجب أن تكون علامة Lastmod خالية من العيوب
تعد علامة <lastmod>
أحد أهم الأجزاء في خريطة موقع XML.
على سبيل المثال ، تستفيد بياناتي المنظمة من تاريخ <lastmod> لخريطة موقع XML الخاصة بي.
تشير العلامة <lastmod>
أيضًا إلى محركات البحث سواء كنت قد حدّثت محتوى قديمًا أو أطلقت محتوى جديدًا.
أكد مولر ذلك بالقول:
- "... إذا كنت تقوم فقط بتغيير تذييل الطابع الزمني ، فمن المؤكد أن الصفحة قد تغيرت تقنيًا أيضًا ، ولكن يجب إعطاء الأولوية لذلك - ربما لا."
حتى أن Bing اتخذ موقفًا رسميًا من علامة lastmod
في خريطة موقع XML ، حيث قال:
- "بالنسبة إلى خرائط مواقع XML ، تعد علامة" lastmod "واحدة من أهم العلامات التي يمكنك تضمينها في ملف Sitemap."
10. يجب أن تشتمل خرائط مواقع XML فقط على 200 عنوان URL للحالة جميعها ذات عنوان URL متعارف عليه
تذكر أن تحتفظ فقط بعناوين URL الحية ، وحالة 200 ، وقابلة للفهرسة ومتعارف عليها ذاتيًا.
إذا واصلت عرض صفحات 404 أو 301 معاد توجيهها ، فقد تتوقف محركات البحث عن الزحف إلى خريطة موقع XML تمامًا.
رد Mueller على تعليق على X (المعروف سابقًا باسم Twitter):
- "سنتوقف عن جلب ملفات Sitemap إذا كانت عناوين URL غير صالحة ، ولكن إذا كنت تعيد محتوى أو تعيد التوجيه (وهو ما يوصى به نوعًا ما) ، فسنستمر في تجربتها. لا ينبغي أن يتسبب ذلك في حدوث مشكلات ، نظرًا لأن ملفات Sitemap الإجمالية ليست سوى جزء صغير جدًا من جميع عناوين URL التي يتم جلبها من أحد المواقع ".
11. يمكن لمحركات البحث التحقق من خريطة موقع XML يوميًا
شارك Fabrice Canel من Microsoft أن Microsoft تتحقق من خريطة موقع XML يوميًا.
بينما قال Mueller أن Google يتحقق من خريطة موقع XML الخاصة بك بناءً على التردد (يُعرف أيضًا باسم علامة <lastmod>
الخاصة بك).
12. تؤثر سرعة الصفحة بشكل غير مباشر على خريطة موقع XML الخاصة بك
نعلم جميعًا مدى أهمية سرعة الصفحة في جهود تحسين محركات البحث لدينا. ولكن كيف يؤثر موقع الويب بطيء الأداء على خريطة موقع XML الخاصة بك؟
أكد Mueller أن سرعة الصفحة يجب ألا تؤثر على خريطة موقع XML الخاصة بك بالقول:
- "طالما أن الوقت لا ينتهي ، يجب أن تكون على ما يرام. ربما يتم تخزين أحدث إصدار مؤقتًا لمنع التحميل غير الضروري للخادم؟ "
الحقيقة هي أنني عملت على مواقع ويب بطيئة الأداء حيث لا يتم تحميل خريطة موقع XML عندما تزحف محركات البحث إلى موقع الويب مما يتسبب في تقلبات كبيرة في الترتيب.
هناك تأثير غير مباشر على خريطة موقع XML إذا لم يتم تحميل موقع الويب الخاص بك بشكل صحيح.
هذا هو سبب أهمية استخدام ضغط Gzip لتقليل حجم الملف وتسريع أوقات التحميل.
13. قم بإزالة علامة <priority> من خرائط مواقع XML الخاصة بك
قارن إيليس علامة <priority>
في خرائط مواقع XML بـ "كيس من الضوضاء".
لذلك إذا كنت تعتمد على محركات البحث للزحف إلى عناوين URL الخاصة بك في خريطة موقع XML الخاصة بك بناءً على الأولوية ، فستنتظر وقتًا طويلاً.
أوصي بإزالة هذه العلامة من خرائط مواقع XML الخاصة بك.
14. إذا كانت لديك مشكلات في بنية التنقل ، فقم بإقران خريطة موقع XML بخريطة موقع HTML
لطالما كانت هناك مشاعر مختلطة حول خرائط مواقع HTML.
شارك Mueller أن خرائط مواقع HTML "يجب ألا تكون هناك حاجة أبدًا".
هو أكمل:
- "لقد غيرت رأيي بشأن خرائط مواقع HTML على مر السنين ، فلا داعي لها أبدًا. يجب أن تحتوي المواقع الصغيرة والكبيرة دائمًا على بنية تنقل واضحة. إذا كنت تشعر بالحاجة إلى خريطة موقع HTML ، فاقضي الوقت في تحسين بنية موقعك بدلاً من ذلك. تتلاءم ملفات Sitemap بتنسيق HTML في نفس الحاوية مع أزرار تحميل HTML ".
<iframe src="https://mastodon.social/@johnmu/109477617298107922/embed" class="mastodon-embed" width="400" allowfullscreen="allowfullscreen"></iframe><script src="https://mastodon.social/embed.js" async="async"></script>
عند العمل على مواقع ويب كبيرة على مستوى المؤسسة ، غالبًا ما تكون هناك طبقات متعددة من صانعي القرار في بنية التنقل في موقع الويب. وفي كثير من الأحيان ، يتم أخذ أفضل ممارسات تحسين محركات البحث في الاعتبار.
أقوم بإقران كل من خريطة موقع XML الخاصة بي بخريطة موقع HTML حتى أكون واثقًا من التنقل في موقع الويب الخاص بنا والتسلسل الهرمي للارتباط الداخلي.
15. لا تنس تضمين جميع خرائط مواقع XML الخاصة بك في ملف robots.txt الخاص بك
لا تنس تضمين خرائط مواقع XML الخاصة بك (جميعها) كروابط في ملف robots.txt الخاص بك.
هنا مثال:
لا تقلق بشأن المكان الذي يجب أن توضع فيه هذه الملفات في ملف robots.txt. ليس هناك أي تأثير على موقع خريطة موقع XML في ملف robots.txt الخاص بك.
أكد مولر هذا:
خرائط مواقع XML هي مخطط موقع الويب الخاص بك لمحركات البحث
سواء كنت تقوم بتشغيل صفحة ويب جديدة أو مجرد إضافة علامة أساسية إلى صفحة مكررة ، فإن خريطة موقع XML الخاصة بك هي شيء يجب عليك تحديثه على مدار الساعة طوال أيام الأسبوع.
لكن افعل ذلك بحذر.
على الرغم من أنه لا ينبغي أن تكون مصابًا بجنون العظمة ، فإن خريطة موقع XML الخاصة بك هي مخطط منزلك لمحركات البحث.
لذلك لا تنس إرسال خرائط مواقع XML الخاصة بك إلى Google Search Console وأدوات مشرفي المواقع Bing.
الآراء الواردة في هذا المقال هي آراء المؤلف الضيف وليست بالضرورة آراء محرك البحث. مؤلفو طاقم العمل مدرجون هنا.