İçeriğe geç

XOOPS 2,5'tan 2,7'ye yükseltme

Önce yedekleyin

Yükseltmeden önce daima veritabanınızı ve dosyalarınızı yedekleyin. İstisna yok.

  • PHP 8.2+ gerekli — PHP 7.x artık desteklenmiyor
  • Composer tarafından yönetilen bağımlılıklarcomposer.json aracılığıyla yönetilen Core kitaplıklar
  • PSR-4 otomatik yükleme — module sınıfları ad alanlarını kullanabilir
  • Geliştirilmiş XoopsObject — Yeni getVar() tipi güvenlik, kullanımdan kaldırıldı obj2Array()
  • Bootstrap 5 admin — Yönetici paneli Bootstrap 5 ile yeniden oluşturuldu
  • PHP 8.2+ sunucunuzda mevcut
  • Tam database yedeklemesi (mysqldump -u user -p xoops_db > backup.sql)
  • Kurulumunuzun tam dosya yedeği
  • Kurulu modüllerin ve versiyonlarının listesi
  • Özel theme ayrı olarak yedeklenir
// mainfile.php — add temporarily
define('XOOPS_MAINTENANCE', true);
Terminal window
wget https://github.com/XOOPS/XoopsCore27/releases/latest/download/xoops-2.7.x.zip
unzip xoops-2.7.x.zip

Yeni dosyaları yükleyin, hariç:

  • uploads/ — yüklediğiniz dosyalar
  • xoops_data/ — yapılandırmanız
  • modules/ — kurulu modülleriniz
  • themes/ — temalarınız
  • mainfile.php — site yapılandırmanız
Terminal window
rsync -av --exclude='uploads/' --exclude='xoops_data/' \
--exclude='modules/' --exclude='themes/' --exclude='mainfile.php' \
xoops-2.7/ /var/www/html/

4. Yükseltme komut dosyasını çalıştırın

Section titled “4. Yükseltme komut dosyasını çalıştırın”

Tarayıcınızda https://yourdomain.com/upgrade/ adresine gidin. Yükseltme sihirbazı database geçişlerini uygulayacaktır.

XOOPS 2.7 modülleri PHP 8.2 uyumlu olmalıdır. Güncellenmiş sürümler için module Ekosistemi’ni kontrol edin.

Yönetici → modules’de, yüklü her module için Güncelle’ye tıklayın.

XOOPS_MAINTENANCE satırını mainfile.php’den kaldırın ve tüm sayfaların doğru şekilde yüklendiğini doğrulayın.

Yükseltme sonrasında “Sınıf bulunamadı” hataları

  • XOOPS kökünde composer dump-autoload komutunu çalıştırın
  • xoops_data/caches/ dizinini temizleyin

module güncellemeden sonra bozuldu

  • 2.7 uyumlu bir sürüm için modülün GitHub sürümlerini kontrol edin
  • Modülün PHP 8.2 için kod değişikliklerine ihtiyacı olabilir (kullanımdan kaldırılmış işlevler, yazılan özellikler)

Yönetici paneli CSS bozuk

  • Tarayıcınızın önbelleğini temizleyin
  • Dosya yükleme sırasında xoops_lib/’nin tamamen değiştirildiğinden emin olun