我很好奇为什么以前从来没有问过这个问题。
如果我们想以编程方式回显短代码,使用短代码非常容易,例如:
echo do_shortcode('[best_selling_products]');
如何用古腾堡块做同样的事情?是否有类似的功能:
echo do_block('woocommerce/product-best-sellers');
是的,你非常接近,等效函数是do_blocks()与s如:
echo do_blocks('<!-- wp:woocommerce/product-best-sellers {...} /-->');
在上面的示例中,您还需要设置任何必需的属性,例如类别。渲染WooCommerce块"产品过滤器-属性"…是WooCommerce的一个更详细的例子。
任何由编辑器或您自己生成的序列化块内容字符串都可以在PHP模板中使用do_blocks()
,例如一个帖子特色图像:
do_blocks('<!-- wp:post-featured-image {"isLink":true,"align":"wide", "size:"thumbnail"} /-->');
在{...}
里面是block属性。如果块具有默认属性,则在您不提供它们时使用它们,或者您可以选择性地设置自己的属性。