wp_delete_post

説明

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

パラメータ

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

返り値

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

注意

投稿情報の削除は、1つはゴミ箱に入れると(ゴミ箱に入れれる投稿情報は、投稿タイプが'post'または'page'のみ)、完全に削除するの2パターンである。

[6.6.0]"delete_post_{$post->post_type}"(delete_post_postやdelete_post_pageなど)および"deleted_post_{$post->post_type}"(deleted_post_postやdeleted_post_pageなど)アクションが追加された。


使用例

  • 投稿IDが10の投稿情報を削除(ゴミ箱)する。
    <?php wp_delete_post( 10 ); ?>
  • 投稿IDが10の投稿情報を完全に削除する。
    <?php wp_delete_post( 10, true ); ?>

フィルター

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

アクション

[3.2.0]削除の前('pre_delete_post'フィルターの後)に'before_delete_post'アクションを呼び出す。パラメータ$post_idには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'before_delete_post', $post_id, $post );
[6.6.0]投稿情報を削除する直前(関連情報は削除済み)、"delete_post_{$post->post_type}"アクションを呼び出す。パラメータ$post_idには本関数が受け取った内容が、$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( "delete_post_{$post->post_type}", $post_id, $post );
[1.2.0]投稿情報を削除する直前(関連情報は削除済み)、'delete_post'アクションを呼び出す。パラメータ$post_idには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'delete_post', $post_id, $post );
[6.6.0]投稿情報を削除した直後、"deleted_post_{$post->post_type}"アクションを呼び出す。パラメータ$post_idには本関数が受け取った内容が、$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( "deleted_post_{$post->post_type}", $post_id, $post );
[2.2.0]投稿情報を削除した後、'deleted_post'アクションを呼び出す。パラメータ$post_idには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'deleted_post', $post_id, $post );
[3.2.0]本関数を終了する直前、after_delete_postアクションを実行する。パラメータ$post_idには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$postが追加され、削除対象の投稿オブジェクトが格納されている。
do_action( 'after_delete_post', $post_id, $post );

ソースファイル

/wp-includes/post.php

最終更新 : 2024年07月22日 12:26



お勧め

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)

先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。

HTML entities button:プラグイン作ってみました(2021年4月28日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。

5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)

WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。