MENU

add_settings_error()

add_settings_error() は、WordPress の設定ページでエラーメッセージや通知を表示するための関数です。

設定ページでフォーム送信時の入力エラーや成功メッセージを管理する際に役立ちます。

この関数を使うことで、ユーザーに適切なフィードバックを提供し、設定ミスを防ぐことができます。

目次

機能の説明

add_settings_error() は、WordPress の管理画面の設定ページにカスタムエラーや成功メッセージを追加します。
通常、settings_errors() と併用することで、登録したエラーメッセージを画面に表示できます。

主な用途

  • フォームの入力チェック(必須フィールドの未入力、無効な値など)
  • 設定の保存結果の通知(成功メッセージや警告メッセージ)
  • カスタム管理ページでのユーザーフィードバック表示

シンプルなコード例

add_settings_error(
    'sample_option', // 設定オプションの識別子
    'invalid_value', // エラーコード
    '入力された値が無効です。', // メッセージ
    'error' // エラーレベル(error または updated)
);
  • 'sample_option':エラーを関連付ける設定オプションの識別子
  • 'invalid_value':エラーコード(ユニークな識別子)
  • '入力された値が無効です。':表示するメッセージ
  • 'error':エラーレベル(エラーなら error、成功メッセージなら updated

使い方の説明

add_settings_error()settings_errors() と組み合わせて使います。

基本的な使い方

function sample_validate_input($input) {
    if (empty($input)) {
        add_settings_error(
            'sample_option',
            'empty_input',
            'このフィールドは必須です。',
            'error'
        );
    } else {
        add_settings_error(
            'sample_option',
            'success_message',
            '設定が正常に保存されました。',
            'updated'
        );
    }
    return $input;
}

add_action('admin_notices', function() {
    settings_errors('sample_option');
});
  • sample_validate_input() で入力値をチェックし、エラーまたは成功メッセージを登録
  • settings_errors('sample_option') で登録したメッセージを管理画面に表示

一緒に使うことが多い関連タグ

settings_errors()

登録されたエラーメッセージを表示する。

settings_errors('sample_option');

管理画面に add_settings_error() で登録したエラーメッセージを出力します。

register_setting()

設定フィールドを登録し、バリデーション関数と連携できる。

register_setting('sample_group', 'sample_option', 'sample_validate_input');
  • 'sample_group':設定を保存するオプショングループ
  • 'sample_option':保存する設定オプションの識別子
  • 'sample_validate_input':バリデーション関数を指定し、エラー処理と連携

追加情報で取得したい場合

エラーリストを取得する

get_settings_errors() を使うと、登録されたエラーリストを取得できます。

$errors = get_settings_errors('sample_option');
foreach ($errors as $error) {
    echo '<p>' . esc_html($error['message']) . '</p>';
}

取得できる情報

  • $error['setting']:関連する設定オプション
  • $error['code']:エラーコード
  • $error['message']:表示メッセージ
  • $error['type']:エラーレベル(error または updated

想定されるトラブル

エラーメッセージが表示されない

解決方法

  • settings_errors()admin_notices フック内で呼び出しているか確認する
  • get_settings_errors() でエラーメッセージが登録されているか確認する

エラーが登録されても表示されない

解決方法

  • add_settings_error()setting パラメータが settings_errors() の引数と一致しているか確認する
  • WordPress のキャッシュをクリアして、エラーが適切に更新されるか確認する

Q&A

add_settings_error() のメッセージを保存できますか?

いいえ、この関数は一時的なエラーメッセージを登録するもので、保存はされません。

add_settings_error() のエラーレベルには何が指定できますか?

'error'(エラーメッセージ)または 'updated'(成功メッセージ)を指定できます。

settings_errors()admin_notices 以外で使えますか?

はい、管理画面の任意の場所に表示できますが、適切なフックを使用するのが推奨されます。

まとめ

add_settings_error() は、WordPress の管理画面でエラーメッセージや成功通知を表示するための関数です。

settings_errors() と組み合わせることで、ユーザーに適切なフィードバックを提供できます。

フォームのバリデーションや設定変更の通知に便利な機能です。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次