概要
delete_comment_meta
関数は、WordPressにおいて特定のコメントメタ情報の値を削除するために使用されます。この関数は、コメントに関連する追加情報を管理する際に便利です。具体的な機能としては、次のような場合に使用されることがよくあります。
- コメントのカスタムフィールドを管理する際。
- スパムコメントに関連するメタ情報をクリアする際。
- コメントの未使用情報を整理する際。
- プラグインやテーマで使用する際の不要なメタデータの削除。
- ユーザーによるコメントの編集や削除の際にメタ情報も合わせて消去する場合。
- コメント承認や拒否の際に関連情報を整理する場合。
- パフォーマンス最適化の目的で不要なデータを削除する場合。
- コメントリプレイや投票システムを構築する際のメンテナンスでの使用。
構文
delete_comment_meta( $comment_id, $meta_key, $meta_value );
パラメータ
- $comment_id (int): メタ情報を削除するコメントのID。
- $meta_key (string): 削除したいメタ情報のキー。
- $meta_value (mixed) (オプション): 削除対象の特定の値。指定しない場合、指定されたキーの全ての値が削除される。
戻り値
- 成功した場合は
true
、失敗した場合はfalse
を返します。
関連する関数
使用可能なバージョン
delete_comment_meta
関数は、WordPress 2.9.0以降で使用可能です。
コアファイルのパス
wp-includes/comment.php
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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: コメントメタ情報を削除
このサンプルコードは、特定のコメントから「spam_reason」というメタ情報を削除します。
$comment_id = 123; // コメントのID
$meta_key = 'spam_reason'; // 削除したいメタキー
$deleted = delete_comment_meta( $comment_id, $meta_key );
if ( $deleted ) {
echo "メタ情報が正常に削除されました。";
} else {
echo "メタ情報の削除に失敗しました。";
}
引用元: https://developer.wordpress.org/reference/functions/delete_comment_meta/
サンプル 2: 特定の値を持つメタ情報を削除
このサンプルは、特定の値「not_spam」を持つ「spam_reason」メタ情報を削除します。
$comment_id = 456; // コメントのID
$meta_key = 'spam_reason';
$meta_value = 'not_spam';
$deleted = delete_comment_meta( $comment_id, $meta_key, $meta_value );
if ( $deleted ) {
echo "指定した値のメタ情報が削除されました。";
} else {
echo "指定した値のメタ情報の削除に失敗しました。";
}
引用元: https://developer.wordpress.org/reference/functions/delete_comment_meta/
サンプル 3: メタ情報を削除してメッセージを表示
このサンプルは、メタ情報削除後にメッセージを表示する実装です。
$comment_id = 789; // コメントのID
$meta_key = 'user_feedback';
if ( delete_comment_meta( $comment_id, $meta_key ) ) {
echo "メタ情報 '$meta_key' が削除されました。";
} else {
echo "メタ情報 '$meta_key' が見つからなかったため、削除できませんでした。";
}
引用元: https://developer.wordpress.org/reference/functions/delete_comment_meta/
サンプル 4: 一括削除処理の例
このサンプルは、複数のコメントメタデータを一括で削除する簡単なループを示します。
$comment_ids = [101, 102, 103]; // コメントのIDの配列
$meta_key = 'temporary_data';
foreach ( $comment_ids as $comment_id ) {
delete_comment_meta( $comment_id, $meta_key );
echo "コメントID $comment_id のメタ情報 '$meta_key' を削除しました。<br>";
}
引用元: https://developer.wordpress.org/reference/functions/delete_comment_meta/
サンプル 5: 削除結果を配列で確認
このサンプルは、削除結果を配列で格納して後で確認する例です。
$comment_ids = [201, 202, 203];
$meta_key = 'old_value';
$results = [];
foreach ( $comment_ids as $comment_id ) {
$results[$comment_id] = delete_comment_meta( $comment_id, $meta_key );
}
print_r($results); // 結果を表示
引用元: https://developer.wordpress.org/reference/functions/delete_comment_meta/