WordPress:后台编辑器默认过滤部分Html标签的解决办法

主机教程 wordpress教程评论223字数 992阅读3分18秒阅读模式

基于安全角度的考虑,wordpress后台编辑器在发布文章时,会默认过滤掉部分html标签,比如script、onclick等。但很多时候,我们可能在发布文章时通过这些的html标签来实现特殊的需求,目前网上的文章基本都要修改wordpress内核文件,这样在wordpress版本升级时就会失效,而且也比较危险。本文就介绍一下通过主题文件来禁止wordpress后台编辑器默认过滤部分html标签的办法。

WordPress文章源自国外主机测评-https://www.zjcp.org/8302.html

wordpress主题functions.php文件中,添加下面的代码即可:文章源自国外主机测评-https://www.zjcp.org/8302.html

kses_remove_filters()

该函数的实现代码如下:文章源自国外主机测评-https://www.zjcp.org/8302.html

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中单独调用下面的代码:文章源自国外主机测评-https://www.zjcp.org/8302.html

remove_filter( 'content_save_pre', 'wp_filter_post_kses' );
文章源自国外主机测评-https://www.zjcp.org/8302.html文章源自国外主机测评-https://www.zjcp.org/8302.html
 
  • 本文由 主机测评 发表于 2022年10月25日22:06:00
  • 转载请务必保留本文链接:https://www.zjcp.org/8302.html

发表评论