默认情况下,发布代码后,帖子显示如下html,
<pre class="wp-block-code">
<code>
some codes here
</code>
</pre>
我有很多带有代码的帖子,不想一一编辑。如何为所有帖子全局添加自定义类属性?让它看起来像这样
<pre class="wp-block-code custom-class">
<code>
some codes here
</code>
</pre>
提前谢谢。
最合适的回答,由SO网友:Aboelabbas 整理而成
要立即将自定义类添加到旧帖子中,可以通过“the_content“筛选和使用preg_replace 或preg_replace_callback 函数进行正则表达式替换。
工作示例:
add_filter( \'the_content\', function( $content ){
// Don\'t do anything if we\'re not in a single post
if(! is_singular()){
return $content;
}
$customClass = \'custom-class\';
return preg_replace_callback(
\'/<pre([^>]+)class="([^"]+)"/i\',
function( $matches )use( $customClass ){
return \'<pre\' . $matches[1] . \'class="\' . trim($matches[2]) . \' \' . $customClass . \'"\';
},
$content
);
} );