Có is_gutenberg_page()
chức năng sẽ có mặt khi bạn kích hoạt Gutenberg, vì vậy bạn có thể kiểm tra:
if( function_exists( 'is_gutenberg_page' ) )
Điều này sẽ chỉ kiểm tra xem Gutenberg có được kích hoạt hay không và chính chức năng sẽ kiểm tra xem trình chỉnh sửa hiện tại có được thiết lập để tải Gutenberg hay không. Vì vậy, MÃ trở thành:
if( function_exists( 'is_gutenberg_page' ) && is_gutenberg_page() )
Tất nhiên, điều này phải được kiểm tra từ các trang của bảng quản trị và khi dữ liệu nội bộ sẵn sàng gọi chức năng. Vì vậy, bạn sẽ phải kiểm tra bằng cách sử dụng một cái móc phù hợp . Ví dụ: nếu bạn kiểm tra cái này bằng init
hook, nó sẽ không hoạt động .
Gutenberg tự kiểm tra is_gutenberg_page()
chức năng từ gutenberg_init()
chức năng, được tải bằng replace_editor
hook. Vì vậy, replace_editor
hook là một nơi tốt để làm kiểm tra này.
Tuy nhiên, tôi khuyên bạn nên sử dụng admin_enqueue_scripts
để thực hiện kiểm tra, vì:
admin_enqueue_scripts
là cái móc đầu tiên được bắn ra sau cùng một is_gutenberg_page()
tấm séc mà Gutenberg tự làm.
Do bản chất của Gutenberg, bạn có nhiều khả năng tải các tập lệnh / kiểu bên ngoài cho mục đích của mình.
admin_enqueue_scripts
là một hook nổi tiếng và nó chỉ được bắn từ các trang bảng quản trị. Vì vậy, kết thúc trước không bị ảnh hưởng bởi nó.
MÃ mẫu (đã kiểm tra):
add_action( 'admin_enqueue_scripts', 'wpse_gutenberg_editor_test' );
function wpse_gutenberg_editor_test() {
if( function_exists( 'is_gutenberg_page' ) && is_gutenberg_page() ) {
// your gutenberg editor related CODE here
}
else {
// this is not gutenberg.
// this may not even be any editor, you need to check the screen.
}
}