لماذا نقلنا موقعنا من ووردبريس إلى Astro (بعد 10 سنوات)
شغّلنا موقعنا على ووردبريس لأكثر من 10 سنوات قبل الانتقال إلى Astro. أردنا مشاركة تجربتنا وما تعلمناه.

نحن نبني إضافة ووردبريس، وقد نقلنا موقعنا بعيداً عن ووردبريس. أعرف كيف يبدو هذا.
شغّلنا موقعنا على ووردبريس لأكثر من 10 سنوات. كان يعمل. لكن مع الوقت، أصبحت المشاكل أصعب في التجاهل. عندما جاء تغيير علامة WSMS التجارية، قررنا البدء من جديد مع Astro، وأردنا مشاركة تجربتنا في حال كانت مفيدة لأي شخص يفكر في خطوة مماثلة.
ما الذي لم يعد يعمل
ما زلنا نعتقد أن ووردبريس رائع. إضافتنا مبنية له، ولن نذهب إلى أي مكان آخر. لكن بالنسبة لموقعنا التسويقي تحديداً، كنا نصطدم بنفس المشاكل:
تحميل الصفحات كان بطيئاً. كان لدينا إضافات تخزين مؤقت، CDN، وكل حيل التحسين المعتادة. لكن كل طلب كان لا يزال يصل إلى السيرفر وقاعدة البيانات لعرض صفحات لم تتغير منذ أسابيع. دائماً كان يبدو أثقل مما يجب.
سير العمل في التطوير كان صعباً أيضاً. كل شيء كان داخل قالب ووردبريس. التحكم بالإصدارات كان فوضوياً، لم يكن هناك نظام مكونات، ولا أمان في الأنواع. تغيير صغير كان يعني لمس أشياء كثيرة والأمل أن لا شيء ينكسر. بعد 10 سنوات، كان الكود ثقيلاً جداً.
ظللنا نتحايل على هذه المشاكل لسنوات، لكن وقت تغيير العلامة التجارية سألنا أنفسنا أخيراً: هل نحتاج فعلاً ووردبريس لهذا الجزء؟
كيف اخترنا Astro
نظرنا في عدة خيارات: Next.js، Hugo، Eleventy. قضينا أكثر الوقت في تقييم Next.js، لكن لموقع غني بالمحتوى مثل موقعنا، كان Astro أنسب بكثير. بناء أسرع، تجربة تطوير أكثر سلاسة، وبدون التعقيد الذي يأتي مع إطار عمل React كامل عندما لا تحتاجه. Astro بدا وكأنه بُني تماماً لما نحتاجه.
بعض الأشياء التي كانت مهمة لنا:
الصفحات ثابتة بشكل افتراضي. تُبنى مرة واحدة وقت النشر وتُقدم كـ HTML عادي من الحافة. بدون سيرفر، بدون استعلامات قاعدة بيانات وقت التشغيل. لموقع معظمه توثيق ومقالات وصفحات هبوط، هذا كان أكثر منطقية.
Astro لديه شيء اسمه Content Collections. هو أساساً طريقة لتنظيم كل محتواك كملفات Markdown/MDX مع مخططات محددة الأنواع. لدينا الآن أكثر من 2,000 ملف محتوى (مقالات المدونة، التوثيق، صفحات البوابات، سجل التغييرات)، وكلها تعيش في المستودع كملفات بدلاً من صفوف في قاعدة بيانات. العمل معها ممتع بشكل مفاجئ.
وعندما نحتاج تفاعلية (أداة بحث، حاسبة أسعار) يمكننا إضافة مكون React و Astro يرسل جافاسكريبت فقط لتلك القطعة. لا نرسل تطبيق React كامل مع كل تحميل صفحة.
تجربة التطوير أفضل بكثير بالنسبة لنا: TypeScript، Tailwind، إعادة تحميل فوري، Storybook لاختبار المكونات بشكل معزول. هذا هو سير العمل الذي أردناه لسنوات.
الذكاء الاصطناعي والأدوات جعلت هذا ممكناً
هذا هو الجزء الذي نحن أكثر حماساً لمشاركته. استخدمنا Claude لجزء كبير من هذا المشروع.
موقعنا يحتوي على أكثر من 200 مكون React. بناء كل هذه يدوياً، مع دعم RTL وقصص Storybook لكل واحد، كان سيستغرق وقتاً طويلاً جداً. الذكاء الاصطناعي تولى الكثير من العمل المتكرر بينما ركزنا نحن على قرارات التصميم والجودة.
استخدمناه أيضاً لترحيل سنوات من محتوى ووردبريس إلى ملفات MDX منظمة، ولترجمة الموقع إلى ثلاث لغات (الإنجليزية، الفارسية، العربية). الترجمات احتاجت تعديل يدوي للأسلوب والدقة، لكن وجود مسودة أولى جيدة جعل العملية كلها واقعية.
سبب كبير آخر لاختيارنا Astro: لأن المحتوى مجرد ملفات Markdown في مستودع، وكلاء البرمجة يعملون بشكل ممتاز معه. فريقنا يستخدم Claude Code و Codex يومياً، ويمكنهم قراءة وتعديل وإنشاء المحتوى والمكونات بدون أي إعداد خاص. بدون واجهة برمجة نظام إدارة محتوى، بدون استعلامات قاعدة بيانات. الوكلاء يعملون فقط مع الملفات، وهذا أسهل شيء يجيدونه.
لفحوصات الجودة، نستخدم SquirrelScan لمراجعة الصفحات من حيث إمكانية الوصول، تحسين محركات البحث، الأداء، ومشاكل أخرى. يلتقط أشياء كنا سنفوتها يدوياً، وأصبح جزءاً ثابتاً من سير عملنا قبل نشر التغييرات.
بصراحة، بدون الذكاء الاصطناعي وهذه الأدوات كان هذا المشروع سيستغرق وقتاً أطول بكثير. غيّر المعادلة لما هو ممكن لفريق صغير.
لم نترك ووردبريس بالكامل
هذا مهم. قسّمنا الأمور.
wsms.io هو موقع Astro. صفحات التسويق، المدونة، التوثيق، كل المحتوى العام. ثابت بالكامل، منشور على Cloudflare Pages.
my.wsms.io لا يزال ووردبريس مع WooCommerce. حسابات المستخدمين، المشتريات، إدارة التراخيص، الدفع. ووردبريس يتعامل مع هذا بشكل ممتاز، ولم نر سبباً لإعادة بنائه.
هذا التقسيم كان نظيفاً. الموقع التسويقي لا يحتاج قاعدة بيانات. بوابة الحسابات تحتاج. كل جانب يفعل ما يجيده.
دعم RTL يعمل فعلاً
هذا شخصي بالنسبة لنا. جزء كبير من قاعدة مستخدمينا يقرأ الفارسية والعربية، والحصول على RTL بشكل صحيح في ووردبريس كان دائماً مؤلماً. القوالب كانت تنكسر، الإضافات لم تدعمه جيداً، والحفاظ على تزامن المحتوى بين اللغات كان صداعاً دائماً.
مع Astro، بنينا دعم RTL في نظام المكونات من اليوم الأول. كل مكون يعرف اتجاه النص واللغة. الأيقونات تنعكس تلقائياً. الخطوط تُحمّل بشكل صحيح لكل لغة. ليس فكرة لاحقة. إنه جزء من طريقة عمل الموقع.
النتيجة أن مستخدمينا الناطقين بالفارسية والعربية يحصلون على موقع يبدو طبيعياً لهم، وليس مثل صفحة إنجليزية معكوسة.
ما الذي تغير بعد الانتقال
ليس لدينا معايير قياس رسمية، لكن الفروقات واضحة في الاستخدام اليومي:
الصفحات تُحمّل بشكل أسرع ملحوظ. HTML ثابت من حافة Cloudflare، بدون رحلات ذهاب وإياب للسيرفر.
العمل على الموقع ممتع فعلاً الآن. يمكننا تشغيل Storybook، بناء مكون، رؤيته بشكل معزول، ونشره خلال دقائق. سير العمل القديم كان فيه احتكاك أكثر بكثير.
النشر بسيط. ادفع إلى git، الموقع يُبنى ويصبح حياً عالمياً. بدون ترحيل قاعدة بيانات، بدون طقوس مسح التخزين المؤقت.
تكاليف الاستضافة انخفضت أيضاً. Cloudflare Pages مجاني للمواقع الثابتة، فالموقع التسويقي لا يكلفنا شيئاً للاستضافة. تغيير جيد مقارنة باستضافة ووردبريس المُدارة.
أضفنا البحث النصي الكامل باستخدام Pagefind، الذي يبني فهرسه وقت البناء. بحث عبر أكثر من 2,000 صفحة بدون أي تكلفة تشغيلية. كانت مفاجأة سارة.
بعض النصائح لمن يفكر في هذا
المواقع الثابتة تستطيع أكثر مما تظن. تفاجأنا بكم يمكن بناؤه مع Astro. ليس مقيداً. فقط انتقائي في أين يُشغّل الجافاسكريبت.
الملفات في مستودع أفضل من الصفوف في قاعدة بيانات لمحتوى مثل محتوانا. التحكم بالإصدارات، التعاون، النسخ الاحتياطي. كل شيء يصبح أبسط عندما يكون محتواك مجرد ملفات.
لست مضطراً لترحيل كل شيء. الإبقاء على ووردبريس للأجزاء التي يجيدها (التجارة الإلكترونية، الحسابات) كان القرار الصحيح لنا. المفتاح كان معرفة أي الأجزاء يجب أن تكون ثابتة وأيها لا.
الذكاء الاصطناعي يغير ما هو ممكن. مشروع بهذا الحجم كان يتطلب فريقاً كبيراً أو جدولاً زمنياً طويلاً. لم يعد هذا بالضرورة هو الحال.
ختاماً
إذا كنت تشغّل موقع محتوى على ووردبريس وكنت محبطاً من نفس الأشياء التي أحبطتنا (صفحات بطيئة، سير عمل تطوير مؤلم، قوالب صعبة الصيانة) قد يستحق الأمر النظر في Astro. نجح معنا بشكل ممتاز.
لا نقول أن ووردبريس سيئ. نحن حرفياً نبني برامج له. لكن لموقع مثل موقعنا، Astro كان الأداة الأفضل.
أردنا مشاركة هذا لأننا بحثنا عن تجارب مشابهة عندما كنا نتخذ القرار ولم نجد الكثير من فرق في وضعنا. نأمل أن يكون هذا مفيداً لأحد.