WordPressの
WP_ERRORクラス:エレガントなエラー処理メカニズム
WordPressのWP_Error
クラスは、アプリケーションのエラーを管理および変更するためのシンプルで強力なエラー処理メカニズムを提供します。アプリケーションに簡単に統合し、WordPressコア関数によって返されるエラーを効果的に処理し、ユーザーエクスペリエンスを改善するためのカスタムエラーメッセージを作成します。さらに、is_wp_error
などの実用的な関数は、変数または関数の戻り値がWP_Error
のインスタンスであるかどうかを確認でき、それにより問題を効率的にデバッグすることができます。
コードがどれほど熟練していて細かく書かれていても、どの開発プロセスでもエラーを回避することはできません。 WordPress開発者として、すべてのコードエラーがエンドユーザーに影響を与えることなく正しく処理されることを確認することはあなたの責任です。 WordPressには、基本的なエラー処理クラスが付属しており、基本的なエラー処理のためにコードに統合できます。 WP_Error
このチュートリアルでは、クラスの基本的な構造と作業原則を調査します。最も重要なことは、アプリケーションにクラスを統合する方法を紹介します。
WP_Error
WP_Error
カテゴリの詳細な説明
クラスには単純な構造がありますが、強力な機能があります。これは、プラグインのエラー処理メカニズムとして使用するのに十分です。そのソースコードは、WP_Error
ファイルにあります。その特性と方法を見てみましょう。
プロパティWP_Error
wp-includes/class-wp-error.php
と
。は関連するエラーメッセージを保存するために使用されますが、後でアクセスする関連データを保存するためにWP_Error
はオプションで使用されます。 $errors
単純なキーと値のペアを使用して関連するエラーとデータをオブジェクトに保存するため、$error_data
で定義されているキーは、以前に定義されたキーの上書きを避けるために一意でなければなりません。 $errors
$error_data
メソッドWP_Error
WP_Error
-
get_error_codes()
:利用可能なすべてのエラーコードを特定のWP_Error
インスタンスに対して返します。最初のエラーコードのみが必要な場合、別の個別の関数が利用可能です。 get_error_code()
- :
が提供されていない場合、関数は単に特定のget_error_messages( $code )
インスタンスに保存されているすべてのメッセージを返すだけです。同様に、特定のエラーコードを使用してメッセージを返す必要がある場合は、$code
を使用してください。 WP_Error
get_error_message( $code )
:この関数は、インスタンス化されたオブジェクトに保存されているエラーを変更する場合に特に役立ちます。 - と
add( $code, $message, $data )
が不要であっても、WP_Error
変数はまだ入力されることに注意してください。 $message
$data
$errors
: プロパティのみを変更する場合は、この関数を使用できます。 - パラメーターは2番目の位置にあることに注意してください。
add_data( $data, $code)
が提供されていない場合、エラーデータが最初のエラーコードに追加されます。 $error_data
$code
add
:これは、最近WordPress 4.1に追加された新しい方法であり、特定のキーに関連付けられたすべてのエラーメッセージとデータを削除します。 $code
- function
remove( $code )
関数によって返される特定の変数またはデータが
のインスタンスであるかどうかをどのようにして知るのですか?指定された変数に基づいてtrueまたはfalseを返すユーティリティ関数を使用して確認できます。
get_error_codes()
:利用可能なすべてのエラーコードを特定のWP_Error
インスタンスに対して返します。最初のエラーコードのみが必要な場合、別の個別の関数が利用可能です。 get_error_code()
get_error_messages( $code )
インスタンスに保存されているすべてのメッセージを返すだけです。同様に、特定のエラーコードを使用してメッセージを返す必要がある場合は、$code
を使用してください。 WP_Error
get_error_message( $code )
add( $code, $message, $data )
が不要であっても、WP_Error
変数はまだ入力されることに注意してください。 $message
$data
$errors
:add_data( $data, $code)
が提供されていない場合、エラーデータが最初のエラーコードに追加されます。 $error_data
$code
add
:これは、最近WordPress 4.1に追加された新しい方法であり、特定のキーに関連付けられたすべてのエラーメッセージとデータを削除します。 $code
remove( $code )
WP_Error
:is_wp_error()
のインスタンスである場合、trueを返し、それ以外の場合はfalseを返します。
- アプリケーションに実装
is_wp_error( $thing )
$thing
WP_Error
内部的にどのように機能するかを理解するだけで、自分のアプリケーションで適切に実装する方法を学ぶ必要があります。いくつかの例を取り、それがどのように機能するかをよりよく理解しましょう。
WordPressコア関数によって返される
WP_Error
WordPressは、開発プロセスをスピードアップするために使用できる多くの実用的な機能を提供します。ほとんどの関数には、使用できる基本的なエラー処理関数も装備されています。
たとえば、WP_Error
は、特定のURLへのリモートPOSTリクエストを作成するために使用できる非常に便利な機能です。ただし、リモートURLが常にアクセスできるとは期待できません。または、リクエストが常に成功します。マニュアルページから、この関数が失敗したときに
このコードをご覧ください:
ご覧のとおり、リモートPOSTリクエストを実行しています。ただし、単にwp_remote_post
データを取得するのではなく、以前に導入された便利なWP_Error
関数を使用していくつかのチェックを行います。すべてが機能する場合、私たちはやりたいことを
アプリケーションでカスタムエラーを返します
handle_form_submission
// 向远程 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 { // 执行某些操作 }
もちろん、これらの機能に独自のクリーニングと検証を実装する必要もありますが、これはこのチュートリアルの範囲内ではありません。これで、エラーベースのときにWP_Error
インスタンスを正しく返すことを知って、それを使用して、より意味のあるエラーメッセージをエンドユーザーに提供できます。
フォームの送信エラーを表示する特定の部分がアプリケーションにあると仮定します。これを行うことができます。
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; }要約
ソフトウェア開発に秀でようとすることは、コードがすべきことを実行できないときに何をすべきかを知ることを意味し、アプリケーションがそれを優雅に処理できるようにすることを意味します。
WordPressの場合、付属の
クラスを使用すると、アプリケーションに統合できるかなりシンプルだが強力なエラー処理実装が提供されます。
WP_Error
以上がWP_ERRORクラスの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

WordPress開発に適した統合開発環境(IDE)の選択 10年間、WordPress開発のための多数の統合開発環境(IDE)を調査しました。 自由から商業、基本的なものまで、純粋な品種

このチュートリアルでは、ドリブルAPIを活用して、オブジェクト指向プログラミング(OOP)の原則を使用してWordPressプラグインを構築します。 元の意味と構造を維持しながら、明確さと簡潔さのためにテキストを洗練しましょう。 オブジェクトオリ

PHPデータをjavaScriptに渡すためのベストプラクティス:wp_localize_scriptとwp_add_inline_scriptの比較 PHPファイルに静的文字列内にデータを保存することが推奨される練習です。 JavaScriptコードでこのデータが必要な場合は、INCORPORAT

このガイドは、WordPress PDFプラグインを使用して、WordPressの投稿とページにPDFファイルを埋め込み、保護する方法を示しています。 PDFは、カタログからプレゼンテーションまで、さまざまなコンテンツに対してユーザーフレンドリーで普遍的にアクセス可能な形式を提供します。 この方法は

WordPressは、初心者が簡単に始めることができます。 1.バックグラウンドにログインした後、ユーザーインターフェイスは直感的であり、シンプルなダッシュボードは必要なすべての関数リンクを提供します。 2。基本操作には、コンテンツの作成と編集が含まれます。 WysiWygエディターは、コンテンツの作成を簡素化します。 3.初心者は、プラグインとテーマを介してウェブサイトの機能を拡張でき、学習曲線は存在しますが、練習を通じて習得できます。

人々は、その力と柔軟性のためにWordPressを使用することを選択します。 1)WordPressは、さまざまなWebサイトのニーズに適した、使いやすさとスケーラビリティを備えたオープンソースのCMSです。 2)豊富なテーマとプラグイン、巨大なエコシステム、強力なコミュニティサポートがあります。 3)WordPressの作業原則は、テーマ、プラグイン、コア関数に基づいており、PHPとMySQLを使用してデータを処理し、パフォーマンスの最適化をサポートします。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1
使いやすく無料のコードエディター
