wp_delete_attachment

説明

mixed wp_delete_attachment( [ int $postid = 0 [ , bool $force_delete = false ] ] )
メディア情報(投稿タイプ'attachment')とそのコメント、カスタムフィールド、添付ファイルなどの関連情報をまとめて削除する。

パラメータ

  • $postid
    メディアIDを指定(省略時は0)。
  • $force_delete
    完全に削除する場合はtrue、ゴミ箱に入れる場合はfalseを指定(省略時はfalse)。

返り値

削除操作できた場合はそのメディア情報を返す。メディア情報が見つからなかった場合はnull、削除操作できなかった場合はfalseを返す。


注意

メディア情報の削除は、1つはゴミ箱に入れるパターンと、完全に削除するの2パターンである。ゴミ箱に入れる場合は添付ファイルは削除されない。

一般の投稿情報と異なりメディア情報には添付ファイルがあるため、 wp_delete_post関数とは別にこの関数が用意されている。


使用例

  • メディアIDが12のメディア情報を削除(ゴミ箱)する。
    <?php wp_delete_attachment( 12 ); ?>
  • メディアIDが12のメディア情報を完全に削除する。
    <?php wp_delete_attachment( 12, true ); ?>

フィルター

[5.5.0]削除の前に'pre_delete_attachment'フィルターを呼び出す。パラメータ$deleteにはnullが、$postには削除対象の投稿オブジェクトが、$force_deleteには本関数が受け取った内容が格納されている。このフィルターの返り値がnull以外の場合は削除されない。
$check = apply_filters( 'pre_delete_attachment', null, $post, $force_delete );

アクション

[2.0.0]削除の前('pre_delete_attachment'フィルターの後)に'delete_attachment'アクションを呼び出す。パラメータ$postidには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象のメディア情報オブジェクトが格納されている。
do_action( 'delete_attachment', $post_id, $post );
[2.2.0]メディア情報を削除する直前(関連情報は削除済み)、'delete_post'アクションを呼び出す。パラメータ$postidには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'delete_post', $postid, $post );
[2.2.0]メディア情報を削除した直後(添付ファイルの削除前)、'deleted_post'アクションを呼び出す。パラメータ$postidには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'deleted_post', $postid, $post );

ソースファイル

/wp-includes/post.php

最終更新 : 2020年08月21日 15:05



お勧め

新「WordPress Events and News」ウィジェットが興味深い(2018年5月27日 更新)

4.8のベータ版ですぐに新機能とわかるのが管理者ダッシュボードの新「WordPress Events and News」ウィジェット。ユーザーが指定した地域近隣で開催されるイベント情報を表示してくれるウィジェットで、この中のフォームがちょっと興味深かった。なおこの記事はWordPress 4.8 beta-2をもとにしており、以降のバージョンで変更される可能性があることをあらかじめ断っておく。

meta_compare_key使ってみた(2019年3月19日 更新)

ブロックエディターの登場により、標準のカスタムフィールドを使う機会はかなり減った気がする。そんな中、5.1.0で追加されたのが、カスタムフィールド名(メタキー)に含まれる文字列を指定する'meta_compare_key'キーだ。

投稿一覧ページに「更新日時」カラムを追加してみた(2019年8月27日 更新)

サイトの特性によるが、「投稿」には繰り返し更新するものがある。そんなサイトでは投稿一覧ページに「更新日時」があった方が便利。というわけで、今回は投稿一覧にソートに対応した「更新日時」カラムを追加する方法を紹介する。

投稿一覧に「投稿フォーマット」フィルターが追加される(2019年4月12日 更新)

WordPress 5.2 Beta2(以降5.2Beta2)のソースコードを眺めていると、投稿一覧ページのフィルター機能に「投稿フォーマット」(select要素)が追加されていた。

get_postsとquery_postsを使い分け(2018年5月27日 更新)

get_posts query_postsは、どちらも複数の投稿情報を取得することができる便利な関数である。パラメータとして指定できる内容も共通しているものが多く、query_postsがより詳細なパラメータを指定でき、高機能になっている。