WordPress后台编辑器默认过滤部分html标签的解决办法
admin 阅读:78 2024-03-02
基于安全角度的考虑,wordpress后台编辑器在发布文章时,会默认过滤掉部分html标签,比如script、onclick等。但很多时候,我们可能在发布文章时通过这些的html标签来实现特殊的需求,目前网上的文章基本都要修改wordpress内核文件,这样在wordpress版本升级时就会失效,而且也比较危险。本文就介绍一下通过主题文件来禁止wordpress后台编辑器默认过滤部分html标签的办法。
在wordpress主题functions.php文件中,添加下面的代码即可:
kses_remove_filters()该函数的实现代码如下:
function kses_remove_filters() {
// Normal filtering.
remove_filter( 'title_save_pre', 'wp_filter_kses' );
// Comment filtering.
remove_filter( 'pre_comment_content', 'wp_filter_post_kses' );
remove_filter( 'pre_comment_content', 'wp_filter_kses' );
// Global Styles filtering.
remove_filter( 'content_save_pre', 'wp_filter_global_styles_post', 9 );
remove_filter( 'content_filtered_save_pre', 'wp_filter_global_styles_post', 9 );
// Post filtering.
remove_filter( 'content_save_pre', 'wp_filter_post_kses' );
remove_filter( 'excerpt_save_pre', 'wp_filter_post_kses' );
remove_filter( 'content_filtered_save_pre', 'wp_filter_post_kses' );
}
如果我们的主题不需要取消所有的过滤方法,那么也可以根据上面的代码选择要取消的过滤方法。比如我们在functions.php中单独调用下面的代码:
remove_filter( 'content_save_pre', 'wp_filter_post_kses' );声明
1、部分文章来源于网络,仅作为参考。 2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!



