update_option() の使い方|説明・引数・注意点

説明

update_option() は、オプションを更新する関数です。存在しなければ新規追加されます。

基本構文

update_option( string $option, mixed $value, string|bool|null $autoload = null ): bool

引数

  • $option:オプション名
  • $value:保存する値
  • $autoload:自動読み込みするか(true / false)

戻り値

更新できたら true。値が変わらない場合は false。

使い方(サンプル)

update_option( 'my_plugin_settings', array( 'color' => 'red' ) );

注意点

  • 値が前回と同じだと false が返ります。失敗と区別するときは、事前に比較します。
  • 頻繁に使わない大きなデータは、$autoload を false にして初期読み込みの負荷を下げます。

実務での使いどころ

  • プラグインやテーマの、設定値を保存するとき。
  • オプションがなければ作り、あれば更新するとき。
  • 配列を、1つのオプションとしてまとめて保存するとき。

よくあるミスと対処

  • 戻り値が false のとき、失敗したと考える。値が変わらないときも false が返る。
  • 大きなデータを、既定のまま保存している。毎回読み込まれるため、使うときだけ読み込みたいデータは、$autoload を false にする。
  • 保存前に、入力値を検証・サニタイズしていない。

NG例

if ( ! update_option( 'my_setting', $value ) ) {
	// 失敗として扱っているが、値が同じだっただけの場合もある
}

OK例

update_option( 'my_setting', sanitize_text_field( $value ), false );

使い分け早見表

関数 役割
update_option() 値を保存する(なければ作成、あれば更新)
add_option() なければ作成する(あれば何もしない)
get_option() 値を取得する

関連項目

get_option()、add_option()、delete_option()

公式リファレンス:update_option() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました