Jika WP_DEBUG tidak disetel, seperti yang saya mengerti, Anda seharusnya tidak pernah melihat peringatan. Tetapi pada beberapa situs di beberapa server, saya masih melihat beberapa. Tidak semua peringatan yang akan ditampilkan jika WP_DEBUG disetel, tetapi beberapa pilihan.
Saya sudah mencoba mengubah tingkat kesalahan di php.ini, tetapi itu tampaknya tidak berpengaruh pada apakah peringatan muncul atau tidak, tetapi mereka muncul dalam jumlah yang berbeda di server yang berbeda (yaitu tidak ada peringatan pada pengembangan, satu peringatan pada pementasan, dan beberapa peringatan lagi tentang produksi).
Jawaban:
WP_DEBUG tidak berdampak pada output kesalahan PHP. Selain pengaturan error_reporting, atur display_errors = 0 di file php.ini Anda. Ini diaktifkan secara default untuk pengembangan. Tetapi Anda akan menginginkannya di server produksi.
sumber
Menggantikan
dengan ini:
sumber
Mungkin juga, bahwa baris ini sudah disetel ke false. Jika demikian, Anda akan melihat kode berikut:
Dalam kedua kasus tersebut, Anda perlu mengganti baris ini dengan kode berikut:
Jangan lupa untuk menyimpan perubahan Anda dan mengunggah file wp-config.php Anda kembali ke server.
sumber
Cobalah untuk menonaktifkan / menekan semua peringatan / pemberitahuan kesalahan di
wp-config.php
(atas) Anda. Bagaimanapun: Kesalahan bukanlah hal yang buruk. Mereka memberi Anda kesempatan untuk memperbaiki kode Anda.sumber
Untuk lingkungan WordPress, biasanya tidak ada alasan untuk digunakan
ini_set
karena itulah yang sudah dicapai oleh konstanta yang ditentukan oleh WordPress Core. Cara kerja PHP adalah bahwa pengaturan tertentu dapat ditimpa dalam CMS (WordPress) Anda, dalam skrip individual, dan bahkan berdasarkan per-pengguna atau per-direktori (banyak yang membuat frustrasi host web dan agensi).Untuk menonaktifkan kesalahan agar tidak ditampilkan pada halaman di WordPress, satu-satunya pengaturan yang benar-benar Anda butuhkan adalah:
... karena ketika
WP_DEBUG
dinonaktifkan, sub-opsi kemudian tidak aktif:Ingatlah bahwa
WP_DEBUG_LOG
opsi membingungkan hanya merujuk pada pembuatandebug.log
di dalam direktoriwp-content
dan tidak mempengaruhi pengaturan logging lainnya, dll.Sekali lagi, pengaturan di WordPress dapat mengesampingkan pengaturan PHP default, sehingga pengaturan PHP Anda tidak masalah sebanyak memiliki pengaturan yang benar dalam
wp-config.php
file Anda , yang dimuat sebelum komponen WP lainnya.Yang mengatakan, itu adalah ide yang baik untuk menerapkan pengaturan default seperti di bawah ini dalam produksi:
Untuk contoh lengkap, lihat file php.ini SlickStack kami yang dioptimalkan untuk Nginx dan PHP-FPM.
Dalam satu kasus, setelah berjam-jam penelitian, kami menyadari sebuah plugin (atau tema) menimpa berbagai pengaturan penanganan kesalahan yang sebelumnya ditetapkan dalam
php.ini
danwp-config.php
. Satu-satunya cara untuk mencegah hal ini adalah dengan menghapus plugin atau tema WordPress yang mencoba "meretas" pengaturan PHP Anda, atau memberitahu mereka untuk menghapusnya karena itu adalah praktik yang sangat buruk bagi ekstensi untuk menimpa opsi debug CMS Anda.Di SlickStack, kami membuat skrip Bash yang "menandai" setiap
ini_set
danerror_reporting
baris dari file PHP di/themes/
dan/plugins/
direktori dengan menyorot contoh tersebut menggunakan Plugin MU (skrip PHP) yang menampilkan daftar "peretasan" seperti itu di Dasbor Admin WP.sumber