İçeriğe geç
KURUMSAL Kurumsal teknoloji · İşletmenize özel mühendislik Kurumsal Yazılım · Yönetilen Sunucular · Kurumsal E-posta · LiteSpeed + CloudLinux · Imunify360 Güvenlik · cPanel Yönetim · Uygun pakette 3 Gbps'ye kadar ağ profili
AIOR

Plesk WP Toolkit "Unable to get site administrator settings" Hatası Çözümü

  • Konu başlatıcısı Konu başlatıcısı Aior
  • Başlangıç tarihi Başlangıç tarihi

Aior

Administrator

Yetkili üye
Katıldı
2 Nis 2023
Mesajlar
929
Tepki puanı
2
Puan
18
Yaş
41
Konum
Turkey
Web sitesi
aior.com
Konu sahibi

Plesk WP Toolkit "Unable to get site administrator settings" Hatası Çözümü (WP_User_Query'de stdClass TypeError)​


Genel Bakış​

Bu makale Plesk WP Toolkit'te admin bilgisinin alınamadığı ve aşağıdaki hatanın göründüğü kritik bir sorunu açıklar:
Kod:
Unable to get site administrator settings:
PHP Warning: Object of class stdClass could not be converted to int
PHP Fatal error: Cannot access offset of type stdClass on array

Sorun WordPress frontend ve admin paneli normal çalışırken bile olabilir. Çoğu durumda başarısızlık yalnızca WP Toolkit içinde görünür.

Semptomlar​

  • WP Toolkit "Unable to get site administrator settings" gösterir.
  • WordPress frontend normal çalışır.
  • WordPress admin paneli normal çalışır.
  • wp-cli komutları manuel çalışır.
  • Hata yalnızca WP Toolkit içinde görünür.

Kök Neden​

Sorun PHP ortamları ve cached query verisi arasında uyuşmazlıktan kaynaklanır.
  • WP Toolkit sistem CLI'sinden farklı PHP binary kullanır.
  • CloudLinux alt-php Plesk PHP'den farklı davranır.
  • Redis object cache bozulmuş veri döndürebilir.
  • WP_User_Query beklenen array yerine stdClass alır.

Örnek uyuşmazlık:
Kod:
WP Toolkit PHP: /opt/alt/php84/usr/bin/php
Manuel CLI PHP: /usr/bin/php, /opt/plesk/php/8.3/bin/php

Teknik Açıklama​

WordPress kullanıcıları almak için WP_User_Query kullanır. Query filtreleri veya cache yanlış veri döndürürse:
  • Array yerine stdClass döndürülür.
  • PHP 8+ strict typing fatal error tetikler.

Yaygın problemli hook'lar:
Kod:
users_pre_query, pre_user_query

Adım 1 CLI PHP MySQL Desteği Kontrol​

Kod:
php -m | grep -E 'mysqli|pdo_mysql|mysqlnd'
Eksikse:
Kod:
dnf install -y php-mysqlnd

Adım 2 WP CLI Çalışıyor mu Doğrula​

Kod:
wp --allow-root user list
wp --allow-root --skip-plugins user list
wp --allow-root --skip-themes user list

Adım 3 WP Toolkit Ortamını Tekrarla​

Kod:
plesk ext wp-toolkit --wp-cli -instance-id 2 -- user list --role=administrator --format=json
Bu başarısız ama normal wp çalışıyorsa, sorun ortama özgüdür.

Adım 4 PHP Farkını Tanımla​

WP Toolkit'in hangi PHP'yi kullandığını kontrol edin. Örnek:
Kod:
/opt/alt/php84/usr/bin/php

Adım 5 WP Toolkit Instance Doğrula​

Kod:
plesk ext wp-toolkit --list
plesk ext wp-toolkit --info -instance-id 2

Adım 6 WP Toolkit Cache Temizle​

Kod:
plesk ext wp-toolkit --clear-cache -instance-id 2
systemctl restart sw-engine
systemctl restart psa

Adım 7 Redis'i Geçici Devre Dışı Bırak​

Kod:
wp --allow-root plugin deactivate redis-cache
Sonra test edin.

Adım 8 Redis Cache Flush​

Redis kontrol:
Kod:
redis-cli PING
Beklenen: PONG
Cache flush:
Kod:
redis-cli FLUSHALL

Adım 9 Redis'i Dikkatli Yeniden Etkinleştir​

Kod:
wp --allow-root plugin activate redis-cache
Yeniden başarısız olursa Redis yapılandırması uyumsuz.

Adım 10 Özel Eklentileri İncele​

Kullanıcı sorgularını, gettext filtrelerini, global query hook'larını, object caching'i, admin hook'ları etkileyen eklentileri kontrol edin.

Adım 11 Opsiyonel Derin WP Toolkit Reset​

Kod:
rm -rf /usr/local/psa/var/modules/wp-toolkit/*
systemctl restart sw-engine

Güvenli Sorun Giderme Akışı​

  1. CLI PHP MySQL extension'ları kontrol et.
  2. wp-cli çalıştığını doğrula.
  3. WP Toolkit hatasını tekrarla.
  4. WP Toolkit cache'i temizle.
  5. Redis'i devre dışı bırak.
  6. Redis flush.
  7. WP Toolkit'i yeniden test et.
  8. Redis'i dikkatli yeniden etkinleştir.
  9. Özel eklentileri kontrol et.

Anahtar İçgörü​

Bu bir WordPress core bug'ı değildir. Neden:
  • Ortam uyuşmazlığı.
  • Cache bozulması.
  • PHP strict typing.

Sonuç​

Bu sorun net bir desen izler:
  • WordPress normal çalışır.
  • WP Toolkit başarısız olur.
  • Farklı PHP ortamları kullanılır.
  • Cached veri tip hatalarına neden olur.

PHP ortamlarını hizalayarak ve cache katmanlarını sıfırlayarak sorun tamamen çözülebilir.


Plesk WP Toolkit "Unable to get site administrator settings" Error Fix (stdClass TypeError in WP_User_Query)​


Overview​

This article explains a critical issue in Plesk WP Toolkit where administrator information cannot be retrieved:
Kod:
Unable to get site administrator settings:
PHP Warning: Object of class stdClass could not be converted to int
PHP Fatal error: Cannot access offset of type stdClass on array

The problem may occur even when the WordPress frontend and admin panel work normally.

Symptoms​

  • WP Toolkit shows "Unable to get site administrator settings".
  • WordPress frontend works normally.
  • WordPress admin panel works normally.
  • wp-cli commands work manually.
  • Error appears only inside WP Toolkit.

Root Cause​

  • WP Toolkit uses a different PHP binary than system CLI.
  • CloudLinux alt-php behaves differently than Plesk PHP.
  • Redis object cache may return corrupted data.
  • WP_User_Query receives stdClass instead of expected array.

Example:
Kod:
WP Toolkit PHP: /opt/alt/php84/usr/bin/php
Manual CLI PHP: /usr/bin/php, /opt/plesk/php/8.3/bin/php

Technical Explanation​

If query filters or cache return incorrect data:
  • stdClass is returned instead of array.
  • PHP 8+ strict typing triggers fatal error.

Common problematic hooks:
Kod:
users_pre_query, pre_user_query

Step 1 Check PHP CLI MySQL Support​

Kod:
php -m | grep -E 'mysqli|pdo_mysql|mysqlnd'
If missing:
Kod:
dnf install -y php-mysqlnd

Step 2 Verify WP CLI Works​

Kod:
wp --allow-root user list
wp --allow-root --skip-plugins user list
wp --allow-root --skip-themes user list

Step 3 Reproduce WP Toolkit Environment​

Kod:
plesk ext wp-toolkit --wp-cli -instance-id 2 -- user list --role=administrator --format=json

Step 4 Identify PHP Difference​

Check which PHP WP Toolkit uses. Example:
Kod:
/opt/alt/php84/usr/bin/php

Step 5 Verify WP Toolkit Instance​

Kod:
plesk ext wp-toolkit --list
plesk ext wp-toolkit --info -instance-id 2

Step 6 Clear WP Toolkit Cache​

Kod:
plesk ext wp-toolkit --clear-cache -instance-id 2
systemctl restart sw-engine
systemctl restart psa

Step 7 Disable Redis Temporarily​

Kod:
wp --allow-root plugin deactivate redis-cache

Step 8 Flush Redis Cache​

Redis check:
Kod:
redis-cli PING
Expected: PONG
Flush:
Kod:
redis-cli FLUSHALL

Step 9 Reactivate Redis Carefully​

Kod:
wp --allow-root plugin activate redis-cache

Step 10 Review Custom Plugins​

Check plugins affecting user queries, gettext filters, global query hooks, object caching, admin hooks.

Step 11 Optional Deep WP Toolkit Reset​

Kod:
rm -rf /usr/local/psa/var/modules/wp-toolkit/*
systemctl restart sw-engine

Safe Troubleshooting Flow​

  1. Check CLI PHP MySQL extensions.
  2. Verify wp-cli works.
  3. Reproduce WP Toolkit error.
  4. Clear WP Toolkit cache.
  5. Disable Redis.
  6. Flush Redis.
  7. Retest WP Toolkit.
  8. Reactivate Redis carefully.
  9. Check custom plugins.

Key Insight​

This is not a WordPress core bug. It is caused by environment mismatch, cache corruption, and PHP strict typing.

Conclusion​

By aligning PHP environments and resetting cache layers, the issue can be fully resolved.
 
Son düzenleyen:

Forum istatistikleri

Konular
925
Mesajlar
932
Üyeler
26
En son üye
Jessicawatson

Çevrimiçi üyeler

Şu anda çevrimiçi üye yok.

Öne çıkan içerik

AIOR
AIOR TEKNOLOJİ

Tüm ihtiyaçlarınız için Teklif alın

Hosting · Domain · Sunucu · Tasarım · Yazılım · Mühendislik · Sektörel Çözümler

Teklif al

7/24 Destek · Anında yanıt

Geri
Üst