我有一个块渲染的问题。
我使用的是连接。ACF + Timber + Gutenberg。
在localhost上创建区块没有问题,在wp-admin端和前端都能显示所有的内容(在Linux上创建,PHP 7.219,nginx)。
在Windows上安装测试+最新的XAMPP(PHP 7.39,apache),结果发现块没有渲染(在wp-admin和前台网站上都看不到)。
所以我把它放在Raspberri Pi(PHP 7.120,apache)上,它就正常启动了。我想可能是Windows和一些服务器设置的问题。然而,当安装在普通的Web服务器上(Linux,PHP 7.0.33,apache)也不能工作。
有谁知道可能是什么原因导致块不能渲染?
在下面的函数中,根本没有进入回调(text_block_render_callback),但是注册块却可以工作。
add_action('acf/init', 'register_block_text');
function register_block_text() {
acf_register_block(array(
'name' => 'text',
'title' => ('Tekst', 'ABC'),
'description' => ('Moduł zwykłego tekstu', 'ABC'),
'render_callback' => 'text_block_render_callback',
'category' => 'test-blocks',
'icon' => 'edit',
'keywords' => array('blog'),
'mode' => 'edit',
'enqueue_assets' => function() {
wp_enqueue_style( 'block-text', get_stylesheet_directory_uri() . '/dist/blocks/text/text.css');
}
));
}
function text_block_render_callback($block, $content = '', $is_preview = false)
{
$context = Timber::context();
$context['block'] = $block;
$context['fields'] = get_fields();
$context['is_preview'] = $is_preview;
Timber::render(TEMPLATEPATH . '/views/blocks/text/text.twig', $context);
}
工作 - 相同的代码
https:/i.imgur.comlPpMgsj.png。 (wp-admin)
https:/i.imgur.comenq6OKA.png。 (前端)
不工作 - 相同的代码
https:/i.imgur.comRoccMVk.png (wp-admin view)
https:/i.imgur.comqOf1had.png。 (wp-admin edit)
我不知道你是否解决了这个问题。我使用本地,我有同样的问题。
我一直使用的是。
Timber::render( get_stylesheet_directory() . "/views/block-editor/content-{$slug}.twig", $context );
但在一些服务器上不工作(和新版本5.x的本地)。
我现在用的是。
Timber::render( "block-editor/content-{$slug}.twig", $context );