إنتقل إلى المحتوى الرئيسي

إعداد Shopify Markets والعملات المتعددة لقالب Vertex

Vertex مربوط بالكامل بـ Shopify Markets جاهزاً — لا تطبيقات، لا محوّلات عملة خارجية، لا نصوص FX. إذا كنت تبيع لفرق مشتريات عبر دول متعددة، أو حسابات موزعين بعملات مختلفة، أو تشغل كتالوجات تجارية لمناطق منفصلة، فإن هذا الدليل يأخذك من متجر مبتدئ بسوق واحد إلى متجر B2B + B2C متعدد الأسواق أنيق في حوالي 30 دقيقة.

B2B أولاً

مشترو B2B في Shopify مثبتون في سوق واحد بإسناد شركتهم — لا يمكنهم تبديل العملات بحرية. لا يزال Vertex يعرض كبسولة العملة لهم (معلوماتية) حتى يروا دائماً العملة التي يدفعون بها بنظرة. تحب فرق المشتريات هذا — يلغي بريداً ذهاباً وإياباً لكل عرض سعر. ستحتوي القائمة المنسدلة على خيار واحد فقط.


ما الذي تتحكم به "Markets" فعلاً

Shopify Markets هو النظام الفرعي الأصلي الذي يتحكم، لكل مجموعة دولة / منطقة:

  • العملة التي يراها المشتري ويدفع بها (محوّلة تلقائياً من عملة متجرك، أو متجاوزة عبر قائمة أسعار خاصة بالسوق)
  • اللغة التي يُعرض بها المتجر (مأخوذة من JSON الخاص بـ locales/؛ Vertex يأتي بالإنجليزية والفرنسية والإيطالية والألمانية والإسبانية)
  • استراتيجية التسعير — تحويل تلقائي بأسعار FX حية مع نسبة تعديل اختيارية، أو قائمة أسعار يدوية ثابتة لكل سوق
  • النطاق / المجلد الفرعيexample.com/fr-ca/ أو نطاق .ca منفصل تماماً
  • إعادة التوجيه الجغرافي — اقتراح تلقائي أو إعادة توجيه تلقائي للزوار غير المطابقين إلى أقرب سوق لهم
  • معاملة الضرائب + الرسوم الجمركية (في الأسواق التي تدعم DDP، مثل Shopify Markets Pro)

مهمة Vertex هي عرض هذا التكوين بأمانة: كبسولة العملة وكبسولة اللغة وعلامات hreflang وتنسيق السعر لكل سوق وشريط ترحيب B2B كلها تستشير كائن localization الحي على كل طلب.


المتطلبات المسبقة

المتطلبلماذا
خطة Shopify: Basic أو أعلىMarkets مدرج في كل خطة مدفوعة، لكنك تحتاج على الأقل Basic للأسواق الثانوية. Shopify Plus يفتح أسواقاً غير محدودة + Markets Pro (الرسوم الجمركية + DDP).
سوق ثانوي منشور واحد على الأقلكبسولة عملة Vertex تُعرض عندما localization.available_countries.size > 0. بدون سوق ثانوي، توجد دولة واحدة فقط ولا يوجد شيء للتبديل إليه في القائمة المنسدلة — رغم أن الكبسولة نفسها لا تزال تُعرض لمشتري B2B (راجع حالة خاصة: B2B + Markets أدناه).
القالب منشور أو في معاينةبعض تكوين Markets (إعادة التوجيه الجغرافي، السوق الافتراضي) يُعرض بشكل صحيح فقط عندما يكون القالب منشوراً أو يتم معاينته عبر المخصص.
اللغات المحلية مثبتةإذا أردت محوّل لغة (وليس فقط محوّل عملة)، انشر المحلية المطابقة في Settings ▸ Languages. يأتي Vertex بترجمات واجهة مستخدم كاملة للإنجليزية والفرنسية والإيطالية والألمانية والإسبانية.
Markets مجاني

Markets — بما في ذلك متعدد العملات ومتعدد اللغات — مدرج في كل خطة Shopify. تدفع فقط مقابل تحويل FX عبر رسوم Shopify Payments (مدرجة بالفعل في رسوم معاملاتك)، وليس مقابل ميزة Markets نفسها. تحصيل الرسوم الجمركية + DDP (Markets Pro) هو الإضافة المدفوعة.


خطوة بخطوة: تفعيل Markets

الخطوة 1 — افتح Markets في لوحة Shopify

في لوحة Shopify الخاصة بك، انتقل إلى Settings ▸ Markets.

ستصل إلى صفحة تسرد السوق الأساسي الخاص بك (يُنشأ تلقائياً عندما فتحت متجرك، عادة دولة تأسيسك) بالإضافة إلى أي أسواق ثانوية أضفتها.

Shopify admin: Settings → Markets

الخطوة 2 — اضبط السوق الأساسي

انقر داخل السوق الأساسي. تأكد:

  • Country / region صحيحة (تشغّل الضرائب + الرسوم الجمركية الافتراضية)
  • Currency هي عملة متجرك (لا يمكن تغييرها بمجرد وجود طلبات)
  • Language هي لغتك الافتراضية (المحلية المُعلَّمة "Default" في Settings ▸ Languages)

هذا هو السوق الاحتياطي — كل زائر غير مطابق لسوق ثانوي يرى تسعير ولغة السوق الأساسي.

الخطوة 3 — أضف سوقاً ثانوياً

انقر Add market في أعلى اليمين.

لكل سوق جديد، ستضبط:

الحقلما يجب إدخاله
اسم السوقتسمية داخلية — "European Union" أو "Canada" أو "Asia-Pacific Wholesale"
الدول / المناطقدولة أو أكثر تشترك في تسعير + عملة + لغة هذا السوق. مشترو EU يمكنهم مشاركة سوق واحد؛ UK + EU يمكن تقسيمهما إذا أردت معالجة VAT مختلفة.
العملةالعملة المحلية (مثلاً EUR لـ EU، GBP لـ UK، CAD لكندا). سيحوّل Shopify تلقائياً من عملة متجرك بأسعار حية إلا إذا رفعت قائمة أسعار يدوية.
اللغاتمحلية أو أكثر منشورة في Settings ▸ Languages. اللغة الافتراضية لهذا السوق يتم اكتشافها تلقائياً من الدولة إذا كان لديك محلية مطابقة.
استراتيجية التسعيرAdjust prices by % from store currency (مثلاً +5% لتغطية مخاطر FX) أو Use a manual price list لذلك السوق.
النطاق / المجلد الفرعيexample.com/fr-fr/ (مجلد فرعي، موصى به لـ SEO) أو ccTLD منفصل مثل example.fr.
استخدم المجلدات الفرعية لـ SEO

URLs المجلد الفرعي (example.com/fr-fr/) توحّد سلطة النطاق، ويتم إقرانها تلقائياً بعلامات hreflang بواسطة Vertex، وتتطلب صفر عمل DNS. نطاقات ccTLD المنفصلة تقسم سلطتك وتتطلب إعداد hreflang يدوي. أوصي بالمجلدات الفرعية إلا إذا كان لديك سبب ضريبي أو قانوني قوي لاستخدام ccTLDs.

Markets → Add market form

الخطوة 4 — اختر استراتيجية التسعير الخاصة بك

لديك ثلاثة خيارات للأسعار في كل سوق ثانوي:

الخيار A — تحويل تلقائي من عملة المتجر (افتراضي) يحوّل Shopify أسعار عملة متجرك إلى عملة السوق بسعر FX الحي، مدوّرة إلى تنسيقك المختار (مثلاً نهايات .99). يُحدَّث مرة يومياً. مجاني؛ بدون صيانة يدوية.

الخيار B — تحويل تلقائي + تعديل نفس A، بالإضافة إلى تعديل نسبة (مثلاً +5%، -10%) مطبّق على كل منتج في هذا السوق. مفيد عندما تريد امتصاص مخاطر FX أو تشغيل خصم/زيادة إقليمي بشكل موحد.

الخيار C — قائمة أسعار يدوية لكل سوق ارفع CSV (أو استخدم واجهة اللوحة) مع أسعار صريحة لكل متغير لكل سوق. مطلوب عند وجود تسعير تعاقدي ثابت في منطقة — شائع لموزعي B2B بتسعير موزعين إقليمي متفاوض عليه.

كتالوجات B2B تتجاوز تسعير Markets

إذا كان مشتر B2B مسجل الدخول ولديه شركته كتالوج معيّن، تأخذ أسعار الكتالوج الأولوية على تسعير Markets لذلك المشتري. تسعير Markets هو الاحتياطي عندما لا يكون لمشتر B2B كتالوج معيّن، أو للمشترين B2C / الضيوف في ذلك السوق.

الخطوة 5 — (اختياري) تفعيل إعادة التوجيه الجغرافي

لا تزال في Settings ▸ Markets، مرّر إلى بطاقة Geolocation.

اختياران:

  • Recommend a different market — يعرض شريطاً صغيراً في أعلى المتجر ("يبدو أنك في فرنسا. زر متجرنا الفرنسي؟") مع خيار Visit / Stay. أقل عدوانية — موصى به لـ B2B لأن بعض مشتري المشتريات يستخدمون متجراً أمريكياً عمداً لمقارنة الأسعار.
  • Automatically redirect — يعيد توجيه الزائر من جانب الخادم إلى أقرب سوق له دون اختيار. تحويل أعلى في B2C النقي، لكن قد يحبط مشتري B2B والروبوتات.

اختر Recommend إلا إذا كان لديك سبب قوي خلاف ذلك. يحترم Vertex أياً منهما اخترت — لا حاجة لتغييرات كود القالب.

الخطوة 6 — انشر أسواقك الثانوية

كل سوق لديه مبدّل Active / Inactive في قائمة الأسواق. بدّل إلى Active عندما تكون مستعداً ليراه المشترون. ستبدأ كبسولة العملة في Vertex بإظهار عملة السوق الجديد في قائمتها المنسدلة فوراً عند تحميل الصفحة التالي.


كيف يعرض Vertex المحوّل

كبسولات العملة + اللغة في Vertex معروضة بمقتطف مشترك واحد — snippets/localization-switchers.liquid — مضمّن في موقعين:

  1. رأس سطح المكتب (≥1170px) — مضمّن في شريط ترحيب B2B الكهرماني لمشتري B2B المسجلين، أو مضمّن في الرأس الأبيض الرئيسي للضيوف + مشتري B2C
  2. درج الجوال + الجهاز اللوحي (<1170px) — في أعلى درج القائمة، ككبسولتين في شبكة عمودين للوصول بيد واحدة

B2B greeting bar with currency pill (desktop) Mobile homepage (drawer with lang + currency pills)

تشريح الكبسولة

كل كبسولة هي زر مدوّر مدمج بثلاثة عناصر:

  • رمز علم دائري — علم الدولة، مأخوذ من sprite أو يرتد إلى رمز الدولة ISO
  • كومة نص من سطرين — تسمية رفيعة ("Currency" أو "Language") فوق رمز ISO ("EUR"، "FR")
  • شيفرون — يشير إلى أن الكبسولة تفتح لوحة منسدلة

النقر على كبسولة يفتح لوحة منسدلة مخصصة — يأتي Vertex عمداً بصفر عناصر <select> أصلية في أي مكان من القشرة. كل قائمة منسدلة تستخدم نمط <details> + <summary> + لوحة مخصصة مشترك:

  • يعرض أيقونة فحص بجانب الخيار المحدد حالياً
  • يبرز حالة التحويم
  • يُغلق عند Escape / النقر الخارجي / فتح قائمة منسدلة شقيقة (استبعاد متبادل)
  • ينحدر بتلاشي 120 ms

هذا يعني تنقل لوحة مفاتيح كامل ودعم AT (التكنولوجيا المساعدة)، بينما يبدو لا شيء مثل قائمة منسدلة افتراضية للمتصفح.

قاعدة "العرض دائماً"

تفصيل حاسم: يتحقق localization-switchers.liquid من localization.available_countries.size > 0وليس > 1.

هذا يعني:

  • المتاجر بسوق واحد منشور — تُعرض الكبسولة، تحتوي القائمة المنسدلة على خيار واحد (سوقك الرئيسي)
  • المتاجر بسوقين أو أكثر — تُعرض الكبسولة، تحتوي القائمة المنسدلة على كل الأسواق المنشورة
  • مشترو B2B المثبتون في سوق واحد — تُعرض الكبسولة (معلوماتية)، تحتوي القائمة المنسدلة على خيار واحد (سوقهم)

هذا القرار متعمد. مشترو B2B الذين يدفعون بـ EUR يريدون رؤية EUR على كل صفحة حتى لو لم يستطيعوا التبديل — إنه طمأنينة بأنهم ليسوا على وشك أن يُحاسبوا بـ USD. أبلغت فرق المشتريات عن مخاوف من تبديل العملة الصامت في اختبار المستخدم مراراً؛ إظهار شارة العملة يمنع هذا الالتباس.

إذا أردت إخفاء كبسولة العملة بالكامل (مثلاً لديك سوق واحد وتريد التخلص من الفوضى)، افتح Customize، وانقر قسم Header، ثم أوقف Show currency switcher (تحت Localization switchers). كبسولة اللغة (Show language switcher) مستقلة.


حالة خاصة: B2B + Markets

Shopify B2B لديه قاعدة صارمة: كل شركة مثبتة في سوق واحد بالضبط. عندما تنشئ شركة في Settings ▸ Customers ▸ Companies، تختار السوق الذي تنتمي إليه. سيرى المشترون في تلك الشركة دائماً عملة وضع ولغة وكتالوج ذلك السوق — لا يمكنهم التبديل.

يحترم Vertex هذا من البداية للنهاية:

ما يُعرض لمشتر B2Bالسلوك
كبسولة العملةتُعرض. تحتوي القائمة المنسدلة على خيار واحد (عملة سوقهم). تُعرض كالعملة التي سيُحاسبون بها عند الدفع.
كبسولة اللغةتُعرض إذا كانت أكثر من لغة منشورة في سوقهم. وإلا تُعرض بخيار واحد.
محوّل عناوين الشحنيُعرض إذا كان لدى المشتري أكثر من عنوان شحن مفوّض لشركتهم. مستقل عن السوق.
محوّل الشركاتيُعرض فقط إذا كان المشتري مرتبطاً بأكثر من شركة (نادر؛ عادة موظفو الحسابات المستحقة في الشركات الأم).
تسعير الحجم + NET-30 + الإعفاء الضريبيكلها مأخوذة من إسناد سوق + كتالوج الشركة. لا تتغير بأي شيء في محوّلات الترجمة.
لا تحذف كبسولة عملة B2B

إذا سأل مشتر "لماذا لا تغيّر كبسولة عملتي العملة؟"، الإجابة هي لأن مشتري B2B مثبتون، وليس لأن الكبسولة معطلة. إزالة الكبسولة لتجنب السؤال تخلق مشكلة أسوأ — لم يعد المشترون يرون العملة التي يدفعون بها. اتركها مفعلة.


التحقق من إعدادك

بعد نشر Markets + قالب Vertex، مرّ بقائمة التحقق هذه:

  1. افتح المتجر في نافذة تصفح خفي. يجب أن ترى سوقك الأساسي افتراضياً (USD إن كان US، GBP إن كان UK، إلخ).
  2. انقر كبسولة العملة في رأس سطح المكتب. يجب أن تظهر كل أسواقك المنشورة. اختيار واحد يجب أن يعيد تحميل الصفحة بالعملة الجديدة.
  3. انتقل إلى نقطة كسر الجوال (أو افتح على هاتف حقيقي). افتح درج القائمة. يجب أن تظهر كبسولات العملة + اللغة في أعلى الدرج في شبكة عمودين.
  4. سجّل الدخول كمشتر B2B اختباري. يجب أن تُعرض الكبسولة الآن في شريط الترحيب الكهرماني (سطح المكتب) أو تبقى في الدرج (الجوال). يجب أن تُظهر القائمة المنسدلة عملة سوق المشتري فقط.
  5. افحص HTML الصفحة. ابحث عن علامات <link rel="alternate" hreflang="fr-fr" href="https://example.com/fr-fr/" /> في <head> — واحدة لكل محلية منشورة. تُصدرها مقتطفات SEO في Vertex تلقائياً.
  6. افتح Google Search Console ▸ International targeting. بعد إعادة زحف Google (1–14 يوماً)، يجب أن تظهر علامات hreflang الخاصة بك مُتحقَّق منها بدون أخطاء.

استكشاف الأخطاء

"كبسولة عملتي لا تظهر"

الأسباب الأكثر شيوعاً، مرتبة بالتكرار:

  1. سوق واحد فقط منشور. الكبسولة تُعرض بخيار واحد — تأكد من النظر في المكان الصحيح (شريط الترحيب لـ B2B، الرأس الرئيسي للضيوف، الدرج للجوال/الجهاز اللوحي).
  2. محوّل العملة مغلق في قسم Header. افتح Customize، وانقر قسم Header، وتأكد أن Show currency switcher (تحت Localization switchers) on.
  3. وضع الواجهة مضبوط على "B2B-only" + لا يوجد مشتر B2B مسجل الدخول. يخفي وضع B2B-only الرأس الرئيسي للضيوف بالكامل. سجّل الدخول أو بدّل إلى Hybrid.
  4. القالب غير منشور. Markets يُعرض بشكل صحيح فقط على القالب المنشور. قالب المعاينة يعمل للمخصص لكنه لا يعرض Markets دائماً بشكل صحيح.
  5. التخزين المؤقت. تحديث صعب (Ctrl+Shift+R) أو افتح في وضع التصفح الخفي.

"الأسعار لا تتحول إلى العملة المحلية"

  1. السوق Inactive. بدّل إلى Active في Settings ▸ Markets.
  2. أنت تعاين القالب على URL Markets معطّل. يحدث تحويل العملة فقط على القالب المنشور عبر URL السوق الفعلي للمشتري (مثلاً /fr-fr/).
  3. تجاوز كتالوج B2B. مشترو B2B بكتالوج معيّن يرون أسعار الكتالوج، وليس أسعار Markets. هذا سلوك صحيح.
  4. متجر مخزّن. يخزّن Shopify المتاجر بقوة. انتظر 5 دقائق أو حدّث بقوة.

"علامات hreflang مفقودة"

  1. اللغات غير منشورة. اذهب إلى Settings ▸ Languages وتأكد أن كل لغة Published، وليس فقط Visible.
  2. القالب قديم جداً. علامات hreflang تأتي في Vertex v1.0.0 وما بعد. تحقق من إصدار قالبك في Online Store ▸ Themes.
  3. تجاوزات كود مخصصة. إذا خصّصت theme.liquid، قد تكون أزلت {% render 'meta-tags' %} (أو المكافئ). استعده.

"إعادة التوجيه الجغرافي عدوانية جداً"

بدّل من Automatically redirect إلى Recommend a different market في Settings ▸ Markets ▸ Geolocation. يعرض الأخير شريط "زر متجرنا الفرنسي؟" مهذباً بدلاً من إعادة توجيه صعبة.

"مشتر B2B يرى العملة الخاطئة"

عملة المشتري تتحدد بـ إسناد سوق الشركة في Settings ▸ Customers ▸ Companies ▸ [الشركة] ▸ Market. غيّر السوق هنا، وليس في القالب.


تأثير SEO لإعداد متعدد الأسواق

متجر متعدد الأسواق مكوّن جيداً هو إشارة SEO دولية قوية. يُصدر Vertex تلقائياً:

  • <link rel="alternate" hreflang="xx-yy" ... /> لكل محلية منشورة في متجرك. يخبر Google "نفس هذه الصفحة متاحة في هذا URL بهذه اللغة لهذه المنطقة". حاسم للترتيب في SERPs المحلية.
  • <html lang="xx" dir="ltr|rtl"> بناءً على المحلية النشطة. يساعد قارئات الشاشة + أدوات ترجمة المتصفح على التعرف على اللغة.
  • <meta property="og:locale" content="xx_YY"> للمحلية النشطة + og:locale:alternate للأشقاء. يشغّل معاينات Open Graph الصحيحة لكل منطقة.
  • JSON-LD محلي — مخططات Product وBreadcrumbList وOrganization وFAQPage كلها تستخدم السلاسل المعروضة محلياً (الأسماء، الأوصاف، إجابات الأسئلة الشائعة) — وليس النسخة الإنجليزية الرئيسية.

النتيجة: يمكن لـ Google خدمة المشترين الفرنسيين بـ URL /fr-fr/، والمشترين الألمان بـ URL /de-de/، والمشترين الإسبان بـ URL /es-es/ — دون إظهار النسخة الإنجليزية لهم أبداً ما لم يطلبوها صراحة.

أوصي بالعملة في طلبات التسعير

إذا كنت تعمل في B2B الدولي، اذكر العملة المتوقعة للمشتري في نموذج RFQ الخاص بك. صفحة RFQ في Vertex لا تكتشف العملة تلقائياً، لذا ستريد حقل "Quote currency" نصياً حراً إذا كنت تتفاوض بعملات متعددة بانتظام.


قراءة ذات صلة


ملخص

  • Shopify Markets هو النظام الفرعي الأصلي الذي يتحكم بالعملة واللغة والتسعير والنطاقات لكل سوق. مجاني على كل خطة مدفوعة.
  • كبسولة عملة Vertex تُعرض حتى لسيناريوهات السوق الواحد وخيار B2B الواحد — معلوماتية بالتصميم.
  • مشترو B2B مثبتون في سوق واحد بشركتهم؛ تصبح الكبسولة شارة "العملة الحالية".
  • علامات hreflang تُصدر تلقائياً لكل محلية منشورة. يساعد Google على خدمة الباحثين الدوليين URL الصحيح.
  • قوائم الأسعار اليدوية تتجاوز التحويل التلقائي عندما تحتاج تسعير موزعين إقليمي ثابت.
  • يجب ضبط Geolocation على Recommend، وليس Auto-redirect، في سياقات B2B.

الوقت للعرض متعدد العملات الأول: حوالي 30 دقيقة بما في ذلك نشر القالب + التحقق من السوق.