站内搜索

WordPress 评论和文章中插入并显示html、css、php等代码

  今天遇到一个问题,在评论中是无法插入一些PHP、CSS、HTML、JS等代码,会直接解析而不是显示代码本身,就算使用了code或pre标签也不行。原因是Wordpress 自身有一个强大的HTML标签过滤系统,你插入的html标签等会直接消失。文章中倒是好解决的,可以切换到可视化界面,将代码复制,再切换到代码界面,植入pre标签。但评论中不行,不想使用插件,有没有解决方法?

add_filter('pre_comment_content', 'yyob_encode_code_in_posts_comments');
add_filter('the_content', 'yyob_encode_code_in_posts_comments');
function yyob_encode_code_in_posts_comments($source) {
$encoded = preg_replace_callback('/<pre>(.*?)<\/pre>/ims',
create_function(
'$matches',
'$matches[1] = preg_replace(
array("/^[\r|\n]+/i", "/[\r|\n]+$/i"), "",
$matches[1]);
return "<pre>" . esc_html( $matches[1] ) . "</pre>";'
),
$source);
if ($encoded)
return $encoded;
else
return $source;
}
Copyright © XiakeShu.com 版权所有 | 备案号:浙ICP备11004787号-12