根据 WordPress,
apply_filters_deprecated( 'allowed_block_types', bool|string[] $allowed_block_types, WP_Post $post )
警告:此钩子已被弃用。请改用“allowed_block_types_all”过滤器。
下面的代码现在不起作用。
add_filter('allowed_block_types', function($block_types, $post) {
$allowed_blocks = [
'core/shortcode',
'core/image',
'core/gallery',
'core/heading',
'core/quote',
];
if ($post->post_type == 'page') {
return $block_types;
}
else
{
$blocks_to_remove = [
'acf/editor-intro',
];
return array_diff($allowed_blocks, $blocks_to_remove);
}
}, 10, 2);
您可以使用下面的挂钩我已经创建了一些条件,例如帖子类型/页面模板/等
add_filter('allowed_block_types_all', function ( $block_editor_context, $editor_context ) {
if ($editor_context->post_type == 'page') {
// Here you can check any Post Types
return array(
'core/paragraph',
'core/heading',
'core/list',
'core/quote', // Above are few example
'acf/test-block' // you can allow disable custom ACF blocks also
);
} else if (basename(get_page_template()) == 'template-custom.php') {
// Here you can check any Custom Templates
return array(
'acf/test-block' // you can allow disable custom ACF blocks also
);
} else {
// Here will return all default blocks
return $block_editor_context;
}
}, 10, 2 );
以下是一些默认块,因此您可以根据需要使用钩子删除。
块类型 |
---|
核心/简码 |
核心/图像 |
核心/画廊 |
核心/标题 |
核心/引用 |
核心/嵌入 |
核心/列表 |
核心/分离器 |
核心/更多 |
核心/按钮 |
核心/引述 |
核心/表 |
核心/预格式化 |
核心/代码 |
核心/html |
核心/自由形式 |
核心/最新帖子 |
核心/类别 |
核心/封面 |
核心/文本栏 |
核心/诗句 |
核心/视频 |
核心/音频 |
核心/块 |
核心/段落 |
核心嵌入/推特 |
核心嵌入/youtube |
核心嵌入/facebook |
核心嵌入/instagram |
核心嵌入/wordpress |
核心嵌入/soundcloud |
核心嵌入/spotify |
核心嵌入/flickr |
核心嵌入/vimeo |
核心嵌入/animoto |
核心嵌入/cloudup |
核心嵌入/大学幽默 |
核心嵌入/dailymotion |
核心嵌入/funnyordie |
核心嵌入/葫芦 |
核心嵌入/imgur |
核心嵌入/发行 |
核心嵌入/kickstarter |
core-embed/meetup-com |
核心嵌入/混合云 |
核心嵌入/照片桶 |
核心嵌入/polldaddy |
核心嵌入/reddit |
核心嵌入/混响 |
核心嵌入/截屏 |
核心嵌入/scribd |
核心嵌入/幻灯片分享 |
核心嵌入/沾沾自喜 |
核心嵌入/扬声器 |
核心嵌入/ted |
核心嵌入/tumblr |
核心嵌入/录像 |
核心嵌入/wordpress-tv |