مباشر · الحالة OK
Back to blog
التطوير14 min

الانتقال من WordPress إلى Next.js: دليل خطوة بخطوة 2026

TL;DR

ترحيل موقع WordPress إلى Next.js يتبع 7 خطوات: تدقيق المحتوى الحالي، تصدير عبر WP REST API أو إضافة، اختيار بنية Next.js (app router + static export)، إعادة تصميم الواجهة، إعداد تحويلات 301 للحفاظ على السيو، التحقق عبر Search Console، نشر تدريجي. الترحيل المُنفّذ بإتقان يحافظ على الترتيب ويقسّم TTFB على 10. مواقع OptionWeb: 4-8 أسابيع حسب الحجم.

Julien Daniel
ByJulien Daniel
Founder & CTO, OptionWeb
Share
مخطط ترحيل WordPress إلى Next.js مع تدفق المحتوى والتحويلات

لا يزال WordPress يشغّل 43% من الويب العالمي في 2026، لكن حدوده تظهر سريعاً: أداء متواضع جاهز (TTFB 600-1500ms عادةً)، سطح هجوم كبير (43% من اختراقات الويب تستهدف WordPress حسب Sucuri 2024)، اعتماد على الإضافات، تكاليف خفية في التحديثات. لكثير من الشركات الصغيرة التي نرافقها في OptionWeb، لم يعد السؤال 'هل نُرحّل؟' بل 'كيف نُرحّل دون كسر السيو؟'. إليك دليل العمل الكامل المطبَّق على أكثر من 30 ترحيلاً.

1. لماذا الترحيل (ومتى لا يجب فعل ذلك)

الترحيل منطقي في 4 حالات: أداء حاسم للأعمال (تجارة إلكترونية، lead gen قوي)، إعادة تصميم كبرى مُخطط لها أصلاً، فريق تقني يريد الخروج من legacy plugin hell، أو الحاجة للتوسع دولياً (i18n الأصلي في Next.js يتفوق على WPML/Polylang).

لا تُرحّل إذا: فريق تحريري غير تقني بلا بديل CMS، ميزانية < 10 000 €، إعادة تصميم لمجرد 'أن نكون عصريين' (السبب الحقيقي مخفي)، أو موقع بـ >100 إضافة حرجة بلا مكافئ في Next.js.

2. تدقيق مسبق لموقع WordPress

التدقيق هو الخطوة الأكثر إهمالاً والأكثر حسماً. تجاوز هذه المرحلة = خسارة سيو مضمونة وأخطاء في الإنتاج.

أدوات للتدقيق الكامل:

  • Screaming Frog SEO Spiderزحف لكل العناوين (مجاني حتى 500 URL، 159 £/سنة بعد ذلك). تصدير CSV للعناوين وأكواد الحالة وميتا تاغ و H1 والروابط الداخلية.
  • Google Search Consoleتصدير أفضل 1000 استعلام أداءً + صفحات الهبوط. يحدد العناوين التي يجب الحفاظ عليها مطلقاً.
  • Wayback Machineلقطة تاريخية للموقع كمرجع للتصميم والمحتوى.
  • WordPress phpMyAdminجرد لـ custom post types و meta fields والتصنيفات والتعليقات.
  • Google Analytics 4أفضل 50 صفحة حسب الجلسات وسلوك المستخدم ومعدل الارتداد. هذه الصفحات يجب أن تعمل قطعاً بعد الترحيل.

مخرجات التدقيق: جدول Excel بكل العناوين (القديمة + الجديدة)، قائمة الإضافات الحرجة مع بدائلها في Next.js، جرد الوسائط (الحجم الكلي، الصيغ)، قائمة التكاملات الخارجية (الدفع، CRM، البريد، الدردشة)، مخطط بنية URL الجديدة.

3. تصدير المحتوى

ثلاث طرق حسب الحجم والتعقيد:

الطريقةمتى تُستخدمالحدود
WP REST API (/wp-json)موقع بـ API مفتوحة، تطوير تقنيمصادقة، ترقيم صفحات، وسائط منفصلة
إضافة WP All Exportحجم كبير، بنية مخصصة59-99 €، منحنى تعلم
تصدير XML الأصلي WPموقع صغير، محتوى قياسيبلا وسائط، بنية صلبة
Scrape عبر Puppeteerموقع لم تعد تملك إدارتهبطيء، هش، قانونياً مشكوك فيه

في OptionWeb نجمع بين WP REST API (محتوى منظم) + سكربت Node.js لتنزيل الوسائط بالتوازي. تُحوَّل المقالات إلى MDX أو JSON حسب البنية المستهدفة. احسب 1-2 يوم لـ 500 مقال.

scripts/export-wp.tsts
import fs from 'node:fs/promises';
import path from 'node:path';

const WP_API = 'https://votre-site.com/wp-json/wp/v2';

async function fetchAllPosts() {
  const allPosts = [];
  let page = 1;
  while (true) {
    const res = await fetch(`${WP_API}/posts?per_page=100&page=${page}&_embed`);
    if (!res.ok) break;
    const posts = await res.json();
    if (posts.length === 0) break;
    allPosts.push(...posts);
    page++;
  }
  return allPosts;
}

const posts = await fetchAllPosts();
await fs.writeFile('content/posts.json', JSON.stringify(posts, null, 2));

4. بنية Next.js المستهدفة

توصية 2026 لترحيل WordPress → Next.js: App Router + static export. المزايا: نشر على أي خادم (دون الحاجة إلى Node.js)، TTFB بالميلي ثانية، حصانة من ثغرات WordPress، قابلية توسع لانهائية.

next.config.mjsts
/** @type {import('next').NextConfig} */
const nextConfig = {
  output: 'export',
  images: { unoptimized: true },
  trailingSlash: true,
  i18n: undefined, // gérer via app/[lang]/ pour static export
};
export default nextConfig;

بنية المجلدات الموصى بها:

  • app/[lang]/مسارات متعددة اللغات، page.tsx، [slug]/page.tsx، blog/page.tsx، blog/[slug]/page.tsx
  • content/JSON أو MDX للمحتوى المُرحَّل، مع schema Zod للتحقق وقت البناء
  • components/مكونات React (تحل محل كتل Gutenberg)
  • public/وسائط مُرحَّلة من wp-content/uploads/
  • lib/أدوات (markdown إلى React، خريطة hreflang، إلخ)

5. إعادة تصميم الواجهة والمكونات

الخطأ #1: محاولة استنساخ ثيم WordPress pixel-perfect. طويل، مُمل، ويُهدر الفرصة.

الأسلوب الموصى به: ابدأ من wireframes لكل نوع صفحة (الرئيسية، صفحة خدمة، مقال مدونة، تواصل، إلخ)، أعِد التصميم بمكونات Tailwind أو design system مخصص (shadcn/ui، Radix Themes)، أضف رسوماً متحركة حديثة (Framer Motion)، انتقل إلى mobile-first.

6. تحويلات 301 (الحفاظ على السيو)

النقطة الأكثر حسماً في أي ترحيل. عنوان مهم واحد مُحوَّل بشكل خاطئ = خسارة مراكز Google. إجراء صارم:

  1. اسرد كل عناوين WordPress (Screaming Frog أو Google Analytics)
  2. رتّب حسب الزيارات العضوية على 12 شهراً (تركيز على أعلى 80% من الزيارات)
  3. اربط كل عنوان قديم بالعنوان الجديد في Next.js
  4. اضبط 301 في .htaccess (Apache) أو rewrites Next.js + Cloudflare
  5. اختبر كل ربط بـ curl -I أو Screaming Frog في وضع redirect-check
  6. أرسل sitemap الجديد إلى Search Console يوم النشر
  7. راقب 404 في Search Console لمدة 4-6 أسابيع، أضف التحويلات الناقصة
.htaccessapache
RewriteEngine On

# Redirections 301 anciennes URLs WordPress
Redirect 301 /?p=123 /fr/article-titre-canonique/
Redirect 301 /category/seo /fr/blog/?cat=seo
Redirect 301 /author/admin /fr/equipe/

# Pattern WordPress permalinks date-based
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/([^/]+)/?$ /fr/blog/$4/ [R=301,L]

7. النشر والتحقق

خطة نشر نموذجية:

المرحلةالمدةالإجراء
قبل النشري-7موقع Next.js كامل في staging، تدقيق سيو، اختبارات Lighthouse، تحقق من العميل
نسخة WordPressي-1نسخة احتياطية كاملة WP (DB + ملفات)، محفوظة 3 أشهر
تبديل DNSي0 منتصف الليلTTL 300s لمدة 24 ساعة، مراقبة الانتشار
إرسال sitemapي0+2سSitemap.xml مُرسل إلى GSC + Bing Webmaster Tools
مراقبة مكثفةي0 إلى ي+7أخطاء 404، Search Console، حركة GA4، تنبيهات Sentry/Datadog
تعديلاتي+7 إلى ي+30تحويلات ناقصة، تحسينات CWV
تحقق نهائيي+30 إلى ي+60فهرسة كاملة مُتحقَّقة، مقارنة الترتيب قبل/بعد

المكاسب المُقاسة بعد الترحيل

مقاييس نموذجية مُلاحظة على أكثر من 30 ترحيل OptionWeb (مواقع SME 50-500 صفحة):

  • TTFBWordPress 600-1500ms → Next.js static 30-80ms (مقسوم على 10)
  • Lighthouse PerformanceWordPress 45-65 → Next.js 95-100 على الجوال
  • Lighthouse SEOWordPress 85 (غالباً) → Next.js 100/100 بشكل منهجي
  • تكاليف الاستضافةWordPress مشترك 15 €/شهر → static export على CDN 5-10 €/شهر (Cloudflare Pages، Vercel free، Netlify free)
  • ثغرات أمنيةسطح الهجوم مقسوم على ~50 (لا admin WP، لا DB، لا تنفيذ PHP)
  • زيارات عضوية+10 إلى +30% خلال 3-6 أشهر بفضل مكاسب CWV (إشارات ترتيب Google)
Tags#nextjs#wordpress#tarhil#static-export#seo#performance