ترقية XOOPS من 2.5 إلى 2.7
ما الذي تغير في 2.7
Section titled “ما الذي تغير في 2.7”- PHP 8.2+ مطلوب — لم يعد PHP 7.x مدعوماً
- المكتبات المدارة بواسطة Composer — المكتبات الأساسية مدارة عبر
composer.json - تحميل تلقائي PSR-4 — فئات الوحدات يمكنها استخدام النطاقات
- تحسين XoopsObject — وظيفة
getVar()الجديدة الآمنة للنوع، واستهلاكobj2Array()المرحلة الانتقالية - لوحة المسؤول Bootstrap 5 — تم إعادة بناء لوحة المسؤول باستخدام Bootstrap 5
قائمة التحقق قبل الترقية
Section titled “قائمة التحقق قبل الترقية”- PHP 8.2+ متاح على الخادم
- نسخة احتياطية كاملة من قاعدة البيانات (
mysqldump -u user -p xoops_db > backup.sql) - نسخة احتياطية كاملة من تثبيتك
- قائمة بالوحدات المثبتة والإصدارات الخاصة بها
- المظهر المخصص النسخ الاحتياطية بشكل منفصل
خطوات الترقية
Section titled “خطوات الترقية”1. ضع الموقع في وضع الصيانة
Section titled “1. ضع الموقع في وضع الصيانة”// mainfile.php — أضف مؤقتاًdefine('XOOPS_MAINTENANCE', true);2. قم بتنزيل XOOPS 2.7
Section titled “2. قم بتنزيل XOOPS 2.7”wget https://github.com/XOOPS/XoopsCore27/releases/latest/download/xoops-2.7.x.zipunzip xoops-2.7.x.zip3. استبدل ملفات النواة
Section titled “3. استبدل ملفات النواة”قم بتحميل الملفات الجديدة، باستثناء:
uploads/— ملفاتك المرفوعةxoops_data/— التكوين الخاص بكmodules/— الوحدات المثبتة لديكthemes/— المظاهر الخاصة بكmainfile.php— تكوين الموقع الخاص بك
rsync -av --exclude='uploads/' --exclude='xoops_data/' \ --exclude='modules/' --exclude='themes/' --exclude='mainfile.php' \ xoops-2.7/ /var/www/html/4. قم بتشغيل سكريبت الترقية
Section titled “4. قم بتشغيل سكريبت الترقية”انتقل إلى https://yourdomain.com/upgrade/ في متصفحك.
سيقوم معالج الترقية بتطبيق ترحيل قاعدة البيانات.
5. تحديث الوحدات
Section titled “5. تحديث الوحدات”وحدات XOOPS 2.7 يجب أن تكون متوافقة مع PHP 8.2. تحقق من نظام الوحدات للإصدارات المحدثة.
في المسؤول → الوحدات، انقر فوق تحديث لكل وحدة مثبتة.
6. أزل وضع الصيانة واختبر
Section titled “6. أزل وضع الصيانة واختبر”أزل سطر XOOPS_MAINTENANCE من mainfile.php و
تحقق من أن جميع الصفحات يتم تحميلها بشكل صحيح.
المشاكل الشائعة
Section titled “المشاكل الشائعة”أخطاء “لم يتم العثور على فئة” بعد الترقية
- قم بتشغيل
composer dump-autoloadفي جذر XOOPS - امسح دليل
xoops_data/caches/
وحدة معطلة بعد التحديث
- تحقق من إصدارات GitHub الخاصة بالوحدة للحصول على إصدار متوافق مع 2.7
- قد تحتاج الوحدة إلى تغييرات في الكود لـ PHP 8.2 (الدوال المستهلكة، الخصائص المكتوبة)
CSS لوحة المسؤول معطل
- امسح ذاكرة المتصفح
- تأكد من استبدال
xoops_lib/بشكل كامل أثناء تحميل الملف