لقد نجحت مؤخرًا في ترحيل قاعدة بيانات bbPress باستخدام سكريبت الترحيل المدمج في Discourse. والآن سأشاركه كدليل تعليمي خطوة بخطوة.
ملاحظة: هذا الدليل مخصص لـ إضافة bbPress، وليس النسخة المستقلة القديمة من bbPress.
ما هي البيانات التي يمكن استيرادها؟
- المستخدمين (بما في ذلك المستخدمون المجهولون)
- التصنيفات
- المواضيع
- المنشورات
- الرسائل الخاصة (عبر BuddyPress)
- المرفقات
- الروابط الدائمة (Permalinks)
قبل بدء عملية الترحيل، قم بإعداد بيئة تطوير على جهازك (أو داخل آلة افتراضية) وقم بتشغيل عملية الاستيراد هناك بدلاً من داخل حاوية Docker. عندما جربت ذلك داخل حاوية Docker، واجهت مشكلة فشل مصادقة النظير (peer authentication failed). لذا، أوصي بشدة باستخدام جهاز تطوير. راجع دليل التثبيت لـ macOS أو Ubuntu / Debian للتطوير.
يتطلب Discourse إصدار Ruby 3.4 أو أحدث. يمكنك التحقق من إصدار Ruby الخاص بك عبر:
ruby -v
الآن نحتاج إلى تثبيت اعتماد libmysqlclient-dev لتمكين استخدام gem mysql2.
sudo apt-get install libmysqlclient-dev
بعد التثبيت الناجح، انتقل إلى مسار تثبيت تطوير Discourse (عادةً ~/discourse).
cd ~/discourse
إعداد اتصال قاعدة البيانات
يقرأ سكريبت استيراد bbPress جميع إعدادات اتصال قاعدة البيانات من متغيرات البيئة. لا تحتاج إلى تعديل ملف السكريبت. المتغيرات البيئية المدعومة هي:
| المتغير | الافتراضي | الوصف |
|---|---|---|
BBPRESS_HOST |
localhost |
مستضيف قاعدة بيانات MySQL |
BBPRESS_USER |
root |
اسم مستخدم MySQL |
BBPRESS_PW |
(فارغ) | كلمة مرور MySQL |
BBPRESS_DB |
bbpress |
اسم قاعدة بيانات MySQL |
BBPRESS_PREFIX |
wp_ |
بادئة جداول WordPress |
BBPRESS_ATTACHMENTS_DIR |
/path/to/attachments |
المسار إلى مجلد مرفقات bbPress |
إذا كنت ترحل قاعدة بياناتك من localhost، فعادةً ما تحتاج فقط إلى تعيين اسم قاعدة البيانات:
IMPORT=1 bundle && IMPORT=1 BBPRESS_DB="my_bbpress" bundle exec ruby script/import_scripts/bbpress.rb
إذا كنت ترحل قاعدة بياناتك من خادم خارجي، فستحتاج أيضًا إلى تعيين المضيف واسم المستخدم وكلمة المرور:
IMPORT=1 bundle && IMPORT=1 BBPRESS_HOST="REMOTE_HOST_NAME" BBPRESS_USER="DB_USERNAME" BBPRESS_PW="MY_SECURE_PASSWORD" BBPRESS_DB="DB_NAME" bundle exec ruby script/import_scripts/bbpress.rb
تهانينا! تم ترحيل قاعدة بياناتك بنجاح من bbPress إلى Discourse
![]()
الآن قم بنسخ احتياطي من صفحة الإدارة /admin/backups واستوردها في موقع Discourse المباشر الخاص بك.
بعد نقل منتدى bbPress إلى Discourse، إذا كنت ستستمر في استخدام موقع WordPress الخاص بك كموقع رئيسي وتود ربطه بـ Discourse، فقم بتثبيت إضافة WordPress الرسمية من Discourse.


