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. |
Де викликається хук
Де використовується хук у WordPress
add_action( 'before_delete_post', '_reset_front_page_settings_for_post' );