当前位置: 首页 > 技术资讯 >

WordPress 5.7 引入新钩子,用于过滤单个区块的内容

WordPress 的 render_block()函数负责将每个单独的区块呈现为HTML字符串。有几种可用的过滤器,它们允许插件和主题更改区块的呈现方式。

pre_render_block:render_block()通过返回非空值允许短路。render_block_data:在处理render_block()前,过滤要渲染的块。render_block_context:过滤提供给渲染块的默认上下文。render_block:过滤单个块的内容。

虽然这些过滤器可以对如何渲染单个块进行大量控制,但是在进行任何修改之前,挂钩函数需要对正在渲染的块具有所需块类型进行一些验证。

在WordPress 5.7中,将引入一个新的动态过滤器 render_block_{$this->name},从而使函数仅可以挂钩到特定类型的块。在新的过滤器中,{$this->name}代表已注册块的名称或slug别名。例如,可以使用render_block_core/paragraph过滤以core/paragraph名称注册的段落块。

这减少了以前针对特定块类型的呈现所需的代码量。

用法示例

以下示例将过滤所有 core/paragraph块,并将它们包装在一个<div>元素中。

/**
* Wrap all core/paragragh blocks in a <div>.
*
* @param string $block_content The block content about to be appended.
* @param array  $block         The full block, including name and attributes.
* @return string Modified block content.
*/
function wporg_paragraph_block_wrapper( $block_content, $block ) {
$content  = ‘<div class=”my-custom-wrapper”>’ . $block_content . ‘</div>’;
return $content;
}
add_filter( ‘render_block_core/paragraph’, ‘wporg_paragraph_block_wrapper’, 10, 2 );

输出结果:

<div class=”my-custom-wrapper”>
<!– block content –>
</div>

注意:所有WordPress Core区块类型的名称都以前缀core/。对于在插件或主题中

相关文章:

  • 店铺交易市场为什么这么火爆?
  • 网红营销如何跟上潮流,2019年8大KOL营销趋势预测
  • 离职倒数1天:铁人赛心得
  • Day 15 Heroku + Flask
  • Day 29 ~ AI从入门到放弃 - 猫狗辨识之四
  • 说说独立站卖家GoogleSEO的“道”与“术”
  • Day 17:Layout Using Grid
  • Day7-TypeScript(TS)基础型别资料Part 2
  • [Day 17] Sass - Parent Selector
  • 亚马逊店铺如何赶走跟卖
  • 【程序】陷入低潮 转生成恶役菜鸟工程师避免 Bad End 的 30 件事 - 23
  • JavaScript入门 Day19_function介绍2
  • 亚马逊卖家怎样创建变体
  • Leetcode 挑战 Day 16 [231. Power of Two]
  • Day 8 矛盾又挣扎揭弊者
  • WordPress 调试模式基本指南
  • 2021年10个全球电子商务趋势[信息图] ,所有电商人员都该了解一下
  • 海外营销周报:谷歌产品评论算法更新,YouTube和Facebook仍是美社交媒体主流
  • 使用MailPoet扩展您的电子商务邮件列表
  • Linux运维命令大全:Linux运维要掌握哪些命令
  • 401错误怎么处理?教你如何解决网站401错误页面
  • DNS是什么?DNS有什么用?为什么要用DNS解析域名
  • VPS优惠信息:阿里云/限时活动/新用户1C2G1M/69元/年起
  • PHP安装环境怎么搭建(LAMP环境怎么搭建):教你搭建PHP+Mysql服务器环境
  • 海外营销周报:谷歌广告将推出动态排除列表,报告显示2020年美国数字广告营收增长12%
  • WooCommerce 带动顾客购物的十种方法
  • 站点迁移问题:流量下降的 11 个潜在原因
  • 俄取消商品知识产权限制 盗版游戏、电影等商标合法化
  • 区块链是什么东西?区块链原理是什么
  • 微信小程序搭建教程:怎么用CentOS搭建小程序服务器