delete_term_meta()


WordPressのdelete_term_meta()関数は、指定されたタームのメタデータを削除するために使用されます。この関数は、タームIDとメタキーを指定して、該当するメタデータをデータベースから削除します。

構文

delete_term_meta( int $term_id, string $meta_key, mixed $meta_value = '' );

引数の説明:

  • $term_id(int) — メタデータを削除するタームのID。
  • $meta_key(string) — 削除するメタデータのキー。
  • $meta_value(mixed) — オプション。指定された場合、この値に一致するメタデータのみを削除します。

例1: タームメタデータの削除

この例では、タームIDが5のタームから「color」というキーのメタデータを削除します。

<?php delete_term_meta(5, 'color'); ?>

例2: 特定の値を持つメタデータの削除

この例では、タームIDが10のタームから「size」というキーで値が「large」のメタデータを削除します。

<?php delete_term_meta(10, 'size', 'large'); ?>

例3: タームオブジェクトを使用したメタデータの削除

タームオブジェクトを使用してメタデータを削除する例です。

<?php $term = get_term_by('slug', 'news', 'category'); delete_term_meta($term->term_id, 'priority'); ?>

例4: タームの削除時にメタデータも削除

タームが削除される際に、関連するメタデータも削除する例です。

<?php add_action('delete_term', 'delete_term_meta_on_term_delete', 10, 4); function delete_term_meta_on_term_delete($term_id, $tt_id, $taxonomy, $deleted_term) { delete_term_meta($term_id, 'custom_meta_key'); } ?>

例5: 複数のメタデータを一度に削除

この例では、タームIDが15のタームから複数のメタデータを一度に削除します。

<?php delete_term_meta(15, 'color'); delete_term_meta(15, 'size'); delete_term_meta(15, 'weight'); ?>

例6: 条件付きでメタデータを削除

特定の条件を満たす場合にのみメタデータを削除する例です。

<?php if (get_term_meta(20, 'status', true) === 'inactive') { delete_term_meta(20, 'status'); } ?>

例7: タームメタデータの存在確認後に削除

メタデータが存在する場合にのみ削除する例です。

<?php if (metadata_exists('term', 25, 'rating')) { delete_term_meta(25, 'rating'); } ?>

例8: タームメタデータの一括削除

特定のタームに関連するすべてのメタデータを削除する例です。

<?php $meta_keys = get_term_meta(30); foreach ($meta_keys as $key => $value) { delete_term_meta(30, $key); } ?>

注意点

  • メタデータを削除する際は、データのバックアップを取ることを推奨します。
  • 誤って重要なメタデータを削除しないように、削除前に確認を行ってください。
  • タームIDが正しいことを確認してください。存在しないタームIDを指定するとエラーが発生します。

関連機能: