WordPress 5.3 修改了wp_die()的HTML输出

默认情况下,在WordPress 5.3以前的版本中,使用  wp_die() 错误处理函数输出的内容都是被段落标签 <p>包裹的。比如你要使用 wp_die() 输出错误信息,一般都需要传递纯文本字符串:

wp_die( '这是一个错误信息。' );

输出的结果为:

<p>这是一个错误信息。</p>

但是很多情况下,我们可能需要添加一些额外的html内容,但是段落内是不允许添加所有嵌套元素,比如你使用:

wp_die( '<h1>您需要拥有更高的权限。</h1><p>很抱歉,您没有权限管理这个分类。</p>' );

输出的结果为:

<p><h1>您需要拥有更高的权限。</h1><p>很抱歉,您没有权限管理这个分类。</p></p>

很明显,以上的输出是有问题的。所以从 WordPress 5.3 开始,将采用 <div> 替换 <p> 标签,并且添加了一个类名 .wp-die-message ,这样以来,就可以很方便地输出更好的html结构内容,例如:

wp_die( '<h1>您需要拥有更高的权限。</h1><p>很抱歉,您没有权限管理这个分类。</p>' );

输出的结果为:

<div class="wp-die-message">
    <h1>您需要拥有更高的权限。</h1>
    <p>很抱歉,您没有权限管理这个分类。</p>
</div>

鼓励插件作者检查对wp_die()的使用,并在需要时更新PHP调用函数来适应新的用法和添加CSS样式。

倡萌

一个文科IT宅男,喜欢折腾WordPress和被它折腾 ^_^

暂无评论

发表评论