wp_trash_post()
Переміщує вказаний запис (пост) у кошик. Якщо кошик вимкнено, запис буде видалено назавжди.
При переміщенні запису в кошик їй встановлюється статус trash
. У метаполі _wp_trash_meta_status
зберігається її попередній статус і в метаполі _wp_trash_meta_time
записується час переміщення до кошика. Також, всі коментарі запису набувають статусу post-trashed
(у полі comment_approve ), а колишні статуси коментарів посту записуються в метаполі посту ‘ _wp_trash_meta_comments_status
‘. Все це потрібне для відновлення запису з кошика.
Якщо при викликі цієї функції константа EMPTY_TRASH_DAYS=false
, то керування повністю передається функції wp_delete_post() .
Завжди краще використовувати цю функцію замість wp_delete_post() . Втім, wp_delete_post() передає управління wp_trash_post() , якщо кошик включений і тип запису дорівнює post або page. Для будь-яких типів wp_delete_post() завжди видаляє запис.
Налаштування кошика у WordPress
За замовчуванням у WordPress кошик включений і записи в ньому зберігаються 30 днів, після чого видаляються назавжди. Вимикається вона шляхом встановлення (визначення) константи EMPTY_TRASH_DAYS=false
. Визначати константу потрібно у файлі конфігурації wp-config.php :
define( 'EMPTY_TRASH_DAYS', false ); // кошик відключений define( 'EMPTY_TRASH_DAYS', true ); // Кошик включений. За замовчуванням у WP define( 'EMPTY_TRASH_DAYS', 30); // кошик включена і записи в ній зберігатимуться 30 днів, після чого будуть видалені.
Як вимкнути корзину для окремих типів записів дивіться в сатьє: Як вимкнути корзину в WordPress
Використовуйте wp_untrash_post() , коли потрібно програмно повернути запис із кошика.
Використовуйте wp_trash_comment() , коли потрібно помістити коментар до кошика.
Хуки з функції
Повертає
WP_Post|false|null
. Масив даних запису (поста) чи false.
Використання
wp_trash_post($post_id);
-
$post_id
(число) (обов’язковий) - ID посту. За промовчанням передається значення глобальної змінної $post.
Приклади
#1 Перемістимо запис до кошика
Якщо кошик увімкнений, то перемістимо запис з ID=15 в кошик. Запис буде в кошику 30 днів, протягом яких ми можемо його відновити. Після закінчення 30 днів запис буде видалено повністю.
wp_trash_post(15);
нотатки
- Дивіться: wp_delete_post()
список змін
З версії 2.9.0 | Введено. |