before_delete_post
Спрацьовує до того, як запис (пост) буде видалено, на самому початку функції wp_delete_post() .
Ця подія спрацьовує до того, як, будуть зроблені будь-які дії над очищенням бази даних від поста: видалення метаданих, зміна батька у вкладень поста, що видаляється
Цей хук-подія спрацьовує лише тому випадку, якщо запис видаляється з кошика чи якщо кошик відключена, тобто. коли запис видаляється безповоротно.
Нотатка
Хук не спрацьовує, якщо видаляється вкладення (прикріплений файл, медіатека). Щоб виконувати дію при видаленні вкладення використовуйте хук deleted_post , але майте на увазі, що на цей момент запису в БД вже немає і дані віддаленого посту можна отримати тільки через хук, а не через get_post () .
Використання
add_action( 'before_delete_post', 'wp_kama_before_delete_post_action', 10, 2);
/**
* Function for `before_delete_post` action-hook.
*
* @param int $postid Post ID.
* @param WP_Post $post Post об'єкт.
*
* @return void
*/
function wp_kama_before_delete_post_action( $postid, $post ){
// action...
}- $postid
(число) - ID посту, який передається у функцію, прикріплену до події.
- $post
(WP_Post) (WP 5.5) - Об’єкт запису (поста).
Приклади
#1 Дія при видаленні посту
Припустимо ми пишемо плагін і нам потрібно щось зробити в той момент, коли видаляється довільний тип запису ” my_post_type “:
add_action( 'before_delete_post', 'my_func');
function my_func($postid) {
// Чи перевіряємо наш тип запису видаляється
$post = get_post($postid);
// Якщо ні, виходимо.
if( ! $post || $post->post_type !== 'my_custom_post_type' )
return;
// Код, який буде робити що нам потрібно при видаленні
}
список змін
| З версії 3.2.0 | Введено. |
| З версії 5.5.0 | Added $post parameter. |