يُعد WP-CLI أداة قوية لمديري مواقع WordPress، حيث يُتيح لهم إنجاز العديد من المهام تلقائيًا، بدلًا من الاعتماد على واجهة المستخدم الرسومية. ومن بين المهام المفيدة التي يُمكن إنجازها باستخدام WP-CLI هي استخراج محتوى موقعك الإلكتروني بالكامل.
في هذا المقال، سنشرح لك خطوات استخراج محتوى موقعك الإلكتروني باستخدام WP-CLI، ونقدم لك بعض النصائح والإرشادات لضمان عملية سلسة وفعالة.
ما هي WP-CLI؟
WP-CLI هي واجهة سطر أوامر (CLI) لـ WordPress، تُتيح لك التحكم في موقعك الإلكتروني من خلال كتابة أوامر في سطر الأوامر.
تُقدم WP-CLI العديد من المزايا، منها:
- السرعة: تُعد WP-CLI أسرع بكثير من استخدام واجهة المستخدم الرسومية، خاصةً عند تنفيذ مهام متكررة.
- الدقة: تُقلل WP-CLI من إمكانية حدوث الأخطاء البشرية، حيث تعتمد على الأوامر المكتوبة بدقة.
- التكامل: تُمكنك WP-CLI من دمج مهام WordPress مع أدوات أخرى، مثل أنظمة التحكم في الإصدارات وأدوات النشر التلقائي.
متطلبات استخراج محتوى موقعك الإلكتروني باستخدام WP-CLI:
- نصب WP-CLI على خادمك: تأكد من تثبيت WP-CLI على السيرفر. يمكنك العثور على إرشادات التثبيت على موقع WP-CLI الرسمي: https://wp-cli.org/
- الحصول على صلاحيات الوصول: ستحتاج إلى صلاحيات وصول كافية لاستخدام WP-CLI. تأكد من أن لديك دور مستخدم يسمح لك بالوصول إلى جميع البيانات التي تريد استخراجها.
خطوات استخراج محتوى موقعك الإلكتروني باستخدام WP-CLI:
- اتصل بخادمك: افتح نافذة سطر أوامر واتصل بخادمك باستخدام الأمر التالي:
ssh username@your-server-ip
Code language: CSS (css)
استبدل username
باسم المستخدم الخاص بك و your-server-ip
بعنوان IP الخاص بخادمك.
- انتقل إلى مجلد WordPress:
cd /var/www/html/your-wordpress-directory
Code language: JavaScript (javascript)
استبدل your-wordpress-directory
باسم مجلد WordPress الخاص بك.
- استخرج المحتوى:
wp export
Code language: JavaScript (javascript)
سيقوم هذا الأمر باستخراج جميع محتويات موقعك الإلكتروني، بما في ذلك المنشورات والصفحات والتعليقات والمرفقات والوسائط.
خيارات إضافية:
- استخراج محتوى محدد:
يمكنك استخراج محتوى محدد باستخدام خيارات WP-CLI. على سبيل المثال، لاستخراج جميع المنشورات فقط، استخدم الأمر التالي:
wp export --post-type=post
Code language: JavaScript (javascript)
- حفظ الملف في موقع محدد:
لتحديد موقع حفظ الملف المُستخرج، استخدم خيار --file
. على سبيل المثال، لحفظ الملف في مجلد exports
على جهاز الكمبيوتر الخاص بك، استخدم الأمر التالي:
wp export --file=/home/username/exports/wordpress-content.xml
Code language: JavaScript (javascript)
خيارات استخراج المحتوى (Options):
يوفر WP-CLI العديد من الخيارات التي تتيح لك تخصيص عملية استخراج المحتوى حسب احتياجاتك. دعونا نستكشف بعض الخيارات الأكثر شيوعًا:
- تحديد مجلد الحفظ (
--dir=<dirname>
):
بشكل افتراضي، يقوم الأمر wp export
بحفظ ملف الاستخراج (عادةً بصيغة WXR) في مجلد العمل الحالي لديك. ولكن يمكنك تحديد مجلد آخر باستخدام خيار --dir
. على سبيل المثال، لحفظ الملف في مجلد exports
على جهاز الكمبيوتر الخاص بك، استخدم الأمر التالي:
wp export --dir=/home/username/exports
Code language: JavaScript (javascript)
- استخراج إلى الإخراج القياسي (
--stdout
):
يُتيح لك خيار --stdout
استخراج المحتوى إلى الإخراج القياسي لسطر الأوامر. هذا مفيد إذا كنت تريد توجيه المحتوى إلى أداة أخرى لمعالجته لاحقًا. ومع ذلك، تتعارض هذه الخاصية مع خيار --dir
، حيث لا يمكنك استخدامها معًا في نفس الأمر.
- استبعاد التعليقات (
--skip_comments
):
إذا كنت تريد تقليل حجم ملف الاستخراج، يمكنك استخدام خيار --skip_comments
لاستبعاد التعليقات الموجودة في المحتوى.
- تحديد حجم ملف الاستخراج (
--max_file_size=<MB>
):
بشكل افتراضي، يقوم WP-CLI بتقسيم محتوى موقعك الإلكتروني إلى ملفات متعددة إذا تجاوز الحجم الكلي حدًا معينًا (15 ميغابايت بشكل افتراضي). يمكنك استخدام خيار --max_file_size
لتحديد حجم الملف المطلوب. على سبيل المثال، لتعيين حد أقصى للملف يبلغ 50 ميغابايت، استخدم الأمر التالي:
wp export --max_file_size=50
Code language: JavaScript (javascript)
- تخصيص اسم ملف الاستخراج (
--filename_format=<format>
):
بشكل افتراضي، يستخدم WP-CLI تنسيقًا معينًا لأسماء ملفات الاستخراج. يمكنك تخصيص هذا التنسيق باستخدام خيار --filename_format
. على سبيل المثال، لاستخدام تنسيق yoursite-{date}.xml
، استخدم الأمر التالي:
wp export --filename_format=yoursite-{date}.xml
Code language: JavaScript (javascript)
- استخراج جزء محدد من المحتوى (
--include_once=<before_posts>
):
في بعض الحالات، قد ترغب فقط في استخراج جزء معين من محتوى موقعك الإلكتروني، مثل الفئات أو الوسوم. يتيح لك خيار --include_once
تحديد قسم محدد ليتم تضمينه فقط في ملف الاستخراج الأول. على سبيل المثال، لاستخراج الفئات فقط في الملف الأول، استخدم الأمر التالي:
wp export --post_type=post --include_once=categories
Code language: JavaScript (javascript)
- استخراج المصطلحات اليتيمة (
--allow_orphan_terms
):
يُمكن أن تحتوي مواقع WordPress على مصطلحات يتيمة (أي مصطلحات غير مرتبطة بأي تصنيفات أو وسوم رئيسية). بشكل افتراضي، قد يتسبب استخراج هذه المصطلحات في حدوث خطأ. يتيح لك خيار --allow_orphan_terms
استخراج هذه المصطلحات حتى وإن كانت يتيمة.
هذه مجرد أمثلة قليلة على خيارات استخراج المحتوى التي يوفرها WP-CLI. يمكنك العثور على قائمة كاملة بالخيارات المتاحة في وثائق WP-CLI الرسمية: https://developer.wordpress.org/cli/commands/export/
باستخدام هذه الخيارات، يمكنك تخصيص عملية استخراج المحتوى لتلبية احتياجاتك الخاصة، سواء كنت تريد استخراج موقعك الإلكتروني بأكمله أو مجرد جزء منه.
فلاتر استخراج المحتوى (Filters):
بالإضافة إلى خيارات الاستخراج، يوفر WP-CLI أيضًا العديد من الفلاتر التي تتيح لك تحديد المحتوى الذي تريد استخراجه بدقة أكبر. دعونا نستكشف بعض الفلاتر الأكثر شيوعًا:
- تصفية حسب التاريخ (
--start_date=<date>
و--end_date=<date>
):
لاستخراج المحتوى الذي تم نشره خلال فترة زمنية محددة، يمكنك استخدام الفلاتر --start_date
و --end_date
. على سبيل المثال، لاستخراج جميع المنشورات التي تم نشرها بين 1 يناير 2023 و31 ديسمبر 2023، استخدم الأمر التالي:
wp export --start_date=2023-01-01 --end_date=2023-12-31
Code language: JavaScript (javascript)
- تصفية حسب نوع المنشور (
--post_type=<post-type>
و--post_type__not_in=<post-type>
):
في بعض الحالات، قد ترغب فقط في استخراج نوع معين من المحتوى، مثل المنشورات أو الصفحات أو المنتجات (في حالة استخدام WooCommerce). يتيح لك خيار --post_type
تحديد نوع المنشور الذي تريد استخراجه. على سبيل المثال، لاستخراج جميع المنشورات فقط، استخدم الأمر التالي:
wp export --post_type=post
Code language: JavaScript (javascript)
يمكنك أيضًا استبعاد أنواع معينة من المنشورات باستخدام خيار --post_type__not_in
.
- تصفية حسب معرف المنشور (
--post__in=<pid>
و--start_id=<pid>
):
إذا كنت تريد استخراج مجموعة محددة من المنشورات بناءً على معرفاتها، يمكنك استخدام خيار --post__in
. على سبيل المثال، لاستخراج المنشورات ذات المعرفات 123 و 124 و 125، استخدم الأمر التالي:
wp export --post__in=123,124,125
Code language: JavaScript (javascript)
خيار --start_id
مفيد لاستخراج جميع المنشورات التي تحتوي على معرفات أكبر من أو تساوي معرفًا معينًا.
- تصفية حسب المؤلف (
--author=<author>
):
لاستخراج جميع المنشورات التي كتبها مؤلف معين، يمكنك استخدام خيار --author
. يمكنك تحديد المؤلف إما باستخدام اسم المستخدم الخاص به أو معرف المستخدم.
- تصفية حسب الفئة (
--category=<name|id>
):
إذا كان موقعك الإلكتروني يستخدم نظام الفئات، يمكنك استخدام خيار --category
لاستخراج جميع المنشورات التي تنتمي إلى فئة معينة. يمكنك تحديد الفئة إما باستخدام اسمها أو معرفها.
- تصفية حسب حالة المنشور (
--post_status=<status>
):
يحتوي WordPress على حالات مختلفة للمنشورات، مثل “منشور” و “مراجعة” و “مسودة”. يتيح لك خيار --post_status
استخراج جميع المنشورات التي لها حالة محددة.
كما ترى، توفر فلاتر WP-CLI مرونة كبيرة في عملية استخراج المحتوى. يمكنك الجمع بين هذه الفلاتر مع خيارات الاستخراج الأخرى لإنشاء أوامر مخصصة تناسب احتياجاتك المحددة.
أمثلة على استخدام الفلاتر:
يوفر قسم الأمثلة في وثائق WP-CLI أمثلة عملية على كيفية استخدام الفلاتر لأغراض مختلفة. على سبيل المثال، يوضح المثال الأول كيفية استخراج جميع المنشورات التي تم نشرها بواسطة مستخدم معين خلال فترة زمنية محددة:
# Export posts published by the user between given start and end date
$ wp export --dir=/tmp/ --user=admin --post_type=post --start_date=2011-01-01 --end_date=2011-12-31
Code language: PHP (php)
يوضح مثال آخر كيفية استخراج مجموعة محددة من المنشورات بناءً على معرفاتها:
# Export posts by IDs
$ wp export --dir=/tmp/ --post__in=123,124,125
Code language: PHP (php)
هذه الأمثلة مجرد نقطة بداية، ويمكنك تعديلها لتناسب احتياجاتك الخاصة.
باستخدام خيارات الاستخراج وفلاتر WP-CLI، يمكنك استخراج محتوى موقعك الإلكتروني بسهولة وفعالية، سواء كنت تريد استخراج
نصائح وإرشادات:
- تأكد من وجود مساحة كافية على خادمك: قد يستغرق استخراج محتوى موقعك الإلكتروني مساحة تخزين كبيرة على خادمك. تأكد من وجود مساحة كافية قبل البدء في العملية.
- استخدم شبكة Wi-Fi قوية: إذا كنت تستخرج محتوى موقعك الإلكتروني عبر اتصال Wi-Fi، فتأكد من استخدام شبكة Wi-Fi قوية ومستقرة.
- قم بعمل نسخة احتياطية لموقعك الإلكتروني: قبل البدء في عملية الاستخراج، تأكد من عمل نسخة احتياطية لموقعك الإلكتروني في حالة حدوث أي مشاكل.
الخلاصة:
يُعد WP-CLI أداة قوية لمديري مواقع WordPress، حيث يُتيح لهم استخراج محتوى موقعهم الإلكتروني بالكامل بسهولة وفعالية.
في هذا المقال، شرحنا لك خطوات استخراج محتوى موقعك الإلكتروني باستخدام WP-CLI، وقدمنا لك بعض النصائح والإرشادات لإتمام عملية التصدير، في المقال التالي؛ سنتشرح لك كيفية استيراد هذا المحتوى إلى موقع آخر!