تحسين محركات البحث في Shopware
كيف يعمل SEO في Shopware 6: عناوين SEO بقوالب Twig، ومعالجة canonical، وخرائط XML، وhreflang عبر نموذج Sales Channel/Domain، وrobots.txt وJSON-LD في الإصدارات الحديثة، مع حدود الإصدارات وفخاخ الفهرسة والمتغيرات وHeadless.
اللغات
توفر Shopware 6 قدرًا كبيرًا من SEO التقني الأصلي لمنصة ذاتية الاستضافة: عناوين SEO بقوالب Twig لكل نوع كيان، ومعالجة canonical، وثلاث استراتيجيات لخريطة XML، وhreflang مشتق من نموذج Sales Channel/Domain. لكن المتاح أصلًا يعتمد على الإصدار؛ فلم تصل إدارة robots.txt لكل نطاق إلا في 6.7.1.0، ووصلت بيانات JSON-LD المنظمة بدل Microdata في 6.7.9.0 خلف علامة. والفخاخ محددة: يجب إعادة بناء فهرس SEO بالأمر dal:refresh:index بعد تغيير قالب URL، ويحصل كل متغير على عنوان مستقل ولا يمكن توجيهه إلى الأب مباشرةً من دون تجاوز للقالب، وينمو جدول seo_url تقريبًا بعدد المتغيرات مضروبًا في اللغات. وينقل الانتقال إلى Composable Frontends بـVue وNuxt قائمة SEO كلها، من خريطة الموقع وcanonical إلى meta والبيانات المنظمة، إلى طبقة العرض في Nuxt حيث لا تنطبق إعدادات الإدارة بالطريقة نفسها.
Evidence for this claim Shopware 6 provides configurable SEO URL templates and sitemap settings, with behavior dependent on version and sales-channel configuration. Scope: Shopware 6 administration; plugins and release versions can change output. Confidence: high · Verified: Shopware documentation: SEO Evidence for this claim Shopware release notes document material SEO-related changes across 6.7 releases, so exact native behavior must be checked by installed version. Scope: Shopware 6.7 release line, not all earlier installations. Confidence: high · Verified: Shopware 6.7 release notesالخلاصة — Shopware منصة تجارة إلكترونية مطورة في ألمانيا، وتأتي بقدرات كثيرة مدمجة لتحسين محركات البحث: تنشئ عناوين URL للمنتجات، وتولد خريطة الموقع، وتعالج الوسوم الأساسية، وتضبط hreflang للغات المتعددة. لكن ينبغي أن تعرف أمرين: الميزات المتاحة تعتمد على إصدار Shopware، إذ لم يصل بعضها إلا حديثًا، وبعض المهام، مثل معالجة تكرار صفحات متغيرات المنتجات، لا تزال تحتاج إلى إضافة أو مطور.
ماذا يعني «Shopware SEO»؟
Shopware منصة تجارة إلكترونية ذات نواة مفتوحة المصدر، وإصدارها الحالي هو Shopware 6. وعلى خلاف Shopify أو BigCommerce، اللتين تستضيفان كل شيء نيابة عنك، تُثبّت Shopware عادةً على استضافتك الخاصة أو على سحابة Shopware؛ ما يمنحك تحكمًا أكبر ويلقي عليك مسؤولية أكبر.
«Shopware SEO» هو العمل المعتاد لجعل صفحات منتجاتك وفئاتك قابلة للاكتشاف والزحف والفهرسة والترتيب، لكن مطبقًا على متجر يعمل بـShopware. ويستحق دليلًا مستقلًا لأن Shopware يتخذ كثيرًا من قرارات SEO نيابة عنك افتراضيًا، وعليك أن تعرف ما الذي ينجزه، وما الذي يتركه لك، وما الذي لا يظهر إلا إذا كان إصدارك حديثًا بما يكفي.
ما الذي تنجزه Shopware نيابة عنك؟
- عناوين URL نظيفة. تنشئ Shopware «عناوين SEO» لمنتجاتك وفئاتك باستخدام قوالب يمكنك تعديلها في لوحة الإدارة، وتتحكم أنت في تنسيقها.
- خريطة الموقع. تنشئ Shopware خريطة موقع XML للمنتجات والفئات في
https://yourdomain.com/sitemap.xml، وما عليك إلا إرسالها إلى Google. - الوسوم الأساسية. تختار Shopware تلقائيًا عنوان URL الرئيسي الصحيح للفئات عندما يوجد المنتج في أكثر من فئة.
- hreflang للغات. إذا كنت تبيع بلغات متعددة، تستطيع Shopware إضافة الوسوم التي تخبر Google بالنسخة اللغوية المطلوب عرضها، استنادًا إلى إعداد «قناة المبيعات» والنطاق.
- robots.txt (في الإصدارات الأحدث فقط). من Shopware 6.7.1.0 فصاعدًا يمكنك تعديل
robots.txtمباشرةً من لوحة الإدارة. - البيانات المنظمة (في الإصدارات الأحدث فقط). من Shopware 6.7.9.0 فصاعدًا تستطيع Shopware إخراج بيانات JSON-LD حديثة للنتائج الغنية الخاصة بالمنتجات.
ما الذي يبقى عليك فعله بنفسك؟
- ملء العناوين والأوصاف. تمنحك Shopware الحقول، لكنك تكتب النص. ولا توجد طريقة أصلية لضبطها جماعيًا بنمط واحد عبر آلاف المنتجات.
- معالجة صفحات المتغيرات المكررة. يحصل كل متغير للمنتج، مثل كل مقاس أو لون، على عنوان URL خاص به، وغالبًا ما تكون أوصافها شبه متطابقة فتتنافس في ما بينها. ولا تحل Shopware هذه المشكلة كاملةً نيابة عنك.
- التحقق من إصدارك. لأن robots.txt وJSON-LD إضافتان حديثتان، فقد تكون النصيحة التي تقرؤها على الإنترنت أقدم من متجرك أو تتحدث عن إصدار أحدث منه.
الخطأ الأكثر شيوعًا
يفترض الناس أن امتلاك Shopware «قدرات SEO جيدة» يعني أن كل شيء مُعالج. لكن هناك فخان يعثر فيهما الجميع تقريبًا. أولًا، تغيير قالب URL لا يحدّث عناوين URL الحالية حتى تعيد بناء فهرس SEO في Shopware، وهي خطوة يسهل نسيانها. ثانيًا، إذا انتقلت إلى واجهة منفصلة Headless حديثة بـVue/Nuxt، فلن تنطبق معظم إعدادات SEO في لوحة الإدارة بالطريقة نفسها، وسيصبح على مطورك بناء SEO في الواجهة الجديدة.
هل تريد نسخة الممارس التي تغطي قوالب Twig الدقيقة، وإصلاح canonical للمتغيرات، واستراتيجيات خريطة الموقع وأوامر سطر الأوامر، وحدود الإصدارات، وفخ Headless؟ انتقل إلى تبويب Advanced.
Evidence for this claim Shopware 6 provides configurable SEO URL templates and sitemap settings, with behavior dependent on version and sales-channel configuration. Scope: Shopware 6 administration; plugins and release versions can change output. Confidence: high · Verified: Shopware documentation: SEO Evidence for this claim Shopware release notes document material SEO-related changes across 6.7 releases, so exact native behavior must be checked by installed version. Scope: Shopware 6.7 release line, not all earlier installations. Confidence: high · Verified: Shopware 6.7 release notesالخلاصة — توفر Shopware 6 قدرًا أكبر من SEO التقني الأصلي مقارنةً بمعظم المنصات ذاتية الاستضافة، لكن «الأصلي» مقيد بشدة بحسب الإصدار. عناوين SEO هي قوالب Twig لكل نوع كيان، أي المنتج والفئة والصفحة المقصودة، ويمكن ضبطها عالميًا أو لكل قناة مبيعات؛ وبعد تغيير القالب يجب إعادة بناء الفهرس (
dal:refresh:index) وإلا فلن تتحدث العناوين الحالية. ونظام canonical منفصل عن قوالب URL: تلقائي للفئات وشبه يدوي للمتغيرات؛ إذ يمكنك توجيه متغير إلى متغير آخر، لا إلى المنتج الأب مباشرةً من دون تجاوز للقالب. لخريطة XML ثلاث استراتيجيات تحديث: scheduled وlive وmanual، ويستخدم الوضع اليدويsitemap:generate، كما تنفي Shopware صراحةً أي ضمان للفهرسة. قبل 6.7.1.0 لا يُنشأ robots.txt تلقائيًا، بل يحتاج إلى ملف يدوي وإعادة كتابة على الخادم؛ وبعده أصبحت إدارته لكل نطاق أصلية. وانتقلت البيانات المنظمة من Microdata إلى JSON-LD في 6.7.9.0 خلف العلامةJSON_LD_DATA. ويأتي hreflang من نموذج Sales Channel > Domain، مع فجوة بين قنوات المبيعات تعالجها إضافات مدفوعة. أما الانتقال إلى Composable Frontends المنفصلة بـVue وNuxt فينقل قائمة SEO كلها إلى طبقة العرض في Nuxt.
الإطار: ما هو أصلي، وما يقيده الإصدار، وما يبقى عليك
معظم محتوى Shopware SEO إما جولة مصورة في إعدادات الإدارة أو عرض تسويقي من وكالة Shopware. ولا يوضح أيهما الأمرين المهمين فعلًا: ما توفره Shopware أصلًا يعتمد على إصدارك، والفجوات المتبقية محددة ويمكن توقعها. صنّف كل مهمة في ثلاث فئات: أصلي ومتاح حاليًا، أو أصلي فقط في إصدار حديث، أو لا يزال من مسؤوليتك، وستتوقف المنصة عن أن تبدو غامضة.
تعرض Shopware الجانب الأصلي بسخاء؛ فهي تقول إن المنصة “includes many SEO features out of the box – from country- and language-specific URLs to meta data, hreflang, and performance optimizations, allowing you to build strong SEO without additional plugins.” (الترجمة العربية): «تتضمن كثيرًا من ميزات SEO جاهزةً، من عناوين URL الخاصة بالبلد واللغة إلى بيانات meta وhreflang وتحسينات الأداء، ما يتيح لك بناء SEO قوي من دون إضافات أخرى». وهذا صحيح إلى حد كبير، مع تحفظات الإصدار أدناه وقائمة قصيرة من الأمور التي لا تزال تحتاج إلى إضافات أو شفرة، مثل ضبط meta جماعيًا، وcanonical للمتغيرات، وhreflang بين القنوات، والعرض في الواجهة المنفصلة.
لأن Shopware ذاتية الاستضافة وذات نواة مفتوحة المصدر، فهي تختلف عن المنصات المستضافة.
تفرض Shopify البادئتين /products/ و/collections/ ولا تسمح أصلًا بتعديل
robots.txt، بينما تمنحك BigCommerce ملف robots.txt قابلًا للتعديل وبنى URL مخصصة
فوق حزمة مُدارة. أما Shopware فتمنحك تحكمًا أكبر من كليهما، حتى إنك تستطيع تجاوز
قوالب واجهة المتجر مباشرةً، لكن ذلك يعني أنك تملك مسؤولية أكبر عن النتيجة، بما فيها
الاستضافة وإعادة بناء الفهرس ومسار العرض الخاص بك في الواجهة المنفصلة. وهي أقرب في
روحها إلى Magento أو متجر WooCommerce ذاتي الاستضافة منها إلى Shopify.
بنية URL: قوالب عناوين SEO
توجد عناوين SEO في Settings > Shop > SEO، ويمكن ضبطها لكل قناة مبيعات أو عالميًا. وهناك ثلاثة أنواع كيانات بقوالب مستقلة: صفحات تفاصيل المنتجات وصفحات الفئات والصفحات المقصودة، وتستخدم القوالب صياغة Twig. وتقول وثائق Shopware بوضوح: “In the SEO settings you can define the structure for the SEO URLs of the product detail pages and categories. For this purpose you have a variety of variables at your disposal.” (الترجمة العربية): «يمكنك في إعدادات SEO تحديد بنية عناوين SEO لصفحات تفاصيل المنتجات والفئات، ولديك لهذا الغرض مجموعة متنوعة من المتغيرات».
الآليات التي تستحق معرفتها:
- قالب المنتج الافتراضي هو
{{ product.name }}، ويتوفر أكثر من 50 متغيرًا للمنتج، منها رقم المنتج وEAN واسم الشركة المصنعة ومسار التنقل أو الفئات والحقول المخصصة وتاريخ الإصدار وغيرها. - يجب كتابة المتغيرات متعددة المستويات يدويًا. فالنقر على منتقي المتغير لا يدرج
إلا الرمز الأب غير المكتمل، ويجب إكمال
{{ product.translated.name }}يدويًا. - يمكنك اختصار الأسماء الطويلة. توثق Shopware استخدام
{{ product.translated.name[:50] }}لاختصار اسم منتج أطول من 50 حرفًا مثلًا في URL. - يستخدم قالب الفئة الافتراضي مسار التنقل:
{% for part in category.seoBreadcrumb %}{{ part }}/{% endfor %}. - تعمل مرشحات Twig للتوحيد؛ مثل
{{ product.translated.name|lower }}/{{ product.productNumber }}، وتقول Shopware “in general you can use the available Twig filters.” (الترجمة العربية): «يمكنك عمومًا استخدام مرشحات Twig المتاحة». - تعالج شروط IF الحقول المفقودة، وتعطي الوثائق مثالًا يراعي المتغيرات باستخدام
{% if product.canonicalProductId is not null %}.
الفخ الذي يقع فيه الجميع تقريبًا: “After you have made changes to the SEO
template, it is necessary to rebuild the index so that the URLs are updated. You can do
this from the console using the command php bin/console dal:refresh:index.”
(الترجمة العربية): «بعد تغيير قالب SEO، يجب إعادة بناء الفهرس حتى تتحدث عناوين
URL. ويمكنك فعل ذلك من وحدة التحكم بالأمر php bin/console dal:refresh:index».
لا يؤثر تعديل القالب إلا في العناوين المنشأة حديثًا؛ وتحتفظ المنتجات الحالية
بمساراتها القديمة حتى تعيد البناء. فإذا غيرت القالب و«لم يحدث شيء»، فهذا هو السبب.
توجد عناوين SEO خلف الكواليس في جدول قاعدة بيانات seo_url بمفهوم العنوان
المزدوج: path_info تقني يمثل المسار الحقيقي، وseo_path_info مقروء يمثل المقطع،
إضافةً إلى العلامات sales_channel_id وlanguage_id وis_canonical وis_deleted/
is_modified. ويضيف المطورون مسارات SEO مخصصة أو ديناميكية عبر تنفيذ
SeoUrlRouteInterface مسجل بوسم الحاوية shopware.seo_url.route. لا تحتاج إلى ذلك
في متجر عادي، لكنه يفسر سلوك التوسع في قسم المشكلات أدناه.
الوسوم الأساسية
التوحيد الأساسي في Shopware آلية منفصلة عن قوالب URL، وهو أكثر أجزاء Shopware SEO سوءًا في الفهم. حتى إن وثائق Shopware تعرف المفهوم كما تفعل Google: “A canonical URL is the URL of the page that the search engine assumes is the most representative of several duplicated pages on your site.” (الترجمة العربية): «عنوان URL الأساسي هو عنوان الصفحة التي يفترض محرك البحث أنها الأكثر تمثيلًا لعدة صفحات مكررة في موقعك».
احفظ ثلاثة أمور بوضوح:
- تُوحّد الفئات تلقائيًا. عندما يمكن الوصول إلى منتج عبر فئات متعددة، وبالتالي عناوين متعددة، تصف Shopware ذلك بأنها تكتشفه و*“automatically marks the correct URL, automatically preventing technical SEO issues.”* (الترجمة العربية): «تحدد تلقائيًا عنوان URL الصحيح، فتمنع تلقائيًا مشكلات SEO التقنية». تعامل مع هذه الصياغة التسويقية بوصفها ادعاءً ينبغي التحقق منه في متجرك، لكن سلوك الفئات التلقائي حقيقي.
- المتغيرات شبه يدوية فقط. يحصل كل متغير على عنوان SEO خاص به، ويتيح لك منتقي
“Variant for Canonical URL” تعيين متغير واحد وجهةً أساسية. لكنه لا يتيح
توجيه المتغير مباشرةً إلى المنتج الأب. ويعالج الممارسون هذه الفجوة بتجاوز
product-detail/meta.html.twigأو إضافة، حتى تتجه المتغيرات إلى عنوان SEO للمنتج الأب عند وجوده. وهذا هو الإصلاح إذا كانت صفحات المتغيرات شبه مكررة وتتنافس بينها. - يوجد مفتاح عام لسلوك 301. ضمن “Forwarding behavior” تستطيع Shopware
“output an HTTP 301 redirect when URLs are changed” (الترجمة العربية):
«إخراج إعادة توجيه HTTP 301 عند تغيير عناوين URL»، بدل ترك العناوين القديمة حية بعد
تعديل القالب. وهذا الإعداد يقترن بإعادة بناء
dal:refresh:indexأعلاه.
يتطابق ذلك مباشرةً مع موقف Google القائل إن التوحيد الأساسي إشارة، وإن تكرار عناوين المتغيرات أو المعلمات طبيعي في التجارة الإلكترونية. وتوجد الآليات العامة في التوحيد الأساسي، وهذا المقال هو رفيقها الخاص بـShopware.
خريطة موقع XML
توجد خريطة الموقع في Settings > Shop > Sitemap. وتقول Shopware إنها “generates a standard sitemap that is compressed and cached in the file system,” (الترجمة العربية): «تنشئ خريطة موقع قياسية مضغوطة ومخزنة مؤقتًا في نظام الملفات». وللكتالوجات الكبيرة “the sitemap is divided into several files and can be generated in the background” (الترجمة العربية): «تُقسم خريطة الموقع إلى عدة ملفات ويمكن إنشاؤها في الخلفية». ويحافظ هذا التقسيم على بقاء كل ملف ضمن حدي sitemaps.org وGoogle البالغين 50 000 عنوان URL و50 MB من دون ضغط.
توجد ثلاث استراتيجيات للتحديث، والفرق بينها مهم:
- scheduled — تُنشأ تلقائيًا بمهمة مجدولة وفق فاصل محدد.
- live — تُنشأ إذا لم تكن موجودة، ثم يعاد إنشاؤها بعد انقضاء وقت التحديث.
- manually — يتوقف الإنشاء التلقائي تمامًا؛ “the sitemap will only be created
if you call the following command manually:
php bin/console sitemap:generate. In this case, it is necessary to run this command again each time a new URL is added or an old one is removed.” (الترجمة العربية): «لن تُنشأ خريطة الموقع إلا إذا استدعيت الأمر يدويًا: php bin/console sitemap:generate. وفي هذه الحالة يجب تشغيله مجددًا كلما أضيف عنوان URL جديد أو أزيل عنوان قديم».
هناك أمران يغفل عنهما الناس:
- العنوان العام هو
sitemap.xml، ولا توجد صفحة/sitemapموجهة للبشر. تقول Shopware صراحةً: “Shopware 6 does not provide a visitor sitemap (suffix/sitemapafter your domain). The index filesitemap.xmlis created for evaluation by Google.” (الترجمة العربية): «لا توفر Shopware 6 خريطة موقع للزائر بإضافة/sitemapبعد نطاقك؛ بل يُنشأ ملف الفهرسsitemap.xmlلتقييم Google». - لا تضمن خريطة الموقع شيئًا. تقول Shopware صراحةً إنها “cannot guarantee that every URL will be crawled and indexed. This always depends on the search engine provider.” (الترجمة العربية): «لا تستطيع ضمان الزحف إلى كل عنوان URL وفهرسته؛ فهذا يعتمد دائمًا على موفر محرك البحث». خريطة الموقع وسيلة اكتشاف لا وعدًا بالفهرسة، كما في كل منصة أخرى.
إضافة عناوين URL مخصصة أو استبعادها، خارج المنتجات والفئات، ليست مفتاحًا في لوحة
الإدارة؛ بل عمل للمطور عبر فئات UrlProvider مخصصة توثقها أدلة Shopware للمطورين.
robots.txt — تحقق من إصدارك أولًا
هذا أكثر أجزاء Shopware SEO حساسيةً للإصدار، لذلك ثبّت تاريخه قبل أن تنصح به أحدًا.
- قبل 6.7.1.0، وهو حال معظم التثبيتات الأقدم، لا يُنشأ شيء تلقائيًا. وتقول وثائق
Shopware إن “the robots file is not created automatically in Shopware 6, but has to
be created manually as a text file” (الترجمة العربية): «لا يُنشأ ملف robots
تلقائيًا في Shopware 6، بل يجب إنشاؤه يدويًا كملف نصي» ووضعه في
/public/. وفي إعدادات النطاقات المتعددة تقدم ملفًا لكل نطاق بإعادة كتابة على الخادم: في ApacheRewriteRule ^robots\.txt$ robots/%{HTTP_HOST}.txt [NS]أو ما يكافئه في NGINX، وهوrewrite ^/robots\.txt$ /robots/$host.txt، ويشير إلى بنية/public/robots/<domain>.txt. - من 6.7.1.0 فصاعدًا، وهو إصدار يوليو 2025، وصلت الإدارة الأصلية لملف robots.txt لكل نطاق إلى لوحة الإدارة؛ إذ “can define individual robots.txt rules for each domain in the Admin under Settings > General > Basic information.” (الترجمة العربية): «يمكنك تحديد قواعد robots.txt مستقلة لكل نطاق في لوحة الإدارة ضمن Settings > General > Basic information». وبدأ ذلك مساهمةً مجتمعية في Hacktoberfest 2024.
إذًا لا تصح خرافة «Shopware لا تسمح بتعديل robots.txt» إلا قبل 6.7.1.0. تحقق من
إصدار المتجر قبل أن تقول لأحد «عدله من لوحة الإدارة فحسب»؛ فالمتاجر الأقدم لا تزال
تحتاج إلى الملف اليدوي وإعادة الكتابة. وحقل الإدارة “Rules for robots.txt” ضمن
Settings > General > Basic information مساحة نص حر تُدمج مباشرةً في robots.txt
لذلك النطاق، فتقبل كتل User-agent: وAllow: وDisallow: كاملة، لا قواعد مسطحة
فقط. وتؤكد ذلك وثائق Shopware الحالية وإصلاح 6.7.10.0 المسمى «تجنب تكرار توجيهات
robots.txt لكتل وكلاء المستخدم»، الذي يعيد إنتاج الخلل
باستخدام كتل مستقلة لوكلاء المستخدم في الحقل نفسه.
البيانات المنظمة: الانتقال من Microdata إلى JSON-LD
شهدت Shopware تحولًا معماريًا حقيقيًا في 6.7.9.0؛ إذ انتقلت واجهة المتجر من
Microdata مبعثرة داخل الصفحة إلى JSON-LD يخرج في كتلة
<script type="application/ld+json"> داخل <head>. وتقع الميزة خلف العلامة
JSON_LD_DATA، وهي معطلة افتراضيًا؛ وعند تفعيلها يُحقن JSON-LD وتُزال
Microdata القديمة. وقد أُهملت Microdata ويُخطط لحذفها في 6.8.0.0.
بعد تفعيل العلامة يصبح إخراج JSON-LD أغنى بكثير من Microdata القديمة:
Product— جميع صور المنتج، وVideoObjectلفيديوهات المنتج، وAggregateRatingمعratingCount، وحتى أحدث 10 عناصرReview، وOfferShippingDetails/ShippingDeliveryTimeللمنتجات ذات السعر الواحد، وDimensionsبصيغةQuantitativeValue، وitemCondition، ومعلومات بائع ذات نوع، وgtin13(EAN) أوmpnعند وجودهما.WebSiteمعSearchAction، ما يفعّل مربع بحث روابط أقسام الموقع لدى Google.Organizationفي المستوى الأعلى لشعار المتجر.ItemListفي صفحات الفئات ونتائج البحث، معBreadcrumbList.
يعيش كل نوع مخطط في قالب Twig مستقل قابل للتجاوز ضمن
storefront/layout/structured-data/. وأضاف إصدار 6.7.9.0 نفسه حقول Open Graph لكل
منتج في تبويب SEO بلوحة الإدارة: og:title وog:description وog:image مخصصة،
وتعود افتراضيًا إلى عنوان meta ووصفها وصورة غلاف المنتج عند عدم ضبطها. ولذلك يمكن أن
تختلف مشاركات الشبكات الاجتماعية وبعض معاينات نتائج البحث عمدًا عن وسوم meta من دون
إضافة.
الخلاصة العملية أن هذه خرافة يجب دحضها. فكثير من منشورات الممارسين وإضافات المتجر المدفوعة، مثل “JSON-LD Rich Snippets for product pages” (الترجمة العربية): «مقتطفات JSON-LD الغنية لصفحات المنتجات»، تسبق الميزة الأصلية. إذا كنت على 6.7.9.0 أو أحدث، فتحقق من استمرار حاجتك إلى الإضافة قبل شرائها؛ أما إذا كنت على إصدار أقدم فهناك تحديدًا تظل الإضافة مفيدة. وتستهدف هذه المخرجات إرشادات Google للبيانات المنظمة للمنتجات ، وتشترط Google أن تعكس البيانات المنظمة محتوى الصفحة المرئي؛ لذلك املأ الحقول التي تريد ظهورها في الترميز.
SEO الدولي: hreflang عبر Sales Channel وDomain
لا تملك Shopware محرر hreflang مستقلًا. بل يُشتق hreflang من نموذج Sales Channel > Domain؛ إذ يمكن لكل قناة مبيعات امتلاك نطاقات متعددة، ويرتبط كل نطاق بلغة وعملة ومجموعة مقتطفات ونظام وحدات واحد، ويُضبط بــ*“own virtual URL, language, currency, snippet set and its own unit system.”* (الترجمة العربية): «عنوان URL افتراضي ولغة وعملة ومجموعة مقتطفات ونظام وحدات خاص به».
ينجز إعدادان عمل SEO:
- قائمة لوضع التوطين بخيارين: ISO standard، وهو “useful, for example, if you
use different (country-specific) language variants that may use their own
country-specific terms,” (الترجمة العربية): «مفيد مثلًا إذا استخدمت متغيرات
لغوية مختلفة خاصة بالبلدان وقد تستخدم مصطلحاتها المحلية»، وينتج رموز منطقة ولغة
كاملة مثل
en-USوen-GB؛ وتوطين browser language الذي يقتصر على اللغة مثلen. استخدم معيار ISO عندما تكون لديك متغيرات إقليمية حقيقية. - نطاق افتراضي يصبح بعد تفعيل وسم hreflang “will serve as a fallback for all
languages” (الترجمة العربية): «خيارًا احتياطيًا لكل اللغات»، وهو مقابل Shopware
لـ
x-defaultلدى Google.
نقطة الضعف المعروفة أن ذلك يعمل داخل نطاقات قناة مبيعات واحدة، لكن hreflang بين قنوات المبيعات، أي عند تشغيل قنوات مستقلة لكل بلد أو TLD بكتالوجات شبه مكررة، لا يرتبط أصلًا. وهذه هي الفجوة التي وُجدت إضافات “Hreflang Manager” المدفوعة لمعالجتها. وأتعامل مع فجوة القنوات بوصفها إشارة قوية من المجتمع والسوق، لا قيدًا موثقًا من Shopware، لكنها مشكلة متكررة في المنتديات.
هناك متطلب من Google لا توضحه وثائق Shopware: يجب أن يكون hreflang ثنائي الاتجاه
بوسوم عودة، وأن يتضمن x-default. وإذا كان شرط وسوم العودة جديدًا عليك، فستجد الآليات
العامة في hreflang. يعالج إعداد النطاق الافتراضي في
Shopware جانب x-default، لكن عليك التحقق من صحة وسوم العودة أيضًا.
الواجهة المنفصلة: Composable Frontends (Shopware Frontends)
خيار الواجهة المنفصلة لدى Shopware هو “Shopware Frontends”، المعروف سابقًا باسم “Composable Frontends” أو “PWA”. وهو حزمة أدوات Vue.js وNuxt تستهلك Shopware Store API، وتختلف عن واجهة Twig/Symfony الافتراضية. وتأتي بمكتبة مكونات وعميل API ووظائف “composables” قابلة لإعادة الاستخدام وأنواع TypeScript مولدة؛ فيما بُني متجر “Vue Demo Store” المرجعي بـNuxt وTailwind.
إليك ما تتجاهله الأدلة الأخرى: ينقل الانتقال إلى الواجهة المنفصلة عمليًا مسؤولية SEO كلها إلى طبقة Nuxt، ولا ينطبق أي من إعدادات SEO في لوحة الإدارة بالطريقة نفسها. فقوالب URL وإعدادات canonical ومفتاح خريطة الموقع ولوحة robots.txt الجديدة كلها ميزات لواجهة Symfony (Twig). ويحتاج بناء Composable Frontends إلى ما يأتي:
- وضع عرض ينتج HTML قابلًا للزحف، مثل Nuxt SSR أو العرض الهجين أو ISR أو العرض على الحافة للصفحات المهمة لـSEO. ويعيد بناء SPA المعروض بالكامل في جهة العميل خطر عرض JavaScript التقليدي؛ لذلك ليست الواجهة المنفصلة أفضل تلقائيًا لـSEO، وقد تكون الواجهة سيئة الضبط أسوأ من Twig الافتراضية.
- إنشاء خريطة الموقع والوسوم الأساسية والبيانات المنظمة وحقن وسوم meta داخل تطبيق Nuxt، عادةً عبر وظائف head وSEO-meta في Nuxt، مع سحب المقاطع وبيانات المنتجات غالبًا من بيانات Shopware SEO URL أو Store API نفسها.
إذًا خرافة «الانتقال إلى واجهة Shopware منفصلة يصلح SEO أو يحسنه» خاطئة بصيغتها. فالنتيجة تعتمد كليًا على ضبط العرض في Nuxt. وهذا هو الفخ نفسه في أي بناء منفصل؛ وتوجد النسخة العامة في JavaScript SEO و SEO لأنظمة CMS المنفصلة.
المشكلات الشائعة عند التوسع
تتركز مشكلات الممارسين في ثلاثة مواضع:
- إعدادات افتراضية غير مناسبة. تشير تدقيقات الممارسين إلى أن “Remove Category ID
from URL” يأتي مضبوطًا على No افتراضيًا، ويستحق التفعيل لعناوين أنظف، وأن إشارات
ترقيم الصفحات معطلة افتراضيًا، وأن صفحات ترقيم المدونة أو الأرشيف تستحق
noindexلأنها “add no value; they only take up crawl budget.” (الترجمة العربية): «لا تضيف قيمة، بل تستهلك ميزانية الزحف». أما الادعاء المتكرر بأن Shopware تضيفnofollowتلقائيًا إلى كل الروابط الخارجية، فسأتحقق منه على تثبيت حقيقي قبل تكراره؛ إذ لم تؤكده وثائق Shopware. - محتوى متغيرات المنتج المكرر. هذه أكثر شكاوى Shopware SEO تكرارًا. يحصل كل متغير
على عنوانه (
/SW10000.1و/SW10000.2وغيرها) مع أوصاف موروثة شبه متطابقة، فتتنافس المتغيرات ما لم توحدها؛ وكما سبق، لا يستطيع المنتقي الأصلي توجيهها مباشرةً إلى الأب من دون تجاوز للقالب. - نمو جدول
seo_urlفي الكتالوجات الكبيرة متعددة اللغات. يتبع عدد الصفوف تقريبًا (الأب + المتغيرات النشطة) × عدد اللغات. وتضع دراسة معمقة لأحد الممارسين منتجًا ذا 9 متغيرات عبر 17 لغة عند نحو 153 صفًا لعائلة منتج واحدة. وتضاعف تعديلات القالب المتكررة صفوف التاريخ. والحلول عند التوسع هي إنشاء عناوين SEO للمنتجات الأب فقط ما أمكن، لا لكل متغير، وحذف الصفوف المحذوفة منطقيًا أوغير الأساسية دوريًا، وإضافة فهارس مركبة. ولهذا قد يبدو متجر Shopware كبير بطيئًا ويجمع عناوين SEO مكررة غريبة.
متى تكفي الأدوات الأصلية ومتى تحتاج إلى إضافة أو تطوير؟
الحد التقريبي المتكرر في مصادر الممارسين هو أن الأدوات الأصلية تكفي للكتالوجات الصغيرة والبسيطة، في حدود بضع مئات من المنتجات، بينما تصبح الإضافات أو التطوير المخصص ضرورية عند التوسع الحقيقي إلى آلاف وحدات SKU أو مصفوفات متغيرات عميقة أو لغات كثيرة أو إعدادات دولية عبر قنوات مبيعات متعددة. عمليًا، استخدم إضافة أوشفرة عندما تحتاج إلى أنماط جماعية للعناوين وmeta، أو توجيه canonical للمتغيرات إلى الأب، أو hreflang بين القنوات، أو إدخالات مخصصة في خريطة الموقع، أو JSON-LD في إصدار أقدم من 6.7.9.0. وما عدا ذلك، من قوالب SEO وcanonical للفئات وخريطة الموقع وhreflang متعدد النطاقات داخل قناة واحدة، وrobots.txt وJSON-LD في الإصدارات الحالية، متاح أصلًا.
Shopware في مقابل المنصات المستضافة — الصورة الصادقة
| Shopware | Shopify | BigCommerce | |
|---|---|---|---|
| الاستضافة | ذاتية / سحابة Shopware | SaaS مستضافة | SaaS مستضافة |
| بنية URL | قوالب Twig مخصصة بالكامل | تفرض /products/ و/collections/ | مخصصة بالكامل بلا بادئات مفروضة |
| robots.txt | أصلي في الإدارة من 6.7.1.0، ويدوي قبلها | غير قابل للتعديل أصلًا | قابل للتعديل في الإدارة |
| المخطط المدمج | JSON-LD أصلي من 6.7.9.0 خلف علامة | يحتاج إلى تطبيق | نعم (Cornerstone) |
| hreflang | أصلي عبر Sales Channel/Domain داخل قناة واحدة | تطبيق أوعمل في القالب | يدوي |
| خيار Headless | Composable Frontends (Vue + Nuxt) | Hydrogen | Catalyst (Next.js) |
| إعادة بناء الفهرس | نعم (dal:refresh:index) | غير مكشوفة | غير مكشوفة |
يمكن أن تتصدر كلها جيدًا. ميزة Shopware الحقيقية هي التحكم: عناوين بقوالب Twig، وقوالب واجهة قابلة للتجاوز، ومجموعة ميزات أصلية كبيرة تنمو مع الإصدارات. أما تكلفتها الحقيقية فهي أنك تملك مسؤولية أكبر عن المسار: استضافتك وإعادة بناء الفهارس والوعي بالإصدار، وإذا انتقلت إلى Headless، طبقة العرض ووسوم SEO كاملةً. وكما في Magento وWooCommerce ذاتي الاستضافة، وعلى خلاف إعدادات Shopify أو PrestaShop الأبسط، تناسب هذه المقايضة الفرق التي تملك قدرة تطويرية.
ملخص الذكاء الاصطناعي
خلاصة مكثفة للنسخة المتقدمة:
- Shopware 6 منصة تجارة إلكترونية ذاتية الاستضافة وذات نواة مفتوحة المصدر، بواجهة Symfony/PHP وVue.js، ولديها مجموعة كبيرة من ميزات SEO الأصلية. تمنحك تحكمًا أكبر من Shopify أو BigCommerce، لكنك تملك مسؤولية أكبر عن المسار.
- «الأصلي» مقيد بالإصدار. لا يتاح
robots.txtلكل نطاق إلا من 6.7.1.0، وحقل الإدارة نص حر فتعمل كتلUser-agent:لا القواعد المسطحة فقط. ولا تتاح بيانات JSON-LD المنظمة، بدل Microdata، وحقول Open Graph لكل منتج إلا من 6.7.9.0، مع وجود JSON-LD خلف العلامةJSON_LD_DATAوتوقف Microdata في 6.8.0.0. تحقق دائمًا من إصدار المتجر قبل إسداء النصيحة. - عناوين SEO هي قوالب Twig لكل نوع كيان، أي المنتج والفئة والصفحة المقصودة،
في Settings > Shop > SEO. غيّر قالبًا ثم أعد بناء الفهرس
(
php bin/console dal:refresh:index) وإلا فلن تتحدث العناوين الحالية. - Canonical نظام منفصل: تلقائي للفئات؛ ويمكن للمتغيرات تعيين متغير واحد أساسيًا،
لكن لا يمكن التوجيه مباشرةً إلى الأب من دون تجاوز
product-detail/meta.html.twig. ويصدر مفتاح “Forwarding behavior” العام عمليات إعادة توجيه دائمة عند تغيير URL. - خريطة الموقع: ثلاث استراتيجيات: scheduled وlive وmanual، ويستخدم اليدوي
php bin/console sitemap:generate. وعنوانها العامsitemap.xml، ولا توجد صفحة بشرية/sitemap، كما تنفي Shopware أي ضمان للفهرسة. - يأتي hreflang من نموذج Sales Channel > Domain، حيث نطاق واحد يساوي لغة وعملة
واحدة، مع مفتاح معيار ISO أو لغة المتصفح ونطاق افتراضي بوصفه
x-default. ولا يرتبط hreflang بين قنوات المبيعات أصلًا، وهي الفجوة التي تسدها الإضافات المدفوعة. - تنقل واجهة Headless (Composable Frontends، Vue + Nuxt) قائمة SEO كلها، أي خريطة الموقع وcanonical وmeta والبيانات المنظمة، إلى طبقة العرض في Nuxt. ولا تنطبق إعدادات الإدارة، وقد يكون البناء سيئ الضبط أسوأ لـSEO.
- مشكلات التوسع: تكرار محتوى المتغيرات، ونمو جدول
seo_urlبما يقارب المتغيرات × اللغات، وسوء الإعدادات الافتراضية مثل ID الفئة في URL وإشارات الترقيم. تكفي الأدوات الأصلية للكتالوجات الصغيرة، ويحتاج التوسع إلى إضافات أو تطوير.
الوثائق الرسمية
وثائق المصادر الأولية من Shopware وGoogle.
Shopware
- إعدادات SEO: قوالب URL وcanonical وسلوك التحويل — صفحة SEO الأساسية في الإدارة، وفيها متغيرات Twig والاختصار والمرشحات وملاحظة إعادة البناء
dal:refresh:index. - إعدادات خريطة الموقع — استراتيجيات التحديث الثلاث و
sitemap:generateوعنوانsitemap.xmlوإخلاء ضمان الفهرسة. - قناة المبيعات: النطاقات وhreflang — نموذج Sales Channel > Domain وأوضاع توطين hreflang والنطاق الافتراضي الاحتياطي.
- إنشاء robots.txt: الطريقة القديمة اليدوية — نهج الملف اليدوي وإعادة الكتابة على الخادم قبل 6.7.1.0.
- إضافة عناوين SEO مخصصة للمطور — جدول
seo_urlوSeoUrlRouteInterfaceووسم الحاويةshopware.seo_url.route. - دليل إضافة خريطة الموقع للمطور — فئات
UrlProviderالمخصصة لإضافة إدخالات الخريطة وإزالتها. - ملاحظات إصدار 6.7.1.0: robots.txt الأصلي — الإصدار الذي أضاف robots.txt لكل نطاق في الإدارة.
- ملاحظات إصدار 6.7.9.0: بيانات JSON-LD المنظمة — الانتقال من Microdata إلى JSON-LD وعلامة
JSON_LD_DATAوأنواع المخطط. - Shopware Frontends: وثائق Headless ووحدة Nuxt — حزمة Composable Frontends بـVue وNuxt.
- SEO في Shopware: نظرة تسويقية — ملخص Shopware لميزات SEO الأصلية.
- البيانات المنظمة للمنتجات — حقول Product المطلوبة والموصى بها التي يستهدفها إخراج JSON-LD.
- مقدمة البيانات المنظمة — سبب التوصية بـJSON-LD بدل microdata.
- توحيد عناوين URL — إطار «إشارة لا قاعدة» وراء معالجة Shopware لـcanonical.
- إدارة المواقع متعددة المناطق واللغات — متطلبات وسم العودة الثنائي و
x-defaultالتي يقابلها إعداد النطاق الافتراضي في Shopware.
اقتباسات من المصدر
تصريحات موثقة من وثائق Shopware وتسويقها. يربط كل رابط مباشرةً بالفقرة المقتبسة في صفحة المصدر.
Shopware — قوالب SEO URL (الوثائق)
- “In the SEO settings you can define the structure for the SEO URLs of the product detail pages and categories. For this purpose you have a variety of variables at your disposal.” (الترجمة العربية): «تتيح إعدادات SEO ضبط بنية عناوين صفحات تفاصيل المنتج والفئات باستخدام طيف من المتغيرات المتاحة». Jump to quote
- “After you have made changes to the SEO template, it is necessary to rebuild the index so that the URLs are updated. You can do this from the console using the command
php bin/console dal:refresh:index.” (الترجمة العربية): «يلزم بعد تعديل قالب SEO أن تعيد بناء الفهرس لتحديث العناوين، ويمكن تنفيذ ذلك من وحدة التحكم بالأمر php bin/console dal:refresh:index». Jump to quote
Shopware — canonical (الوثائق)
- “A canonical URL is the URL of the page that the search engine assumes is the most representative of several duplicated pages on your site.” (الترجمة العربية): «عنوان URL الأساسي هو عنوان الصفحة التي يفترض محرك البحث أنها الأكثر تمثيلًا لعدة صفحات مكررة في موقعك». Jump to quote
Shopware — خريطة الموقع (الوثائق)
- “Shopware 6 does not provide a visitor sitemap (suffix
/sitemapafter your domain). The index filesitemap.xmlis created for evaluation by Google.” (الترجمة العربية): «لا تقدم Shopware 6 خريطةً للزوار عند المسار /sitemap؛ وإنما تنشئ ملف الفهرس sitemap.xml كي تقيمه Google». Jump to quote - “Shopware cannot guarantee that every URL will be crawled and indexed. This always depends on the search engine provider.” (الترجمة العربية): «لا تستطيع Shopware ضمان الزحف إلى كل عنوان URL وفهرسته؛ فهذا يعتمد دائمًا على موفر محرك البحث». Jump to quote
- في الوضع اليدوي: “the sitemap will only be created if you call the following command manually:
php bin/console sitemap:generate.” (الترجمة العربية): «لن تُنشأ خريطة الموقع إلا إذا استدعيت يدويًا الأمر php bin/console sitemap:generate». Jump to quote
Shopware — robots.txt (الوثائق)
- “The robots file is not created automatically in Shopware 6, but has to be created manually as a text file.” (الترجمة العربية): «لا يُنشأ ملف robots تلقائيًا في Shopware 6، بل يجب إنشاؤه يدويًا كملف نصي». (الطريقة القديمة قبل 6.7.1.0.) Source
Shopware — SEO الأصلي (التسويق)
- “Shopware includes many SEO features out of the box – from country- and language-specific URLs to meta data, hreflang, and performance optimizations, allowing you to build strong SEO without additional plugins.” (الترجمة العربية): «تتضمن Shopware كثيرًا من ميزات SEO جاهزةً، من عناوين URL الخاصة بالبلد واللغة إلى بيانات meta وhreflang وتحسينات الأداء، ما يتيح لك بناء SEO قوي من دون إضافات أخرى». Source
قائمة تدقيق SEO خاصة بـShopware
مراجعة مضبوطة وفق آليات Shopware الفعلية، لا قائمة عامة للتجارة الإلكترونية.
فحص الإصدار (نفذه أولًا)
- سجل إصدار Shopware الدقيق، فهو يحدد ما هو أصلي.
- robots.txt: في 6.7.1.0+ أدره لكل نطاق في Settings > General > Basic
information؛ وفي الإصدارات الأقدم تحقق من
/public/robots.txtيدوي، مع إعادة كتابة على الخادم لكل نطاق إذا كانت لديك نطاقات متعددة. - البيانات المنظمة: في 6.7.9.0+ قرر تفعيل العلامة
JSON_LD_DATA؛ وفي الإصدارات الأقدم تحقق من استمرار الحاجة إلى إضافة JSON-LD.
بنية URL
- اضبط قوالب SEO لكل نوع كيان، أي المنتج والفئة والصفحة المقصودة، في Settings > Shop > SEO ضبطًا مقصودًا لا على الافتراضي المجرد.
- أعد بناء الفهرس بعد أي تغيير للقالب (
php bin/console dal:refresh:index) حتى تتحدث العناوين الحالية فعلًا. - راجع “Remove Category ID from URL”، فهو يأتي مضبوطًا على No افتراضيًا.
- اضبط “Forwarding behavior” كي تصدر تغييرات URL رمز 301 بدل ترك العناوين القديمة حية.
Canonical والمتغيرات
- تأكد من صحة توحيد الفئات، فهو تلقائي لكن ينبغي التحقق منه.
- عالج تكرار محتوى المتغيرات، إما بضبط “Variant for Canonical URL” أو بتجاوز
product-detail/meta.html.twigأو إضافة توحّد المتغيرات على الأب.
خريطة الموقع
- اختر استراتيجية التحديث عمدًا: scheduled أو live أو manual. وإذا كانت يدوية فشغل
php bin/console sitemap:generateكلما تغيرت عناوين URL. - أرسل
sitemap.xmlإلى Google Search Console وBing Webmaster Tools.
دولي: متعدد اللغات أو النطاقات
- فعّل hreflang بوضع التوطين الصحيح: معيار ISO للمتغيرات الإقليمية، ولغة المتصفح في غير ذلك.
- اضبط النطاق الافتراضي بوصفه خيار
x-defaultالاحتياطي. - تحقق من ثنائية اتجاه وسوم العودة، وافحص إعدادات قنوات المبيعات المتعددة بحثًا عن فجوة الربط الأصلية، واستخدم إضافة عند الحاجة.
التوسع والأداء
- في الكتالوجات الكبيرة متعددة اللغات، أنشئ عناوين SEO للأب فقط ما أمكن، واحذف
صفوف
seo_urlالمحذوفة منطقيًا أوغير الأساسية، وفكر في الفهارس المركبة. - ضع
noindexعلى صفحات ترقيم المدونة أو الأرشيف عندما لا تضيف قيمة.
Headless (لـComposable Frontends فقط)
- ينتج وضع العرض في Nuxt ملف HTML قابلًا للزحف، عبر SSR أو الهجين أو ISR، لا CSR خالصًا.
- نفذ خريطة الموقع وcanonical ووسوم meta والبيانات المنظمة في تطبيق Nuxt؛ إذ لا تنتقل إعدادات SEO في الإدارة.
النماذج الذهنية
1. ثلاث فئات لا اثنتان، بسبب الإصدارات. صنّف كل مهمة Shopware SEO على أنها أصلية ومتاحة حاليًا، أوأصلية فقط في إصدار حديث (robots.txt ≥ 6.7.1.0 وJSON-LD ≥ 6.7.9.0)، أولا تزال من مسؤوليتك، مثل meta الجماعية، وcanonical من المتغير إلى الأب، وhreflang بين القنوات، وعرض Headless. وفئة الإصدار هي التي توقع الناس في الخطأ مع Shopware؛ لذلك تحقق دائمًا من الإصدار قبل أن تثق بنصيحة.
2. القوالب تنشئ والفهرس ينشر.
لا يغير تعديل قالب SEO إلا عناوين URL المستقبلية. ولا يصبح شيء حيًا حتى تعيد البناء
(dal:refresh:index). وعندما «لا يعمل تغيير القالب»، فهذا أول ما ينبغي فحصه.
3. Canonical نظام منفصل عن عناوين URL. لا تستنتج سلوك canonical في Shopware من قوالب URL؛ فهما آليتان غير مرتبطتين. تُوحّد الفئات تلقائيًا، بينما المتغيرات شبه يدوية ولا تصل إلى الأب من دون تجاوز للقالب. أبق النظامين منفصلين في ذهنك.
4. يعيش hreflang في نموذج النطاق.
لا يوجد محرر hreflang، فهو نتيجة لطريقة هيكلة قنوات المبيعات والنطاقات. نطاق واحد
يساوي لغة وعملة واحدة، والنطاق الافتراضي هو x-default. وإذا كان hreflang خاطئًا،
فافحص إعداد النطاق لا حقلًا باسم hreflang.
5. يعيد Headless ضبط القائمة كلها. بمجرد الانتقال إلى Composable Frontends تتوقف إعدادات SEO في الإدارة عن كونها مصدر الحقيقة، وتنتقل خريطة الموقع وcanonical وmeta والبيانات المنظمة كلها إلى Nuxt. ليست Headless «قائمة SEO نفسها لكن أسرع»، بل قائمة مختلفة تملكها واجهتك الأمامية.
ورقة غش Shopware SEO
أماكن الإعدادات في لوحة الإدارة
| الإعداد | المسار |
|---|---|
| قوالب SEO URL | Settings > Shop > SEO |
| Canonical للمتغير | Variant for Canonical URL (ضمن Product) |
| سلوك التحويل، 301 عند تغيير URL | Settings > Shop > SEO |
| استراتيجية خريطة الموقع | Settings > Shop > Sitemap |
| robots.txt (6.7.1.0+) | Settings > General > Basic information |
| hreflang والنطاقات | Settings > Sales Channel > Domains |
حدود الإصدارات
| الميزة | أصلية من |
|---|---|
| قوالب SEO URL وcanonical للفئات وخريطة الموقع وhreflang | 6.x (النواة) |
| robots.txt لكل نطاق في الإدارة | 6.7.1.0 |
بيانات JSON-LD المنظمة (العلامة JSON_LD_DATA) | 6.7.9.0 |
حقول Open Graph لكل منتج (og:title/description/image) | 6.7.9.0 |
| إزالة Microdata | مخطط لها في 6.8.0.0 |
أوامر سطر الأوامر
| الأمر | ما الذي يفعله؟ |
|---|---|
php bin/console dal:refresh:index | يعيد بناء فهرس SEO بعد تغيير القالب |
php bin/console sitemap:generate | يبني أو يعيد بناء خريطة الموقع يدويًا |
استراتيجيات خريطة الموقع
| الاستراتيجية | السلوك |
|---|---|
| scheduled | إنشاء تلقائي بمهمة مجدولة |
| live | إنشاء عند الغياب وإعادة إنشاء بعد وقت التحديث |
| manually | فقط عبر sitemap:generate، ويعاد مع كل تغيير في URL |
ما لا ينبغي فعله
- لا تغير قالب URL وتتوقع تحديث العناوين الحالية من دون إعادة البناء.
- لا تفترض أن “Variant for Canonical URL” يوجه المتغيرات إلى الأب؛ فهو لا يفعل.
- لا تنصح بتعديل robots.txt في الإدارة من دون التحقق من 6.7.1.0 أو أحدث.
- لا تشتر إضافة JSON-LD على 6.7.9.0 أو أحدث قبل فحص العلامة الأصلية.
- لا تفترض أن Headless (Composable Frontends) ترث إعدادات SEO في الإدارة.
أخطاء Shopware SEO التي ينبغي تجنبها
تعديل قالب SEO URL من دون إعادة بناء الفهرس
لماذا هو خطأ؟ تحتفظ عناوين URL الحالية بقيمها القديمة، فيبدو أن تغيير الإدارة لم
يفعل شيئًا. افعل هذا بدلًا منه: شغل php bin/console dal:refresh:index، ثم ازحف إلى
عناوين المنتجات القديمة والجديدة وتحقق من سلوك التحويل.
افتراض أن Variant for Canonical URL يشير إلى الأب
لماذا هو خطأ؟ يعين المنتقي الأصلي متغيرًا آخر، لا المنتج الأب؛ ولذلك قد تظل
المتغيرات شبه المتطابقة موزعة عبر عناوين مختلفة. افعل هذا بدلًا منه: استخدم تجاوز
product-detail/meta.html.twig أو إضافة مناسبة عندما يكون المنتج الأب هو العنوان
الأساسي المقصود.
تقديم نصيحة robots.txt تتجاهل الإصدار
لماذا هو خطأ؟ تبدأ إدارة robots.txt لكل نطاق من لوحة الإدارة في 6.7.1.0، بينما تحتاج المتاجر الأقدم إلى ملف وإعادة كتابة على الخادم. افعل هذا بدلًا منه: سجل إصدار Shopware الدقيق قبل اختيار مسار التنفيذ.
شراء إضافة JSON-LD قبل فحص الميزة الأصلية
لماذا هو خطأ؟ قدمت Shopware 6.7.9.0 إخراج JSON-LD أصليًا خلف العلامة
JSON_LD_DATA. وقد يكرر مصدر ثانٍ الترميز الموجود أو يتعارض معه. افعل هذا بدلًا
منه: افحص الإصدار والعلامة، وتحقق من الإخراج الحالي، ثم املأ الفجوات الحقيقية فقط.
توقع انتقال إعدادات SEO في الإدارة إلى واجهة منفصلة
لماذا هو خطأ؟ تنقل Composable Frontends العرض والبيانات الوصفية وcanonical وخرائط الموقع والبيانات المنظمة إلى Nuxt. افعل هذا بدلًا منه: تعامل مع Headless بوصفها تنفيذ SEO جديدًا للواجهة، وتحقق من استجابة الخادم مستقلةً.
أثبت أن تغيير قالب SEO URL دخل حيز التنفيذ
أعد البناء وافحص عناوين ممثلة
الاختبار: بعد حفظ القالب شغل php bin/console dal:refresh:index، ثم افتح عناوين
ممثلة للمنتجات والفئات والصفحات المقصودة التي يشملها التغيير.
النتيجة المتوقعة: تستخدم الكيانات الحالية نمط SEO URL الجديد، بدل اقتصاره على العناصر المنشأة حديثًا.
تفسير الفشل: لم تكتمل إعادة بناء الفهرس، أو تغير قالب قناة المبيعات الخطأ، أو يستخدم المسار قالب كيان مختلفًا.
نافذة المراقبة: فور انتهاء أمر الفهرسة وتحديث الذاكرة المؤقتة.
مشغل التراجع: استعد القالب السابق وأعد البناء إذا أنشأ النمط الجديد تعارضات أو مسارات مفقودة أو مشوهة.
تأكد من احتفاظ العناوين القديمة بوجهتها
الاختبار: اطلب عينة من عناوين SEO السابقة بعد إعادة البناء، وافحص حالة HTTP ورأس
Location.
النتيجة المتوقعة: يعيد كل عنوان قديم متغير إعادة التوجيه الدائمة المضبوطة إلى العنوان الأساسي الجديد المطابق.
تفسير الفشل: سلوك التحويل معطل، أو المسار القديم لم يُحتفظ به، أو تتعارض قاعدتا URL.
نافذة المراقبة: فور النشر، مع التكرار بعد إبطال الذاكرة المؤقتة.
مشغل التراجع: تراجع إذا أعادت العناوين القديمة المهمة 404 أو حلقة أو سلسلة تحويل أو اتجهت إلى المنتج أو الفئة الخطأ.
تحقق من اتفاق canonical وخريطة الموقع
الاختبار: افحص وسم canonical في الصفحة الجديدة، وحدد الكيان في sitemap.xml بعد
تشغيل استراتيجية تحديث خريطة الموقع.
النتيجة المتوقعة: تسمي الإشارتان عنوان SEO الجديد نفسه.
تفسير الفشل: إعداد canonical وإنشاء خريطة الموقع وفهرس URL غير متزامنة.
نافذة المراقبة: فورًا لـcanonical، وبعد إعادة إنشاء خريطة الموقع المجدولة أو الحية أو اليدوية لإخراج الخريطة.
مشغل التراجع: تراجع عن إصدار URL إذا أشارت الصفحات الأساسية إلى وجهات قديمة أو مفقودة بعد إعادة الإنشاء.
أدوات Shopware SEO
- Shopware Console (
bin/console) — الأمران اللذان يشغلان SEO فعليًا:dal:refresh:indexلإعادة بناء عناوين SEO بعد تغيير القالب، وsitemap:generateلبناء خريطة الموقع يدويًا. - Google Search Console — لإرسال خريطة الموقع، واستخدام URL Inspection للتحقق من canonical الذي اختارته Google وطريقة عرض صفحات المتغيرات، وعرض الاستهداف الدولي أو hreflang. وهي مرجعك لما تفعله Google فعليًا.
- Bing Webmaster Tools — لإرسال خريطة الموقع ثانيةً والتحكم في الزحف وفحص الموقع.
- Screaming Frog / Ahrefs Site Audit — للزحف إلى المتجر واكتشاف انفجار عناوين
المتغيرات وتكرارات
seo_urlعند التوسع وسلوك التحويل بعد تغيير القوالب والصفحات التي تغفلها خريطة الموقع. هكذا تجد فجوات Shopware الخاصة. - Rich Results Test / Schema Markup Validator — للتأكد من صحة إخراج JSON-LD في
6.7.9.0 ومطابقته للمحتوى المرئي بعد تفعيل العلامة
JSON_LD_DATA. - إضافات Shopware Store — حيث تُسد الفجوات الأصلية: مديرو hreflang بين قنوات المبيعات، ومديرو meta وعناوين SEO جماعيًا، وموفرو خرائط الموقع المتقدمة، وإضافات JSON-LD للنتائج الغنية في المتاجر الأقدم من 6.7.9.0.
- تجاوزات قوالب واجهة المتجر — لإصلاح canonical للمتغيرات؛ فتجاوز
product-detail/meta.html.twigبدل استخدام إضافة إذا كانت لديك قدرة تطويرية.
موارد تستحق وقتك
مواد ذات صلة في الموقع
- التوحيد الأساسي — الآليات العامة وراء سلوك Shopware التلقائي للفئات واليدوي للمتغيرات.
- hreflang — متطلبات وسوم العودة الثنائية و
x-defaultالتي يقابلها نموذج قناة المبيعات والنطاق الافتراضي في Shopware. - JavaScript SEO وSEO لأنظمة CMS المنفصلة — لماذا يحتاج بناء Composable Frontends بـNuxt إلى انضباط SSR وعرض خاص به.
Shopware الرسمية
- إعدادات SEO ، وإعدادات خريطة الموقع ، وقناة المبيعات والنطاقات.
- ملاحظات إصدار 6.7.1.0 (robots.txt) و6.7.9.0 (JSON-LD).
- Shopware Frontends (Headless).
من قطاع الصناعة
- Conductor Academy — أفضل ممارسات Shopware SEO — قائمة ممارس لمشكلات الإعدادات الافتراضية، مثل ID الفئة في URL وإشارات الترقيم وnoindex لترقيم المدونة.
- BrocksiNet — دراسة معمقة لعناوين Shopware SEO — تفاصيل جدول
seo_urlوحساب نمو المتغيرات × اللغات. - EXWE — تحسين SEO في Shopware 6: canonical لمتغيرات المنتجات — مشكلة canonical للمتغيرات وإصلاح تجاوز القالب.
- elgentos — shopware-seo-canonical-url على GitHub — إضافة مفتوحة المصدر لتوحيد المتغيرات على المنتج الأب.
- Qualimero — أدلة Shopware SEO — تغطية حديثة لـShopware SEO والاستعداد للذكاء الاصطناعي في السوقين الأوروبي والألماني.
- Kickbyte — Shopware Frontends: واجهة Headless بـNuxt — كيف تشكل طبقة Nuxt سلوك SEO في الواجهة المنفصلة.
- Shopware — SEO في Shopware: نظرة تسويقية — ملخص المورد لميزات SEO الأصلية.
اختبر نفسك: Shopware SEO
خمسة أسئلة سريعة عن طريقة عمل SEO في Shopware 6. اختر إجابة لكل سؤال ثم تحقق.
سجل التغييرات
تم التحديث في 22 أغسطس 2026.
ملخص تحريري وتفاصيل التغيير المسجلة.تفاصيل التغيير
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
المقارنة الكاملة غير متاحة — لم تُؤرشف لقطة سابقة لهذه المراجعة.
تم التحديث في 11 أغسطس 2026.
ملخص تحريري وتفاصيل التغيير المسجلة.تفاصيل التغيير
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
المقارنة الكاملة غير متاحة — لم تُؤرشف لقطة سابقة لهذه المراجعة.
تم التحديث في 19 يوليو 2026.
ملخص تحريري وتفاصيل التغيير المسجلة.تفاصيل التغيير
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
-
تفاصيل التغيير متاحة حاليًا باللغة الإنجليزية.
المقارنة الكاملة غير متاحة — لم تُؤرشف لقطة سابقة لهذه المراجعة.