use_block_editor_for_post()
Проверяет, поддерживает ли указанный пост (запись) редактирование через редактор блоков (Гутенберг).
Редактор блоков зависит от REST API, поэтому если при регистрации типа записи параметр show_in_rest=false
, функция вернет false.
Используйте use_block_editor_for_post_type(), когда нужно проверить поддержку блочного редактора по типу записи, а не для отдельной записи.
Работает на основе: use_block_editor_for_post_type()
1 раз — 0.0007281 сек (медленно) | 50000 раз — 0.34 сек (очень быстро) | PHP 8.1.27, WP 6.5.2
Хуки из функции
Возвращает
true|false
. Функция вернет true
, если запись редактируется через редактор блоков, и false
в противном случае.
Использование
use_block_editor_for_post( $post );
- $post(int|WP_Post) (обязательный)
- ID или объект поста WP_Post.
Примеры
#1 Пример использования функции
Фрагмент кода из плагина "Elementor Website Builder":
add_action( 'admin_print_scripts-edit.php', [ __CLASS__, 'add_new_button_to_gutenberg' ], 11 ); function add_new_button_to_gutenberg() { global $typenow; if ( ! User::is_current_user_can_edit_post_type( $typenow ) ) { return; } // Introduced in WP 5.0 if ( function_exists( 'use_block_editor_for_post' ) && ! use_block_editor_for_post( $typenow ) ) { return; } // Deprecated/removed in Gutenberg plugin v5.3.0 if ( function_exists( 'gutenberg_can_edit_post_type' ) && ! gutenberg_can_edit_post_type( $typenow ) ) { return; } ?> <script type="text/javascript"> document.addEventListener( 'DOMContentLoaded', function() { var dropdown = document.querySelector( '#split-page-title-action .dropdown' ); if ( ! dropdown ) { return; } var url = '<?php echo esc_url( Plugin::$instance->documents->get_create_new_post_url( $typenow ) ); ?>'; dropdown.insertAdjacentHTML( 'afterbegin', '<a href="' + url + '">Elementor</a>' ); } ); </script> <?php }
Список изменений
С версии 5.0.0 | Введена. |
С версии 6.1.0 | Moved to wp-includes from wp-admin. |