!
也想出现在这里? 联系我们
广告位

WordPress编辑器切换自动转义实体符号

相信不少使用 WordPress 撰文的站长是直接使用 HTML 编辑器的,清枫就是如此,因为可视化格式的东西太多,有时候无法忍受,总之,各有利弊。缙哥哥在使用 HTML 编辑器编辑时遇到的最大的问题就是高亮代码里的<和>总是会因为没有转义而使得文章排版错乱,今天在网上浏览各种教程的时候看到了自动转义的方法,遂分享给大家。

转换至实体的符号:<、>、&

支持的标签:<pre><code>,用到的函数:htmlspecialchars()此函数把一些预定义的字符转换为 HTML 实体。将以下代码扔到 functions.php,记得把 6、7、8 行的空格去掉。

  1. function escapeCE($arr) {
  2. if (version_compare(PHP_VERSION, ‘5.2.3’) >= 0) { //所需PHP版本
  3. $output = htmlspecialchars($arr[2], ENT_NOQUOTES, get_bloginfo(‘charset’), false);
  4. } else {
  5. $needTo = array( //定义需要转换的标签
  6. &=>&,
  7. <=><,
  8. >=>>
  9. );
  10. $data = htmlspecialchars_decode($arr[2]);
  11. $output = strtr($data, $needTo);
  12. }
  13. if (! empty($output)) { //如果有实体符号则进行替换
  14. return $arr[1] . $output . $arr[3];
  15. } else {
  16. return $arr[1] . $arr[2] . $arr[3];
  17. }
  18. }
  19. function replaceCE($data) { //匹配需要转换实体的标签
  20. $replaceTag = preg_replace_callback(@(<pre.*>)(.*)(
  21. )@isU’, ‘escapeCE’, $data);
  22. $replaceTag = preg_replace_callback(@(<code.*>)(.*)()@isU’, ‘escapeCE’, $replaceTag);
  23. return $replaceTag;
  24. }
  25. add_filter( ‘content_save_pre’, ‘replaceCE’, 9 ); //通过wordpress的add_filter来挂钩
  26. add_filter( ‘excerpt_save_pre’, ‘replaceCE’, 9 ); //支持摘要格式

当然,我们已经将这串代码已经放到主题里了,麻麻再也不用担心我码错代码了!
PS 一句:如果代码中含有<pre>或者<code>标签,还是需要手动转义,切记,切记!

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

给WordPress分类\标签页面增加点赞功能

2024-6-6 9:34:19

WordPress教程

WordPress分类目录小工具中显示空分类

2024-6-14 14:20:48

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索