“Temporary folder lost” veya Türkçesiyle “Geçici klasör bulunamadı” hatası WordPress’in güncelleme yaparken, eklenti/tema yüklerken ya da medya işleme sırasında kullanacağı geçici dizini bulamaması veya yazamaması durumunda ortaya çıkar. Bu hata eskiden beri aynı kökten gelir: PHP’nin sys_temp_dir’i, sunucunun /tmp dizini, open_basedir kısıtları veya dosya izinleri.
Önce sunucu tarafında PHP’nin geçici dizinini kontrol edersin. Bazı hostlar /tmp’yi temizler, bazıları chroot’lu çalıştırır, bazen de disk doludur. Disk doluluğu burada çok klasik bir sebeptir: /tmp dolunca WordPress “klasör yok” gibi davranabilir. Bu yüzden panelden disk kullanımına bakmak eski ama sağlam adımdır.
WordPress tarafında en pratik çözüm, wp-content içinde bir temp klasörü oluşturup WordPress’e bunu kullanmasını söylemektir. Önce FTP ile wp-content içinde “temp” adında klasör açarsın. İzinlerini genelde 755 yaparsın; bazı hostlarda 775 gerekebilir. Sonra wp-config.php içine WP_TEMP_DIR tanımı eklersin.
// wp-config.php
define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/temp/');
Bu ayar sonrası eklenti yüklemeyi tekrar denersin. Eğer sorun izin ise hemen düzelir. Düzelmiyorsa open_basedir kısıtına bakarsın. Bazı sunucularda PHP sadece belirli dizinlere yazmaya izin verir. Bu durumda wp-content/temp bile kısıt dışındaysa çalışmaz. Hosting tarafında open_basedir düzenlemesi gerekir.
Bir başka klasik nokta dosya sahipliği ve izinleridir. WordPress dosyaları farklı kullanıcıya aitse, PHP-FPM başka kullanıcıyla çalışıyorsa yazma izni sorun çıkar. Görünürde 755 olsa bile sahiplik yüzünden yazamaz. Bu durumda doğru sahiplik önemlidir. SSH erişimin varsa tipik düzeltme şöyledir (kullanıcı adını kendi sistemine göre değiştirmen gerekir).