update_row()


WordPressのupdate_row()関数は、データベース内の特定の行を更新するために使用されます。この関数は、カスタムフィールド、メタデータ、またはオプションデータを操作する際に役立ちます。

構文

update_row( string $field, int $row_number, array $value, int|string $post_id );

引数の説明:

  • $field (string) — 更新したいフィールド名。
  • $row_number (int) — 更新する特定の行番号 (1から始まる)。
  • $value (array) — 更新するデータを含む配列。
  • $post_id (int|string) — データを更新する投稿またはページのID。

例 1: カスタムフィールド内の行を更新する

指定された投稿のカスタムフィールド内の2番目の行を更新します。

update_row( 'custom_field', 2, array( 'key' => 'value' ), get_the_ID() );

例 2: メタデータの行を更新する

投稿IDを指定して、特定のメタデータを変更します。

update_row( 'meta_field', 1, array( 'name' => '新しい値' ), 42 );

例 3: カスタム投稿タイプの行を更新する

カスタム投稿タイプのフィールドデータを更新します。

update_row( 'custom_meta', 3, array( 'price' => 5000 ), get_the_ID() );

例 4: 条件に基づいて行を更新する

投稿が公開されている場合にのみフィールドを更新します。

if ( get_post_status( get_the_ID() ) === 'publish' ) {
    update_row( 'field_name', 1, array( 'status' => 'active' ), get_the_ID() );
}

例 5: カスタムフィールドに新しい情報を追加する

既存の行を更新して、情報を追加します。

update_row( 'user_data', 4, array( 'role' => 'editor' ), get_the_ID() );

注意事項

  • $fieldが存在しない場合、エラーが発生する可能性があります。
  • 行番号$row_numberは1から始まる必要があります。