get_settings_errors()


WordPress関数get_settings_errors()は、設定ページで発生したエラーやメッセージを取得するために使用されます。

構文

get_settings_errors( string $setting = '', bool $sanitize = false, bool $hide_on_update = false );

引数の説明:

  • $setting (string) — 特定の設定名を指定します。空の場合、すべてのエラーを返します。
  • $sanitize (bool)trueを指定すると、エラー情報をサニタイズします。
  • $hide_on_update (bool)trueを指定すると、設定が更新された場合にエラーを非表示にします。

例1: 全ての設定エラーを取得

以下のコードは、ページ上のすべての設定エラーを取得して表示します。

<?php
$errors = get_settings_errors();
foreach ( $errors as $error ) {
    echo '<div>' . $error['message'] . '</div>';
}
?>

例2: 特定の設定のエラーを取得

特定の設定名のエラーを取得する場合の例です。

<?php
$errors = get_settings_errors( 'my_setting' );
if ( ! empty( $errors ) ) {
    echo '<p>' . $errors[0]['message'] . '</p>';
}
?>

例3: 更新後にエラーを非表示

設定が更新された場合にエラーを非表示にする方法を示します。

<?php
$errors = get_settings_errors( '', false, true );
if ( empty( $errors ) ) {
    echo '<p>エラーはありません。</p>';
}
?>

例4: サニタイズされたエラーメッセージを取得

エラーメッセージをサニタイズして取得する方法の例です。

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

注意事項

  • get_settings_errors()は、正確なエラー情報を取得するために、add_settings_error()と併用してください。
  • エラーや警告を表示する際には、適切なHTMLエスケープを使用してください。
  • 設定ページの安全性を確保するため、非表示にする条件を適切に設定してください。

関連機能: