cari
RumahTutorial CMSWordTekanPengenalan kepada kelas WP_ERROR

kelas wp_error untuk wordpress: mekanisme pengendalian ralat elegan

Kelas WordPress WP_Error menyediakan mekanisme pengendalian ralat yang mudah dan kuat untuk menguruskan dan mengubahsuai kesilapan dalam aplikasi. Adalah mudah untuk mengintegrasikan ke dalam aplikasi anda, dengan berkesan mengendalikan ralat yang dikembalikan oleh fungsi teras WordPress, dan mewujudkan mesej ralat tersuai untuk meningkatkan pengalaman pengguna. Di samping itu, fungsi praktikal seperti is_wp_error boleh menyemak sama ada nilai pulangan pembolehubah atau fungsi adalah contoh WP_Error, dengan itu menyahpepijat masalah dengan cekap.

Tidak kira betapa mahir dan teliti kod anda ditulis, kesilapan tidak dapat dielakkan dalam sebarang proses pembangunan. Sebagai pemaju WordPress, adalah tanggungjawab anda untuk memastikan semua kesilapan kod dikendalikan dengan betul tanpa menjejaskan pengguna akhir. WordPress dilengkapi dengan kelas pengendalian ralat asas WP_Error, yang boleh diintegrasikan ke dalam kod anda untuk pengendalian ralat asas.

Tutorial ini akan meneroka struktur asas dan prinsip kerja kelas WP_Error, dan yang paling penting, kami akan memperkenalkan bagaimana untuk mengintegrasikan kelas WP_Error dalam permohonan anda.

An Introduction to the WP_Error Class

Penjelasan terperinci mengenai kategori WP_Error

Kelas mempunyai struktur mudah tetapi fungsi yang kuat, yang cukup untuk digunakan sebagai mekanisme pengendalian ralat untuk pemalam. Kod sumbernya terletak di dalam fail WP_Error. Mari kita lihat sifat dan kaedahnya. wp-includes/class-wp-error.php

Properties

Terdapat hanya dua atribut peribadi: WP_Error dan $errors. $error_data digunakan untuk menyimpan mesej ralat yang berkaitan, manakala $errors digunakan secara pilihan untuk menyimpan data yang relevan yang anda ingin akses kemudian. $error_data Gunakan pasangan nilai kunci mudah untuk menyimpan ralat dan data yang berkaitan ke dalam objek, jadi kekunci yang ditakrifkan dalam WP_Error mestilah unik untuk mengelakkan penggantian kekunci yang ditakrifkan sebelumnya. WP_Error

kaedah

menyediakan beberapa cara untuk mengubah suai kedua -dua sifat yang terkandung di dalamnya. Mari kita lihat beberapa: WP_Error

  • get_error_codes(): Mengembalikan semua kod ralat yang tersedia untuk contoh WP_Error spesifik. Jika hanya kod ralat pertama yang diperlukan, fungsi lain yang berasingan tersedia. get_error_code()
  • : Jika get_error_messages( $code ) tidak disediakan, fungsi itu hanya akan mengembalikan semua mesej yang disimpan dalam contoh $code spesifik. Begitu juga, jika anda hanya perlu mengembalikan mesej dengan kod ralat tertentu, hanya gunakan WP_Error. get_error_message( $code )
  • : Fungsi ini amat berguna apabila anda ingin mengubah suai kesilapan yang disimpan dalam objek Instantiated . Ambil perhatian bahawa walaupun add( $code, $message, $data ) dan WP_Error tidak diperlukan, pembolehubah $message masih akan diisi. $data $errors
  • : Jika anda hanya mahu mengubah suai harta , anda boleh menggunakan fungsi ini. Perhatikan bahawa parameter
  • berada dalam kedudukan kedua, bertentangan dengan kaedah add_data( $data, $code). Jika $error_data tidak disediakan, data ralat akan ditambah ke kod ralat pertama. $code add $code: Ini adalah kaedah baru yang baru -baru ini ditambah dalam WordPress 4.1, yang menghilangkan semua mesej ralat dan data yang berkaitan dengan kunci tertentu.
  • remove( $code ) fungsi
Bagaimana anda tahu jika pemboleh ubah atau data tertentu yang dikembalikan oleh fungsi adalah contoh

? Anda boleh menyemak menggunakan fungsi utiliti

yang mengembalikan benar atau palsu berdasarkan pembolehubah yang diberikan.

WP_Error is_wp_error()

: kembali benar jika
    adalah contoh
  • , jika tidak, pulangan palsu. is_wp_error( $thing ) $thing WP_Error dilaksanakan dalam aplikasi anda

Hanya faham bagaimana WP_Error berfungsi secara dalaman, anda juga perlu belajar bagaimana untuk melaksanakannya dengan baik dalam permohonan anda sendiri. Mari ambil beberapa contoh untuk lebih memahami bagaimana ia berfungsi.

ralat pemprosesan yang dikembalikan oleh fungsi teras WordPress WP_Error

WordPress menyediakan banyak fungsi praktikal yang boleh digunakan untuk mempercepat proses pembangunan kami. Kebanyakan fungsi juga dilengkapi dengan fungsi pengendalian ralat asas yang boleh kita gunakan.

Sebagai contoh,

adalah fungsi yang sangat berguna yang boleh kita gunakan untuk membuat permintaan pos jauh ke URL tertentu. Walau bagaimanapun, kami tidak boleh mengharapkan URL jauh sentiasa boleh diakses, atau permintaan kami sentiasa berjaya. Kami tahu dari halaman manual bahawa fungsi ini akan kembali

apabila ia gagal. Pengetahuan ini akan membantu kami untuk melaksanakan pengendalian ralat dengan betul dalam permohonan kami.

wp_remote_post sila lihat kod ini: WP_Error

seperti yang anda lihat, kami melakukan permintaan pos jauh ke

. Walau bagaimanapun, bukannya hanya mendapatkan data
// 向远程 URL $url 发出请求
$response = wp_remote_post( $url, array(
    'timeout' => 30,
    'body' => array( 'foo' => 'bar' )
    )
);

if ( is_wp_error( $response ) ) {
   echo 'ERROR: ' . $response->get_error_message();
} else {
    // 执行某些操作
}
seperti itu, kami melakukan beberapa cek menggunakan fungsi mudah

yang diperkenalkan sebelum ini. Jika semuanya berfungsi, kita boleh terus melakukan apa yang kita mahu lakukan dengan $url. $response

Kembalikan ralat tersuai dalam aplikasi anda

Katakan anda mempunyai fungsi tersuai yang mengendalikan penyerahan borang hubungan, bernama handle_form_submission. Katakan kami menyediakan borang tersuai di suatu tempat, mari lihat bagaimana kami dapat memperbaiki fungsi dengan melaksanakan keupayaan pengendalian ralat kami sendiri.

// 向远程 URL $url 发出请求
$response = wp_remote_post( $url, array(
    'timeout' => 30,
    'body' => array( 'foo' => 'bar' )
    )
);

if ( is_wp_error( $response ) ) {
   echo 'ERROR: ' . $response->get_error_message();
} else {
    // 执行某些操作
}

Sudah tentu, anda juga perlu melaksanakan pembersihan dan pengesahan anda sendiri dalam fungsi ini, tetapi ini tidak dalam skop tutorial ini. Sekarang, mengetahui bahawa kita betul mengembalikan contoh WP_Error apabila kita berasaskan ralat, kita boleh menggunakannya untuk memberikan mesej ralat yang lebih bermakna kepada pengguna akhir.

Katakan terdapat bahagian tertentu dalam aplikasi anda yang memaparkan kesilapan penyerahan bentuk, anda boleh melakukan ini:

function handle_form_submission() {
    // 在此处执行你的验证、nonce 等操作

    // 实例化 WP_Error 对象
    $error = new WP_Error();

    // 确保用户提供名字
    if ( empty( $_POST['first_name'] ) ) {
        $error->add( 'empty', 'First name is required' );
    }

    // 也需要姓氏
    if ( empty( $_POST['last_name'] ) ) {
        $error->add( 'empty', 'Last name is required' );
    }

    // 检查电子邮件地址
    if ( empty( $_POST['email'] ) ) {
        $error->add( 'empty', 'Email is required' );
    } elseif ( ! is_email( $_POST['email'] ) ) {
        $error->add( 'invalid', 'Email address must be valid' );
    }

    // 最后,检查消息
    if ( empty( $_POST['message'] ) ) {
        $error->add( 'empty', 'Your message is required' );
    }

    // 发送结果
    if ( empty( $error->get_error_codes() ) ) {
        return true; // 没有错误
    }

    // 有错误
    return $error;
}

Ringkasan

Berusaha untuk cemerlang dalam pembangunan perisian juga bermakna mengetahui apa yang perlu dilakukan apabila kod anda tidak dapat melakukan apa yang harus dilakukan, dan memastikan aplikasi anda dapat mengendalikannya dengan anggun.

untuk WordPress, menggunakan kelas yang disertakan WP_Error menyediakan pelaksanaan pengendalian ralat yang cukup mudah tetapi berkuasa yang boleh anda susun ke dalam aplikasi anda.

(rujukan luaran dan bahagian Soalan Lazim dalam teks asal ditinggalkan di sini kerana mereka adalah salinan langsung teks asal dan tidak memenuhi keperluan pseudo-asal.)

Atas ialah kandungan terperinci Pengenalan kepada kelas WP_ERROR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Apakah kelebihan menggunakan WordPress ke atas pengekodan laman web dari awal?Apakah kelebihan menggunakan WordPress ke atas pengekodan laman web dari awal?Apr 25, 2025 am 12:16 AM

WordPressisAdvantageousovercodingawebsiteFromScratchdueto: 1) EaseOfuseandFasterDevelopment, 2) flexibilityandscalability, 3) strongCommunitySupport, 4) terbina dalam-inseoandmarketingtools, 5) COST-INSEFECTIFITYS

Apa yang menjadikan WordPress sebagai sistem pengurusan kandungan?Apa yang menjadikan WordPress sebagai sistem pengurusan kandungan?Apr 24, 2025 pm 05:25 PM

WordPressisAcmsDuetoitSeSeAfuse, penyesuaian, usermanagement, SEO, dan komandoSupport.1) ITImplifiesContentManagementelmithanintuitiveInterface

Cara Menambah Kotak Komen ke WordPressCara Menambah Kotak Komen ke WordPressApr 20, 2025 pm 12:15 PM

Dayakan komen di laman web WordPress anda untuk menyediakan pelawat dengan platform untuk mengambil bahagian dalam perbincangan dan berkongsi maklum balas. Untuk melakukan ini, ikuti langkah -langkah ini: Dayakan komen: Di papan pemuka, navigasi ke Tetapan & GT; Perbincangan, dan pilih kotak semak Comment Comments. Buat borang komen: Dalam editor, klik Tambah Blok dan cari Blok Komen untuk menambahkannya ke kandungan. Borang komen tersuai: Sesuaikan blok komen dengan menetapkan tajuk, label, pemegang tempat, dan teks butang. Simpan Perubahan: Klik Kemas Kini untuk menyimpan kotak komen dan tambahkannya ke halaman atau artikel.

Cara menyalin sub-tapak dari WordPressCara menyalin sub-tapak dari WordPressApr 20, 2025 pm 12:12 PM

Bagaimana cara menyalin subsite WordPress? Langkah-langkah: Buat sub-tapak di tapak utama. Menglonkan sub-tapak di tapak utama. Import klon ke lokasi sasaran. Kemas kini nama domain (pilihan). Plugin dan tema berasingan.

Cara Menulis Tajuk WordPressCara Menulis Tajuk WordPressApr 20, 2025 pm 12:09 PM

Langkah -langkah untuk membuat tajuk tersuai di WordPress adalah seperti berikut: Edit fail tema "header.php". Tambahkan nama dan keterangan laman web anda. Buat menu navigasi. Tambah bar carian. Simpan perubahan dan lihat tajuk tersuai anda.

Cara memaparkan komen WordPressCara memaparkan komen WordPressApr 20, 2025 pm 12:06 PM

Dayakan komen di laman web WordPress: 1. Log masuk ke panel admin, pergi ke "Tetapan" - "Perbincangan", dan periksa "Benarkan komen"; 2. Pilih lokasi untuk memaparkan komen; 3. Sesuaikan komen; 4. Menguruskan komen, meluluskan, menolak atau memadam; 5. menggunakan & lt ;? php comments_template (); ? & gt; tag untuk memaparkan komen; 6. Membolehkan komen bersarang; 7. Laraskan bentuk komen; 8. Gunakan plugin dan kod pengesahan untuk mengelakkan komen spam; 9. Menggalakkan pengguna menggunakan gravatar avatar; 10. Buat komen untuk dirujuk

Cara memuat naik kod sumber untuk WordPressCara memuat naik kod sumber untuk WordPressApr 20, 2025 pm 12:03 PM

Anda boleh memasang pemalam FTP melalui WordPress, konfigurasikan sambungan FTP, dan kemudian muat naik kod sumber menggunakan Pengurus Fail. Langkah-langkah termasuk: memasang pemalam FTP, mengkonfigurasi sambungan, melayari lokasi muat naik, memuat naik fail, dan memeriksa bahawa muat naik berjaya.

Cara menyalin kod WordPressCara menyalin kod WordPressApr 20, 2025 pm 12:00 PM

Bagaimana cara menyalin kod WordPress? Salin dari antara muka pentadbir: Log masuk ke laman web WordPress, navigasi ke destinasi, pilih kod dan tekan Ctrl C (Windows)/Command C (Mac) untuk menyalin kod. Salin dari fail: Sambung ke pelayan menggunakan SSH atau FTP, navigasi ke fail tema atau plug-in, pilih kod dan tekan Ctrl C (Windows)/Command C (Mac) untuk menyalin kod.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini