Saya menjalankan beberapa fungsi WP langsung di dalam sebuah plugin, termasuk wp_insert_post (), jika terjadi kesalahan, ini mengembalikan objek WP Error, apa metode yang benar untuk menangkap kesalahan ini? Baik menggunakan fungsi WP bawaan atau pengecualian PHP atau yang lainnya ..
15
WP_Error
adalah tidak PHPException
objek. Anda tidak menggunakantry/catch
metode dengannya. Tetapi seperti disebutkan, ada fungsi kenyamanan untuk membuatnya mudah digunakan.Jawaban:
Tetapkan kembali fungsi ke variabel.
Periksa variabel dengan
is_wp_error()
.Jika
true
menangani sesuai, misalnyatrigger_error()
dengan pesan dariWP_Error->get_error_message()
metode.Jika
false
- lanjutkan seperti biasa.Pemakaian:
sumber
Hei,
pertama, Anda memeriksa cuaca hasil Anda adalah
WP_Error
objek atau tidak:Ini cara yang biasa.
Tetapi objek WP_Error dapat di-instanciated tanpa terjadi kesalahan, hanya untuk bertindak sebagai penyimpanan kesalahan umum untuk berjaga-jaga. Jika Anda ingin melakukannya, Anda dapat memeriksa apakah ada kesalahan dengan menggunakan
get_error_code()
:Jika Anda melakukannya, Anda kemudian dapat memeriksa proses kesalahan yang dikembalikan seperti pada
wp_insert_post()
contoh di atas.Kelas didokumentasikan pada Codex .
Dan ada juga artikel kecil di sini .
sumber
Ini akan menunjukkan kepada Anda apa yang salah dengan fungsi penyisipan posting wordpress. Cobalah !
sumber