• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/delete post meta

提供: WordPress Codex 日本語版
移動先: 案内検索

この関数は、投稿から指定したキー(もしくはキーと値)を持つカスタムフィールドをすべて削除します。update_post_meta()get_post_meta()add_post_meta() も見てください。

使い方

<?php delete_post_meta( $post_id, $meta_key, $meta_value ); ?>

パラメータ

$post_id
整数) (必須) 削除したいカスタムフィールドを持つ投稿の ID。
初期値: なし
$meta_key
文字列) (必須) 削除したいカスタムフィールドのキー。
初期値: なし
$meta_value
mixed) (オプション) 削除したいカスタムフィールドの値。これは、同じキーを持つカスタムフィールドを区別するパラメータです。省略すると、指定したキーを持つカスタムフィールドはすべて削除されます。
初期値: ''

戻り 値

(真偽値) 
失敗なら False、成功なら True を返す。

用例

デフォルトの使い方

<?php delete_post_meta( 76, 'my_key', 'Steve' ); ?>

その他の例

投稿にカスタムフィールドを追加するプラグインを例に考えます。追加するカスタムフィールドは related_postspost_inspiration とし、プラグインがアンインストールされるときには、これらのカスタムフィールドを削除するとします。

指定したキーを持つカスタムフィールドをすべて削除するため、以下のコードを uninstall 関数に追加します:

<?php delete_post_meta_by_key( 'related_posts' ); ?>

キーが post_inspiration で値が Sherlock Holmes 以外のカスタムフィールドを削除する場合:

<?php
  $allposts = get_posts( 'numberposts=-1&post_type=post&post_status=any' );

  foreach( $allposts as $postinfo ) {
    delete_post_meta( $postinfo->ID, 'related_posts' );
    $inspiration = get_post_meta( $postinfo->ID, 'post_inspiration' );
    foreach( $inspiration as $value ) {
      if ( 'Sherlock Holmes' !== $value )
        delete_post_meta( $postinfo->ID, 'post_inspiration', $value );
    }
  }
?>

ID が 185 の投稿が削除されたので、その投稿を参照している related_posts キーを持つカスタムフィールドを削除する場合:

<?php
  $allposts = get_posts( 'numberposts=-1&post_type=post&post_status=any' );

  foreach( $allposts as $postinfo ) {
    delete_post_meta( $postinfo->ID, 'related_posts', '185' );
  }
?>

さらに詳しい例は post_meta 関数の例 を見てください。

注: update_post_meta() 関数とは異なり、この関数は条件に一致するすべてのカスタムフィールドを削除します。

ソースファイル

delete_post_meta()wp-includes/post.php にあります。

更新履歴

新規導入: 1.5.0


カスタムフィールド: the_meta(), get_post_meta(), add_post_meta(), update_post_meta(), delete_post_meta(), get_post_custom(), get_post_custom_values(), get_post_custom_keys() (post_meta 関数の例 /en も参照)


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/delete post meta最新版との差分