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



お勧め

5.3の新機能:クエリーログに任意の項目を追加できる新フィルター(2019年10月23日 更新)

5.3 RC2」が公開され、正式リリースまであと20日。公式ディレクトリにプラグインを公開していることもあり、5.3に関する開発者向けの情報「Miscellaneous Developer Focused Changes in 5.3」を読んでいる。

Login rebuilder 2.7.4の変更内容を紹介(2022年7月6日 更新)

Login rebuilder 2.7.4では、ダッシュボードの「ログインのログ」ウィジェット内に現在のユーザー(管理者のみ)のログイン状況を簡潔なメッセージで表示するようにした。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

プラグインの設定ページもレスポンシブ対応(2014年6月3日 更新)

レスポンシブ対応したWordPressの管理画面。プラグインやテーマのカスタマイズで管理画面を拡張しているなら、切り替わるタイミングはきっちり押さえておきたいところではないだろうか。

oEmbed対応サイトを整理した(2023年8月9日 更新)

投稿記事にTwitterやYouTubeのURL(アドレス)を記述したとき、表示されるページにはリンクとしてではなく、埋め込んだURLの内容が表示される。この仕組み(機能)はoEmbedというもので、対応サイトは随時バージョンアップしている。