delete_row()


WordPressのdelete_row()関数は、データベースの特定のテーブルから行を削除するために使用されます。

構文

delete_row( string $field, mixed $value, int $post_id );

引数の説明:

  • $field (string) — 削除対象のフィールド名。
  • $value (mixed) — 削除対象の値。
  • $post_id (int) — 操作対象の投稿ID。

例1: カスタムフィールドの行を削除する

指定した投稿のカスタムフィールドから行を削除します。

<?php delete_row( 'my_custom_field', 'example_value', get_the_ID() ); ?>

例2: 特定の条件で行を削除する

投稿IDを指定して、特定の値を持つ行を削除します。

<?php delete_row( 'meta_key', 'target_value', 42 ); ?>

例3: 現在の投稿のデータを削除する

現在の投稿に関連付けられたカスタムデータを削除します。

<?php delete_row( 'custom_meta_key', 'specific_data', get_queried_object_id() ); ?>

例4: すべての投稿の特定の行を削除する

すべての投稿に対して特定の値を削除するカスタムループを使用します。

<?php
$posts = get_posts( array( 'post_type' => 'post', 'numberposts' => -1 ) );
foreach ( $posts as $post ) {
    delete_row( 'meta_field', 'remove_this_value', $post->ID );
}
?>

例5: ユーザー定義の条件に基づいて行を削除する

条件をチェックし、条件を満たす場合にのみデータを削除します。

<?php
if ( current_user_can( 'edit_post', get_the_ID() ) ) {
    delete_row( 'custom_field_key', 'data_to_remove', get_the_ID() );
}
?>

注意事項

  • この関数は、ACF(Advanced Custom Fields)プラグインが有効化されている場合にのみ動作します。
  • 削除操作は即時かつ不可逆的です。慎重に実行してください。