سيو المتاجر الإلكترونية

متجر بالعربية والإنجليزية: ضبط lang وdir وhreflang

18 أكتوبر 2026 ·قراءة في 5 دقائق · Read in English

المتجر ثنائي اللغة يحتاج أن يخبر المتصفحات ومحركات البحث بأمرين في كل صفحة. الأول: لغة الصفحة واتجاه كتابتها، عبر الخاصيتين lang وdir في وسم <html>. والثاني: مكان الصفحة نفسها باللغة الأخرى، عبر وسوم hreflang (وسوم تربط النسخ اللغوية للصفحة ببعضها)، حتى تعرض جوجل الصفحة العربية لمن يبحث بالعربية والإنجليزية لمن يبحث بالإنجليزية. إذا غابت هذه الوسوم أو كانت خاطئة، فقد تظهر الصفحات العربية من اليسار إلى اليمين، وقد تعرض جوجل للباحث لغة غير لغته، وفي أسوأ الحالات قد تخرج الصفحة العربية من جوجل تمامًا إذا كان وسم canonical فيها يشير إلى النسخة الإنجليزية.

كيف تتحقق

  1. افتح مصدر صفحة عربية. يجب أن يحمل وسم <html> القيمة lang="ar" (أو ar-SA) مع dir="rtl". وفي الصفحة الإنجليزية توقّع lang="en" مع dir="ltr" أو دون dir.
  2. ابحث في <head> عن hreflang. يجب أن تذكر كل نسخة نفسها وكل النسخ الأخرى بروابط مطلقة كاملة، وأن تذكر النسخة الأخرى المجموعة نفسها بالمقابل.
  3. تأكد أن وسم canonical (الرابط الأساسي) في كل نسخة يشير إلى النسخة نفسها، لا إلى اللغة الأخرى.
  4. تأكد أن زر تبديل اللغة رابط عادي (<a href="…">)، لا زر يعمل بـ JavaScript فقط، فجوجل لا تتتبع إلا عناصر <a> التي تحمل href.
  5. تأكد أن خريطة الموقع تضم النسختين.
  6. شغّل الفحص المجاني: يتحقق «فحص المتجر — أحمد فايد» من lang وdir، ومن رموز hreflang وتبادلها بين النسخ، ومن وسم canonical بين اللغتين، وروابط تبديل اللغة، وتغطية خريطة الموقع.

الكود الصحيح

<html lang="ar" dir="rtl">
<head>
  <link rel="canonical" href="https://example.com/ar/products/oud">
  <link rel="alternate" hreflang="ar" href="https://example.com/ar/products/oud">
  <link rel="alternate" hreflang="en" href="https://example.com/en/products/oud">
  <link rel="alternate" hreflang="x-default" href="https://example.com/en/products/oud">
</head>

الصفحة الإنجليزية تحمل أسطر alternate الثلاثة نفسها، مع canonical يشير إليها هي. وقواعد جوجل:

  • ضع hreflang في رأس الصفحة، أو في ترويسات HTTP، أو في خريطة الموقع. تكفي طريقة واحدة.
  • استخدم رموز اللغة وفق معيار ISO 639-1، ويمكن إضافة رمز المنطقة وفق ISO 3166-1: ‏ar وar-SA وen. أما رمز المنطقة وحده فغير صالح.
  • أضف x-default للزوار الذين لا تطابق لغتهم أيًّا من النسختين.
  • الكلمات العربية في الروابط مقبولة، وجوجل توصي بكلمات بلغة جمهورك، لكن يجب ترميزها (percent-encoding) داخل الكود.

ويضيف اتحاد W3C قاعدة للاتجاه: حدّده بالخاصية dir في وسم <html>، ولا تعتمد على CSS لتحديد الاتجاه الأساسي للصفحة.

كيف تصلح المشكلة

سلة

القالب (الثيم) الافتراضي «رائد» في سلة يُخرج lang وdir من إعدادات لغة المتجر، فإن كانت القيم خاطئة فابدأ بتلك الإعدادات، مع ملاحظة أن القوالب المخصصة قد تختلف. وتقول سلة إن المتاجر متعددة اللغات تستخدم المسارين /ar/ و/en/، وإنها تضيف hreflang تلقائيًا. لم أتحقق من ذلك في متجر سلة ثنائي اللغة حي. وفي متجر عربي فقط فُحص لإعداد هذا المقال، فتح الرابط /en الصفحة الرئيسية دون hreflang، وهذا متوقع في متجر بلغة واحدة. إذا كان متجرك ثنائي اللغة ولا يحتوي على hreflang فهذا قيد من المنصة: أرسل روابط أمثلة إلى دعم سلة.

زد

وجود hreflang في متاجر زد ثنائية اللغة غير مؤكد، والمتجر العربي الذي فُحص لم يكن فيه hreflang على صفحة المنتج. لم أجد إعدادًا لـ hreflang في زد، فإن كان متجرك ثنائي اللغة وينقصه، فتواصل مع دعم زد مع أمثلة.

شوبيفاي (Shopify)

حين تستخدم الأسواق (Markets) روابط منفصلة لكل لغة، في مجلد فرعي أو نطاق فرعي أو نطاق مستقل، تضيف شوبيفاي hreflang تلقائيًا عبر content_for_header، ويشير x-default إلى النطاق الأساسي. ومفتاح التحكم في: Online Store › Preferences › Automatic hreflang tags. إذا أضاف القالب أو أحد التطبيقات hreflang خاصًا به أيضًا فستتكرر الوسوم، فأبقِ مصدرًا واحدًا. أما الاتجاه، فقالب Horizon من شوبيفاي يضبط dir حسب اللغة، بينما يضبط Dawn الخاصية lang فقط. في قالب مثل Dawn أضف dir إلى وسم <html> الموجود في layout/theme.liquid كما يفعل Horizon، مع الإبقاء على بقية الخصائص:

<html lang="{{ request.locale.iso_code }}" dir="{{ request.locale.direction | default: 'ltr' }}">

ووردبريس وووكومرس (WordPress/WooCommerce)

إضافات WPML وPolylang وTranslatePress وWeglot تُخرج كلٌّ منها hreflang. أصلح الأخطاء من إعدادات الإضافة نفسها بدل إضافة الوسوم يدويًا، وتأكد أن إضافة السيو وإضافة الترجمة لا تطبعان الوسوم معًا. أما طريقة ضبط كل إضافة لقيمة x-default افتراضيًا فغير مؤكدة، فراجع إضافتك.

متجر مبرمج خصيصًا

ولّد وسم canonical ومجموعة hreflang لكل زوج من الصفحات من خريطة المسارات نفسها، حتى تذكر كل نسخة الأخرى دائمًا.

أخطاء شائعة

  • كتابة hreflang="sa". الرمز sa في معيار ISO 639-1 هو اللغة السنسكريتية، لا السعودية. استخدم ar أو ar-SA.
  • رمز منطقة وحده أو رموز مخترعة.
  • hreflang في اتجاه واحد: الصفحة العربية تذكر الإنجليزية، والإنجليزية لا تذكر العربية.
  • روابط نسبية داخل وسوم hreflang.
  • وسم canonical في الصفحة العربية يشير إلى الصفحة الإنجليزية.
  • تحديد الاتجاه بـ CSS وحده (direction: rtl).
  • قيم إنجليزية في البيانات المنظمة لصفحات عربية.

شغّل «فحص المتجر — أحمد فايد» المجاني لتفحص إعدادات اللغة في متجرك. إذا أردت مساعدة في إصلاح ذلك، تواصل معي عبر واتساب ‎+20 102 702 0701 أو عبر ahmed-fayed.com.

المصادر

تعدد اللغات

المزيد من هذه السلسلة

العودة إلى الأدلة