概要
delete_field
関数は、特定のフィールドの値を削除します。この関数は、特定の投稿やタームのカスタムフィールドを削除する際に便利です。例えば、ユーザーが投稿やページを編集している場合に、不要な情報を削除したいときに使用されます。
よく使われる機能の例
- 特定の投稿から不要なカスタムフィールドを削除する。
- 条件に基づいて全てのタームから特定のフィールドを削除する。
- フォームの値をユーザーによってリセットする。
- テーマやプラグインがインストールされた際に一時的なデータをクリアする。
- ユーザーインターフェースからの動的なフィールドの削除を行う。
- プロフィール情報をクリーンアップする際に使用する。
構文
delete_field( $field_key, $post_id );
パラメータ
$field_key
(string): 削除するフィールドのキーまたは名前。$post_id
(int): フィールドが関連付けられている投稿のID。
戻り値
- 成功した場合は
true
、失敗した場合はfalse
を返します。
使用可能なバージョン
- Advanced Custom Fields (ACF) バージョン: 5.0 以降
- WordPress バージョン: 4.0 以降
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル 1: 投稿からカスタムフィールドを削除
// 投稿ID 123 の 'custom_field_name' を削除。
delete_field('custom_field_name', 123);
このコードは、投稿ID 123 のカスタムフィールド ‘custom_field_name’ を削除します。
サンプル 2: タームからカスタムフィールドを削除
// タームID 456 の 'taxonomy_field' を削除。
delete_field('taxonomy_field', 456);
このコードは、タームID 456 に関連する ‘taxonomy_field’ を削除します。
サンプル 3: 条件付きでフィールドを削除
if( get_field('should_delete_field', 123) ) {
delete_field('custom_field_name', 123);
}
このコードは、場合によって投稿ID 123 の ‘custom_field_name’ を削除します。
サンプル 4: ユーザーのプロフィールからカスタムフィールドを削除
// ユーザーID 789 の 'user_custom_meta' を削除。
delete_field('user_custom_meta', 'user_789');
このコードは、ユーザーID 789 のカスタムフィールド ‘user_custom_meta’ を削除します。
サンプル 5: フォーム送信後にフィールドを削除
if ($_POST['form_submitted']) {
delete_field('temporary_field', get_the_ID());
}
このコードは、フォームが送信された後に現在の投稿の ‘temporary_field’ を削除します。