WordPress 允许分类描述添加 html 代码

出于安全等因素考虑,WordPress 后台的文本框一般是不允许添加 html 代码的(也就是被过滤掉)。

category-description-support-html_wpdaxue_com

最近有用户需要在分类描述中添加 html 代码,下面分享一下实现方法。

直接将下面的代码添加到当前主题的 functions.php 文件即可:

1
2
3
4
5
6
/**
 * 允许分类描述添加html代码
 * https://www.wpdaxue.com/category-description-support-html.html
 */
remove_filter('pre_term_description', 'wp_filter_kses');
remove_filter('term_description', 'wp_kses_data');

/**
* 允许分类描述添加html代码
* https://www.wpdaxue.com/category-description-support-html.html
*/
remove_filter(‘pre_term_description’, ‘wp_filter_kses’);
remove_filter(‘term_description’, ‘wp_kses_data’);

如果你需要进一步了解实现原理,可以自己阅读以下文档:

http://codex.wordpress.org/Function_Reference/wp_filter_kses

http://codex.wordpress.org/Function_Reference/wp_kses_data

 

如果你还想让 链接描述和备注、用户描述 也一样支持 html 代码,可以试试下面的代码,同样是添加到functions.php:

1
2
3
4
5
6
7
8
9
// Disables Kses only for textarea saves
foreach (array('pre_term_description', 'pre_link_description', 'pre_link_notes', 'pre_user_description') as $filter) {
    remove_filter($filter, 'wp_filter_kses');
}
 
// Disables Kses only for textarea admin displays
foreach (array('term_description', 'link_description', 'link_notes', 'user_description') as $filter) {
    remove_filter($filter, 'wp_kses_data');
}

// Disables Kses only for textarea saves
foreach (array(‘pre_term_description’, ‘pre_link_description’, ‘pre_link_notes’, ‘pre_user_description’) as $filter) {
remove_filter($filter, ‘wp_filter_kses’);
} // Disables Kses only for textarea admin displays
foreach (array(‘term_description’, ‘link_description’, ‘link_notes’, ‘user_description’) as $filter) {
remove_filter($filter, ‘wp_kses_data’);
}

本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等软件的安装与卸载,精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、Python、Objective-C、ActionScript、Pascal等单词的拼写,熟悉Windows、Linux、OS X、Android、iOS、WP8等系统的开关机。

通过下面的方式来联系我们:

电邮:138762189@qq.com

联系QQ:点击这里给我发消息

官方站:www.tadke.com

※ ※ 联系请加我的企鹅号 ※※

※ ※技术支持请微信联系站长 ※※

Copyright © 2023 Tadke.com. 琼ICP备20000547号