Снова ищем одного-двух вордпрессеров в нашу команду!

wp_delete_post() — перемещает в корзину или полностью удаляет пост

Функция полностью удаляет, либо перемещает в корзину пост, страницу или вложение с указанным в параметрах ID. Кроме того, из базы удаляются данные произвольных полей поста, дочерние посты (если имеются) и комментарии. Ну и редакции разумеется.

В случае успеха возвращает объект поста (до удаления), в случае неудачи — false.

wp_delete_post( $postid = 0, $force_delete = false )
$postid
(целое число) Собственно ID поста, который хотим удалить (параметр обязателен, текущий пост из цикла функция удалять не станет).
$force_delete
(логическое) Параметр появился в версии 2.9, может принимать следующие значения:

  • true — удалить пост полностью, минуя корзину,
  • false — переместить пост в корзину (в этом случае функция преобразуется в wp_trash_post(), но только для типов post и page).

Пост также будет безвозвратно удалён вне зависимости от значения параметра $force_delete, если:

Хуки:

  • В самом начале (сразу после проверки, что пост существует и что не нужно использовать wp_trash_post() или для вложений wp_delete_attachment()), функция запускает before_delete_post с одним параметром $postid.
  • Затем, после удаления комментариев, произвольных полей, редакций и непосредственно перед удалением из базы строки самого поста — delete_post.
  • Если удаление из базы прошло успешно, то сразу же после него — deleted_post.
  • И в самом конце, после очистки кэша и перед возвращением объекта поста — after_delete_post (параметр всех хуков одинаковый).

Пример. Удалим стандартную запись «Привет, мир!»

То есть мы перемещаем в корзину пост с ID = 1:

$udalennyj = wp_delete_post( 1 );
echo 'Запись <b>' .  $udalennyj->post_title . '</b> перемещена в корзину.';

Миша

Впервые познакомился с WordPress в 2009 году. С 2014 года меня можно встретить на WordCamp по всему миру — официальной конфе по WordPress, иногда там выступаю, но с 2019 выступаю только на тех, которые сам организовываю. Также периодически школа Epic Skills и LoftSchool приглашают меня вести у них уроки/вебинары.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля — пишите мне.

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, в случае несоблюдения этого условия в 99% случаях ваш коммент будет удалён, а автор заблокирован. Печалька.