WP_IS_POST_AUTOSAVE() │ WP 2.6.0
Функция wp_is_post_autosave() помогает определить, является ли указанный пост автосохранением (версией, сохраненной автоматически).
Процесс работы функции
Для определения того, является ли пост автосохранением, функция использует другую функцию wp_get_post_revision().
- Скорость выполнения: 1 раз — 0.001271 сек (очень медленно) | 50000 раз — 0.22 сек (очень быстро)
- Требуется версия PHP: 7.1.5 и выше, WordPress 4.8.2 и выше.
Возвращаемое значение
- int|false: Возвращает идентификатор родительского поста автосохранения, если это успешно, или false, если пост не является версией.
Использование
wp_is_post_autosave( $post );
Параметры
- $post (int|WP_Post) (обязательный): идентификатор поста или объект поста.
Примеры
Пример 1: Проверка, является ли указанный пост автосохранением
$post_id = 20;
if ( wp_is_post_autosave( $post_id ) ) {
return; // Если пост является автосохранением, выходим из функции
}
Изменения
- С версии 2.6.0: Функция была введена в WordPress.
Код функции
Ниже представлен исходный код функции wp_is_post_autosave():
function wp_is_post_autosave( $post ) {
$post = wp_get_post_revision( $post );
if ( ! $post ) {
return false; // Если нет поста, возвращаем false
}
if ( str_contains( $post->post_name, "{$post->post_parent}-autosave" ) ) {
return (int) $post->post_parent; // Возвращаем ID родительского поста
}
return false; // Если не автосохранение, возвращаем false
}
Похожие функции
Существует несколько других функций, которые могут быть полезны в работе с постами и условиями:
cat_is_ancestor_of()category_exists()comments_open()email_exists()has_block()has_category()has_post_thumbnail()is_single()is_admin()
Перечисленные функции могут помочь в различных задачах, связанных с обработкой постов и проверкой условий в WordPress.