تحسين محركات البحث لتطبيقات الويب التقدمية

تحسين محركات البحث لتطبيقات الويب التقدمية — لماذا "التحول إلى تطبيق ويب تقدمي" لا يحسن الترتيب، ولماذا ملف manifest.json غير ذي صلة بتحسين محركات البحث، وكيف يمكن لعامل الخدمة المضبوط بشكل خاطئ أن يقدم لجوجل بوت نسخة مخزنة قديمة، وأين تتداخل (ولا تتداخل) مقاييس الويب الأساسية وHTTPS مع تحسين محركات البحث.

نُشر أول مرة: 3 يوليو 2026 · آخر تحديث: 6 أغسطس 2026 · Advanced
اللغات

تطبيق الويب التقدمي هو موقع ويب محسّن بملف manifest وعامل خدمة — لا يزال موقعًا عاديًا (عادةً JavaScript/SPA) بالنسبة لجوجل، دون أي ميزة ترتيب متأصلة. ملف manifest.json غير ذي صلة بتحسين محركات البحث (يتحكم في قابلية التثبيت، وليس الفهرسة). الخطر الحقيقي الوحيد الخاص بتطبيقات الويب التقدمية هو عامل الخدمة: لا يقوم مُقدِّم جوجل بتشغيل عمال الخدمة عند الفهرسة، لذا فإن استراتيجية HTML التي تعطي الأولوية للذاكرة المؤقتة يمكن أن تسلم لجوجل بوت صفحة قديمة أو غير متصلة بالإنترنت. أصلح ذلك باستخدام الشبكة أولاً لـ HTML، والباقي هو تحسين محركات البحث العادي لـ JavaScript/SPA.

TL;DR — PWA هو manifest + service worker فوق ما هو دائمًا تقريبًا موقع JS/SPA — لذا تنطبق قواعد العرض من JavaScript/SPA SEO دون تغيير، بالإضافة إلى مخاوف خاصة بـ PWA. لا تمنح جوجل PWAs أي ميزة في الترتيب (مولر). يتحكم manifest.json في قابلية التثبيت، وليس الفهرسة، ولا يوجد دليل على أن أنظمة الترتيب تقرأه. الـ service worker هو الخطر الحقيقي: لا يقوم مُقدِّم جوجل بتشغيل service workers عند الفهرسة، لذا يمكن لاستراتيجية HTML أولاً التخزين المؤقت أن تفهرس قشرة قديمة أو غير متصلة — استخدم network-first لـ HTML، وcache-first للأصول الثابتة. HTTPS هو شرط صارم لـ service workers وبشكل منفصل إشارة ترتيب صغيرة؛ لا تربط هذه في “PWAs ترتيب أفضل.” Core Web Vitals هو التداخل الشرعي الوحيد، وهو الهندسة، وليس تسمية PWA.

Evidence for this claim A progressive web app is still a web application; installability features do not replace indexable HTML and URLs. Scope: Current official or standards documentation. Confidence: high · Verified: web.dev: Progressive web apps Evidence for this claim JavaScript applications must expose crawlable links, meaningful content, metadata, and status behavior to Google. Scope: Current official or standards documentation. Confidence: high · Verified: Google: JavaScript SEO basics

PWA هو موقع ويب أولاً

الإطار الأكثر فائدة: التطبيق التقدمي للويب هو موقع ويب عادي مع شيئين مضافين فوقه. وفقًا لتعريف جوجل الخاص، PWAs “are web apps built and enhanced with modern APIs to provide enhanced capabilities while still reaching any web user on any device with a single codebase.” (ترجمة) «هي تطبيقات ويب مبنية ومعززة بواجهات برمجة تطبيقات حديثة لتوفير قدرات محسنة مع الوصول إلى أي مستخدم ويب على أي جهاز بقاعدة بيانات واحدة.» الركائز الثلاث التي تسميها جوجل هي Capable وReliable وInstallable — لاحظ أن أياً من الثلاثة ليس “قابلًا للترتيب.”

من الناحية المعمارية، تكون هذه القاعدة البرمجية دائمًا تقريبًا إطار عمل جافاسكريبت يشغّل نمط تطبيق الصفحة الواحدة. وهذا يعني: كل ما يتحكم في قابلية فهرسة JS/SPA يتحكم في قابلية فهرسة PWA، دون أي تعديل. روابط <a href> حقيقية وتوجيه History-API (وليس أجزاء التجزئة) لقابلية العنونة؛ عرض من جانب الخادم أو المعالجة المسبقة لتوفر المحتوى؛ canonical وtitle وmeta لكل مسار في DOM المعروض. إذا كنت قد قرأت مواد JavaScript SEO وSPA SEO، فأنت تعرف بالفعل 90% من PWA SEO — وضع فشل غلاف التطبيق، على وجه الخصوص، هو أحد الأمور التي توثقها Google صراحةً: “Some JavaScript sites may use the app shell model where the initial HTML does not contain the actual content and Google needs to execute JavaScript before being able to see the actual page content that JavaScript generates.” (ترجمة) «قد تستخدم بعض مواقع جافاسكريبت نموذج غلاف التطبيق حيث لا يحتوي HTML الأولي على المحتوى الفعلي وتحتاج Google إلى تنفيذ جافاسكريبت قبل أن تتمكن من رؤية محتوى الصفحة الفعلي الذي يولده جافاسكريبت.» إن PWA التي تُصدر غلافًا فارغًا دون SSR/معالجة مسبقة ترث هذه المشكلة مباشرة.

لذا فإن النطاق الصادق لمقالة SEO خاصة بـ PWA صغير: ملف manifest، وعامل الخدمة. كل شيء آخر هو JS/SPA SEO يرتدي manifest.

الأسطورة الأساسية: “التحول إلى PWA” لا يحسّن التصنيفات

هذا هو العنوان الرئيسي. كانت Google مباشرة بشكل غير معتاد بشأنه. قال جون مولر، في جلسة ساعات عمل Search Central، إن PWAs “currently don’t have any advantage in Google Search, and as far as I know, there are no plans to change this,” (ترجمة) «لا تتمتع حاليًا بأي ميزة في بحث Google، وعلى حد علمي، لا توجد خطط لتغيير ذلك،» — وعندما سُئل عما إذا كان التحويل إلى PWA سيساعد — “By default, saying going to a PWA will make your rankings better — I don’t think that is the case.” (ترجمة) «بشكل افتراضي، القول إن التحول إلى PWA سيجعل تصنيفاتك أفضل — لا أعتقد أن هذا هو الحال.»

كما استبق الحجة المضادة المعتادة، وهي أن “منافسنا تحول إلى PWA وقفزت تصنيفاته.” كانت إجابته: “So just the fact that one of your competitors has moved from one framework to another, and has seen an improvement in search, that framework change from my point of view wouldn’t be responsible for that.” (ترجمة) «لذا مجرد حقيقة أن أحد منافسيك انتقل من إطار عمل إلى آخر، وشهد تحسنًا في البحث، فإن تغيير الإطار هذا من وجهة نظري لن يكون مسؤولًا عن ذلك.» وعن السبب: “These are essentially different ways of making a website… for the most part, we see these as normal HTML pages.” (ترجمة) «هذه في الأساس طرق مختلفة لإنشاء موقع ويب… في معظم الأحيان، نعتبرها صفحات HTML عادية.»

حيث ترتبط إعادة إطلاق PWA بالفعل بارتفاعات التصنيف، فإن الأمر يعود إلى المتغيرات المربكة التي تأتي مع أي إعادة بناء كبيرة: ربط داخلي حديث، محتوى منعش وموسع، تحسينات سرعة حقيقية، وعادةً حملة تسويقية مرتبطة بإعادة الإطلاق. لا يتطلب أي من ذلك تسمية PWA. إذا أعدت بناء موقع عضوي النمو عمره 10 إلى 15 عامًا، فأنت تغير عشرات الأشياء في وقت واحد — نسب النتيجة إلى “PWA” هو خطأ ارتباط.

تصريحات مولر في ساعات العمل أعلاه تم نقلها بواسطة Search Engine Journal وبشكل مستقل بواسطة Search Engine Roundtable تغطي نفس جلسة نوفمبر 2021؛ لم أعد مشاهدة الفيديو الأصلي، لذا تعامل معها باعتبارها رسمية منقولة.

Manifest.json: قابلية التثبيت ≠ قابلية الفهرسة

ملف manifest.json موجود لجعل تطبيقك قابلًا للتثبيت. حقوله — name, short_name, icons, start_url, display, theme_color — تتحكم في مطالبة التثبيت، وأيقونة الشاشة الرئيسية، وشاشة البداية، وما إذا كان التطبيق يفتح بشكل مستقل أو في علامة تبويب المتصفح. هذه هي المهمة بأكملها.

لا يوجد دليل على أن أنظمة تصنيف أو فهرسة Google تقرأ manifest كإشارة. التأكيد الخارجي الأوضح هو قائمة فحص PWA الخاصة بـ Google، والتي تدرج “Is installable” (ترجمة) «قابل للتثبيت» و*“Discoverable in search”* (ترجمة) «قابل للاكتشاف في البحث» كـ فئتين منفصلتين ومستقلتين في قائمة الفحص — حيث يتم تعريف قابلية الاكتشاف على أنها أساسيات SEO عادية: “Enable search engine discovery through unique URLs, descriptive titles, meta descriptions, and structured data.” (ترجمة) «تمكين اكتشاف محرك البحث من خلال عناوين URL فريدة وعناوين وصفية وأوصاف meta وبيانات منظمة.» قابلية التثبيت (مدفوعة بـ manifest) وقابلية الاكتشاف (SEO الكلاسيكي) تُعتبران اهتمامين متوازيين، لا يغذي أحدهما الآخر. لذا: احتفظ بـ manifest صالح لأنه ما يجعل التطبيق قابلًا للتثبيت — فقط لا تضعه تحت SEO.

لا تنشر Google صفحة تنص بكلمات دقيقة على أن manifest.json مستبعد من الترتيب؛ هذا استنتاج مدعوم جيدًا من عبارة “لا ميزة”، وفصل القائمة بين الفئتين، والغياب التام للملف عن وثائق عوامل ترتيب Google — صِغها على أنها “لا يوجد دليل على قراءته”، وليس “مؤكد تجاهله”.

عمال الخدمة: خطر تحسين محركات البحث الوحيد الحقيقي الخاص بـ PWA

إليك الحقيقة الأهم، وهي خاصة بـ PWA: خدمة العرض من Google لا تشغّل عامل الخدمة الخاص بك عندما تعرض صفحة للفهرسة. السبب، من Martin Splitt: “As we have to assume that someone clicking on your page from a SERP is a first-time visitor, running a service worker is usually not going to do much good.” (ترجمة) «نظرًا لأنه يتعين علينا افتراض أن شخصًا ينقر على صفحتك من نتائج محرك البحث هو زائر لأول مرة، فإن تشغيل عامل الخدمة عادةً لن يفيد كثيرًا.» الهدف الأساسي لعامل الخدمة هو تسريع الزيارات المتكررة من ذاكرة التخزين المؤقت — وGooglebot، بحكم التصميم، يُعامل دائمًا كزائر لأول مرة، لذلك لا يوجد شيء لتسريعه. Splitt مرة أخرى: “We’re not supporting that because users clicking onto your page from the search result might never have been there beforehand.” (ترجمة) «نحن لا ندعم ذلك لأن المستخدمين الذين ينقرون على صفحتك من نتيجة البحث ربما لم يزوروها من قبل.» وقد أكد Mueller أن هذه سياسة مستقرة، وليست حالة مؤقتة: “I wouldn’t expect it to change — it’s computationally expensive to run service-workers in the background like this for indexing.” (ترجمة) «لا أتوقع أن تتغير — إن تشغيل عمال الخدمة في الخلفية بهذه الطريقة للفهرسة مكلف حسابيًا.»

هذه التصريحات الثلاثة ينقلها SearchViu (Splitt في Google I/O 2019/2020؛ Mueller نُقل في يوليو 2023)؛ لقد تأكدت من أن اقتباسي Splitt وMueller هما سلاسل فرعية دقيقة في تلك الصفحة لكنهما نقل من طرف ثالث، وليس عنوان URL مملوكًا لـ Google. لاحظ أيضًا أن “لا يعمل أبدًا” مطلقة أكثر من اللازم — أشار Splitt من Google إلى أن عمال الويب يمكن أن ينفذوا أحيانًا؛ الصياغة الآمنة هي “the rendering service doesn’t run service workers by design,” (ترجمة) «خدمة العرض لا تشغّل عمال الخدمة حسب التصميم»، وليس “تحت أي ظرف”.

فلماذا يعتبر ذلك خطرًا؟ لأن عامل الخدمة الخاص بك يعمل بالفعل في متصفحات المستخدمين الحقيقيين، وإذا أخبرته بتقديم HTML بأولوية ذاكرة التخزين المؤقت — إرجاع النسخة المحفوظة، وتخطي الشبكة — فسيرى الزائر المتكرر الحقيقي صفحة سريعة من ذاكرة التخزين المؤقت، لكن هذه استراتيجية لا ينفذها Googlebot أبدًا. الخطر هو الحالة المعاكسة: نمط تخزين مؤقت يعيد، تحت أي شرط خطأ أو احتياطي، مستندًا قديمًا أو صفحة الاحتياط دون اتصال. نظرًا لأن العرض عديم الحالة وتتعامل خدمة عرض الويب مع كل جلب كأنه جديد، فإن استراتيجية التخزين المؤقت غير المهيأة بشكل صحيح هي الطريقة التي ينتهي بها الأمر بـ PWA إلى فهرسة Googlebot لقشرة قديمة أو فارغة دون اتصال بدلاً من المحتوى الحي.

القاعدة الأساسية لاستراتيجية التخزين المؤقت:

  • مستندات HTML → الشبكة أولاً (أو إعادة التحقق من القديم أثناء إعادة التحقق مع TTL قصير). احصل على الصفحة الحية؛ استخدم ذاكرة التخزين المؤقت فقط كاحتياط دون اتصال، وتأكد من أن هذا الاحتياط ليس ما ستفهرسه عملية زحف جديدة أبدًا.
  • الأصول الثابتة (JS، CSS، الصور، الخطوط) → أولوية ذاكرة التخزين المؤقت مقبولة ومرغوبة — لا تتغير لكل طلب وليست المستند القابل للفهرسة.

كيفية تدقيق ذلك: قارن ما يراه Googlebot بما يقدمه متصفح الزائر المتكرر من ذاكرة التخزين المؤقت. استخدم فحص عنوان URL في Search Console (الاختبار المباشر) لرؤية HTML المعروض الذي تحصل عليه Google فعليًا، وتحقق منه مقابل الصفحة الحية. إذا تباعدا، فإن عامل الخدمة أو إعداد SSR هو المشتبه به الأول. وراقب مهلات العرض في الإعدادات الهجينة — كما لاحظ Hamlet Batista من عصر العرض الديناميكي، “Rendering services won’t wait forever for a page to finish loading.” (ترجمة) «لن تنتظر خدمات العرض إلى الأبد حتى تنتهي الصفحة من التحميل.» (تلك المقالة المحددة تتعلق بالعرض الديناميكي، الذي تثبطه Google الآن لصالح SSR — استشهد بمبدأ المهلة، وليس بالنمط.)

HTTPS: شرط لعامل الخدمة، وبشكل منفصل إشارة ترتيب صغيرة

سترى منشورات تحسين محركات البحث لـ PWA توحي بأن “PWAs تحتاج إلى HTTPS، وHTTPS يعزز الترتيب، لذلك PWAs أكثر ملاءمة لتحسين محركات البحث.” حقيقتان صحيحتان، لكنهما مرتبطتان بشكل خاطئ.

حقيقة أولى: لا تعمل عمال الخدمة إلا في سياق آمن. وفقًا لـ MDN: “Service workers are only available in secure contexts: this means that their document is served over HTTPS, although browsers also treat http://localhost as a secure context, to facilitate local development.” (ترجمة) «عمال الخدمة متاحون فقط في السياقات الآمنة: وهذا يعني أن مستندهم يُقدَّم عبر HTTPS، على الرغم من أن المتصفحات تعامل أيضًا http://localhost كسياق آمن، لتسهيل التطوير المحلي.» هذه قاعدة منصة متصفح، وليست تكتيك SEO — بدون HTTPS، لا يوجد عامل خدمة، نقطة انتهت.

حقيقة ثانية: HTTPS هو إشارة ترتيب حقيقية في Google، لكنها ضئيلة جدًا. إعلان Google الخاص بعام 2014: “we’re starting to use HTTPS as a ranking signal. For now it’s only a very lightweight signal — affecting fewer than 1% of global queries, and carrying less weight than other signals such as high-quality content.” (ترجمة) «نبدأ في استخدام HTTPS كإشارة ترتيب. في الوقت الحالي، هي إشارة خفيفة جدًا فقط — تؤثر على أقل من 1% من الاستعلامات العالمية، وتحمل وزنًا أقل من إشارات أخرى مثل المحتوى عالي الجودة.»

النقطة: أي موقع HTTPS يحصل على نفس الإشارة الصغيرة — سواء كان PWA أم لا. لا يحصل PWA على ائتمان SEO إضافي لـ HTTPS؛ بل لا يمكنه العمل بدونه. لا تبيع HTTPS كفائدة SEO لـ PWA.

Core Web Vitals: التداخل الشرعي الوحيد

إذا كان هناك مكان حقيقي يلتقي فيه “PWA جيد” و”SEO جيد”، فهو الأداء. تبدأ إرشادات Google لـ PWA بالموثوقية — “A reliable Progressive Web App feels fast and dependable regardless of the network” (ترجمة) «تطبيق ويب تقدمي موثوق يشعر بالسرعة والاعتمادية بغض النظر عن الشبكة» — وCore Web Vitals هي عامل ترتيب مؤكد (وإن كان متواضعًا). تطبيق PWA مُصمم جيدًا يحمّل بسرعة ويبقى سريع الاستجابة سيميل إلى تحقيق نتائج جيدة في Vitals.

لكن اقرأ السببية بعناية: إنها الهندسة، وليس كونها PWA. تطبيق PWA منتفخ — حزمة JS ضخمة، ترطيب يحجب العرض، عامل خدمة مفرط الحماس — يمكن أن يسجل بسهولة نتائج Core Web Vitals أسوأ من صفحة عادية تُقدَّم من الخادم. فوز Vitals يأتي من القيام بعمل الأداء جيدًا، وهو ما يمكنك فعله مع أو بدون manifest. كونك PWA لا يضمن Vitals جيدة ولا يمنحك اختصارًا إليها.

الميزات الشبيهة بالتطبيقات هي تجربة مستخدم، وليست عوامل ترتيب

الإضافة إلى الشاشة الرئيسية، الوضع دون اتصال، الإشعارات الفورية، التنقل الشبيه بالتطبيقات — كلها فوائد PWA حقيقية وقيمة، وكلها ميزات تفاعل/احتفاظ، وليست مدخلات فهرسة أو ترتيب. قائمة تحقق PWA من Google تجعل التقسيم صريحًا بوضع “قابل للتثبيت” و”قابل للاكتشاف في البحث” في فئات منفصلة.

لا تعامل “قابل للتثبيت” كقدرة واحدة وعالمية أيضًا — فهي تختلف حسب المتصفح ونظام التشغيل، وهو سبب إضافي لعدم كونها إشارة SEO (لن يكون لدى Google سلوك متسق عبر المتصفحات لتكافئه). حدث beforeinstallprompt الذي يسمح لـ PWA بعرض واجهة التثبيت المخصصة الخاصة به هو آلية خاصة بـ Chromium فقط؛ وفقًا لدليل قابلية تثبيت PWA من MDN، فهو “not supported on iOS.” (ترجمة) «غير مدعوم على iOS.» على iOS Safari، يحدث التثبيت فقط من خلال تدفق مشاركة ← إضافة إلى الشاشة الرئيسية اليدوي (الممتد إلى Chrome وEdge وFirefox وOrion على iOS 16.4+، وكلها تستخدم محرك WebKit المطلوب من Apple على iOS وبالتالي تشارك هذا القيد)، وليس عبر مطالبة تلقائية. لا شيء من ذلك يغير صورة SEO — بل يعني فقط أن “هل PWA الخاص بي قابل للتثبيت” ليس حقيقة نعم/لا مستقلة عن المتصفح ونظام التشغيل الذي يتواجد عليه الزائر.

Twitter Lite هو دراسة الحالة التي يلجأ إليها الجميع كدليل على أن “PWA يساعد SEO” — ونتائجه الموثقة حقيقية (زيادة 65% في الصفحات لكل جلسة، زيادة 75% في التغريدات المرسلة، انخفاض 20% في معدل الارتداد) — لكن كل واحدة من هذه هي مقياس تفاعل. دراسة الحالة الخاصة بـ Google عنه لا تذكر SEO أو البحث العضوي أو الترتيبات على الإطلاق. نتيجة رائعة؛ عمود خاطئ.

واجهات متاجر PWA للتجارة الإلكترونية: إشارة قصيرة

واجهات متاجر PWA تضيف بعض التعقيدات التي تستحق الذكر، لأنها تضاعف مخاطر SPA. التوجيه من جانب العميل مع التنقل متعدد الأوجه يمكن أن يولد عناوين URL تبدو قابلة للزحف وتؤدي جميعها إلى نفس الهيكل، أو انفجارًا في عناوين URL ذات المعلمات. حالة سلة التسوق والدفع تعيش من جانب العميل ويجب ألا تمنع أبدًا محتوى المنتج القابل للفهرسة. ويجب أن تعيد كل صفحة منتج بشكل مستقل HTML حقيقي وفريد — فخ التطبيق-الهيكل هو الأكثر تكلفة تحديدًا حيث لديك أكبر عدد من الصفحات. الإصلاحات هي نفسها من SEO للتجارة الإلكترونية والتنقل متعدد الأوجه؛ طبقة PWA لا تغيرها، بل تجعل انضباط SSR/prerender أكثر أهمية.

Bing و PWAs

يستحق سطرًا: لم تنشر Bing أي إرشادات خاصة بـ PWA تتعلق بالترتيب أو الفهرسة. إرشادات مشرفي المواقع الخاصة بها محايدة تجاه PWA (قابلية الزحف العامة، خرائط المواقع، robots.txt، IndexNow)، ووثائق Microsoft الواسعة حول PWA تتعلق بالكامل بمطالبات تثبيت Edge، وPWABuilder، وتغليف متجر Microsoft — التوزيع والتثبيت، مسار منفصل عن فهرسة بحث الويب. لذا بالنسبة إلى Bing، اعتمد على إرشادات قابلية الزحف القياسية لتطبيقات JavaScript؛ لا يوجد استثناء خاص بـ PWA لتعلمه.

الخلاصة

SEO لتطبيقات الويب التقدمية (PWA) هو SEO لتطبيقات JavaScript/SPA مع إضافتين محددتين فقط: تجاهل ملف البيان (manifest) كمدخل لتحسين محركات البحث (فهو خاص بقابلية التثبيت)، وتكوين عامل الخدمة (service worker) بحيث لا يحاصر زاحف جوجل (Googlebot) أبدًا في ذاكرة تخزين مؤقتة قديمة أو غير متصلة بالإنترنت. إذا أتقنت هاتين النقطتين، فسيتم فهرسة تطبيق PWA تمامًا مثل أي موقع آخر مبني جيدًا — لا مكافأة، لا عقوبة، فقط نفس القواعد.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.