概要
_doing_it_wrong
アクションは、不適切な関数などの呼び出しをマークするために使用されます。このアクションは、特定の条件下で推奨される使用法に従わないコードを示すことを意図しています。これにより、開発者は非推奨のコードを特定し、適切な代替手段に更新することができます。このアクションは、以下のような状況でよく使用されます。
- コードの非推奨通知
- エラーログの作成
- デバッグのための情報提供
- 開発者向けの警告表示
- プラグインやテーマの更新の計画
- APIの変更通知
- 使用方法ガイドの改善
- コード品質の向上
構文
do_action( 'doing_it_wrong', $function, $message, $version );
パラメータ
$function
: 呼び出された不適切な関数の名前(文字列)。$message
: 不適切な使用に関するメッセージ(文字列)。$version
: 推奨される代替手段のバージョン(文字列)。
戻り値
このアクションは戻り値を持たず、ただアクションをフックとして実行します。
関連する関数
使用可能なバージョン
このアクションはWordPress 3.0.0以降で使用可能です。
コアファイルのパス
wp-includes/functions.php
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: 不適切な関数使用の警告
add_action( 'init', 'my_custom_function' );
function my_custom_function() {
if ( some_deprecated_function() ) {
do_action( 'doing_it_wrong', 'some_deprecated_function', 'この関数は非推奨です。', '5.0.0' );
}
}
このコードは、非推奨の関数が呼び出されたときに警告を表示します。
サンプル2: プラグインの初期化での使用
add_action( 'plugins_loaded', 'my_plugin_init' );
function my_plugin_init() {
if ( ! function_exists( 'required_function' ) ) {
do_action( 'doing_it_wrong', 'required_function', 'この機能はプラグインに必要です。', '3.5.0' );
}
}
プラグインがロードされる際に、必要な関数が存在しない場合に警告を表示します。
サンプル3: テーマのセットアップでの警告
add_action( 'after_setup_theme', 'my_theme_setup' );
function my_theme_setup() {
if ( ! current_theme_supports( 'custom-header' ) ) {
do_action( 'doing_it_wrong', 'current_theme_supports', 'カスタムヘッダーサポートが必要です。', '4.7.0' );
}
}
テーマのセットアップ中に必要なサポートがない場合に警告を表示します。
サンプル4: ウェブリクエストでのチェック
add_action( 'template_redirect', 'check_some_conditions' );
function check_some_conditions() {
if ( some_condition_not_met() ) {
do_action( 'doing_it_wrong', 'some_condition_not_met', 'この条件は満たされていません。', '5.6.0' );
}
}
テンプレートのリダイレクト時に特定の条件が満たされない場合に警告を表示します。
サンプル5: カスタム関数の使用確認
function custom_function() {
if ( ! defined( 'CUSTOM_CONSTANT' ) ) {
do_action( 'doing_it_wrong', 'custom_function', 'CUSTOM_CONSTANTが定義されていません。', '5.9.0' );
}
}
カスタム関数が特定の定数を参照しているか確認し、未定義の場合は警告を表示します。
各サンプルは、アクションとしての _doing_it_wrong
の使用方法を示すために作成されたものであり、開発者がコードの品質を確保する手助けをします。