http://cn.yflying.com/2010/07/wordpress%E6%96%87%E7%AB%A0%E5%A4%84%E7%90%86%E6%B5%81%E7%A8%8B/
WordPress后台中编辑的内容最终显示在WordPress博客的网页之前,WordPress会对该内容进行多次处理。处理过程中将过滤多余代码,且会将内容转换成浏览器可翻译的格式。若用户不了解WordPress文章内容过滤的细节,会造成不必要的变化。
变化和过滤主要发生在 wp-includes/formatting.php文件中。详细代码功能和特征参见 the file source code。
问题
用户在使用内容过滤函数和处理函数时遇到的典型问题包括:
保存文本后,空白段落、关闭的span标签和换行符元素被删除
类从元素中被删除
DIV元素被转换成P元素
脚本和代码被转换成可显示代码而非可执行代码。关于如何将Java脚本植入博客文章,请参阅 使用Javascript。
WordPress的处理流程
以下是对WordPress在最终发表前处理文章内容的逐步介绍。
1. TinyMCE
TinyMCE 是WordPress的富文本编辑器。不是所有WordPress博客都使用TinyMCE,但一旦使用,TinyMCE会帮助用户将保存的内容转换为可发表的代码。
2. 函数wpautop()
wpautop()是一个重要的WordPress函数,可自动处理、校对并修改文章内容。该函数保留换行符和段落标签,开启应开启但关闭了的标签,关闭应关闭但未关闭的标签,清除重复的HTML标签。
3. Texturize
Texturize (wptexturize()) 是一款文本过滤器,默认情况下Texturize会修改已发表的文章或评论,然后输出更方便阅读更具吸引力的内容。
Texturize生成具有美学效果的内容的同时,也为在编程语言中发表代码示例带来了不便。在这种情况下最好不要修改文章内容,否则可能会生成语句错误的代码。
有些示例包括:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
"quoted text" becomes “quoted text”
'quoted text' becomes ’quoted text’
--- becomes —
-- becomes –
... becomes …
(c) becomes ©
(r) becomes ®
(tm) becomes ™
'' becomes ”
`` becomes “
president's becomes president’s
presidents' becomes presidents’
12' becomes 12′
12" becomes 12″
2x4 becomes 2×4
4. 处理简码
WordPress中定义了简码API,用户在文章中可以使用类似[gallary id='12']这样的简码。由于这些简码都是自定义的,浏览器并不能识别这样的简码。因而在文章处理过程中,需要将简码替换为实际要输出的内容。有关简码,请参考文章《WordPress中的简码机制》。
5. 转换表情符号
convert_smilies()函数将文章、页面和评论内容中的字符组合图转换成相应的笑容或其它表情符号。例如,若激活笑容符号,WordPress就可以识别:D,并将之转换为笑脸。激活笑容符号的关键在于:在字符组合图前后添加空格。单纯的文字不会被转换成笑容符号。
如果用户不希望转换表情符号,可以在Options > Writing中关闭该功能。
6. 转换字符
formatting.php代码文件中包含大量函数,这些函数可以帮助将字符实体、重音符号以及非英文字符转换成浏览器可识别的格式。一般情况下这些函数运行状态良好,但如果浏览器未激活某种语言,该语言字符就不能被浏览器所辨别。用户可查看浏览器文档以添加浏览器可识别的语言字符。
其它
1. 阻止WordPress处理文章内容
有很多插件可以改变WordPress默认状态下的过滤处理用法。建议用户不要改变核心程序设计,用户可以使用WordPress插件来改变某些或整个内容处理过程。相关插件请参考 WordPress Plugins Directory。
分享到:
相关推荐
支持文章自动生成缩略图,可以给文章设置默认缩略图。支持在文章内容页显示缩略图。 如果文章有缩略图,则会显示文章原缩略图。只有文章没有缩略图,才会显示插件自动获取的缩略图。 如果文章内容没有图片,可以...
自己在用的wordpress微信机器人插件,可同步wordpress文章内容,亲测可用!后台上传后按照说明设置。
如果我们的网站发展到文章数量达到成千上万之后,很难记得以前是否发布过相同标题的文章,而 WordPress 默认相同标题的文章也是可以正常发布的,这样的话会对 SEO 优化非常不利,所以今天仙踪小栈就向大家推荐一款...
水淼·WordPress站群文章更新器v1.3.6.0破解版
WordPress文章发布工具--V1.0个人版,由宏拓软件工作室以WordPress 4.0版本为基础开发,其他版本请自己测试! WordPress文章发布工具--V1.0个人版为终身免费版,宏拓软件工作室不会以任何理由,要求用户付费! 如果...
auto-wordpress博客文章自动采集插件
NULL 博文链接:https://justcoding.iteye.com/blog/606221
已验证,真实可用的wordpress插件. 对网站的SEO有很强帮助
wordpress文章加分插件
这款WordPress 响应式大型门户博客文章资讯主题源码,做为文章资讯类门户网站很不错! 详情:http://ban.maonius.cn/wps/167.html
WordPress文章后面加入指定内容插件
支持文章双标题显示,自定义双标题显示模板,支持手动或自动设置文章副标题。 本插件不会修改原文章表中的内容,插件会创建一张表用来存储与文章对应的标题数据,在页面显示文章标题时,通过过滤器修改标题内容。 ...
WordPress很多插件可以实现相关文章的功能,插件的优点是配置简单,但是可能会对网站的速度造成一些小的影响,所以很多人还是比较喜欢用代码实现需要的功能,但是话又说回来了,代码实现也有缺点,就是配置复杂,不...
WordPress采集插件,WordPress自动采集发布插件WP-AutoPost-pro,可采集任何网站内容并自动发布到WordPress站点,使用最简单,功能最强大的WordPress采集插件 WordPress自动采集发布插件WP-AutoPost-pro专业版3.6.3下载...
gggggghhhhhh开了空调群马路永久居留旅进旅退我某图考虑考虑咯摸摸可口可乐了可口可乐了看看监控墨迹
WordPress实现本地文章批量上传,上传为,txt,html,等格式的文章类型,经过测试5.3版本完全能够使用,并且上传速度很快,适合新站批量上传文章
支持选择发布到百度空间中文章的转载权限。 4。支持将Wordpress中文章链接发布到百度空间,并可选原文链接显示的位置。 Version 1.0 不支持功能 1。不支持将Wordpress中私密(private)文章发布到百度空间。 2。不...
自己在用的wordpress插件,可同步wordpress文章内容,亲测可用!后台上传后按照说明设置。
自动邮件发送博客文章的WordPress插件完成一项很简单的功能,每当一篇博客文章发布后,WordPress会自动发送一封Email邮件到几个指定的电子信箱之中。这个 插件是修改自一个名为Post2Mail的邮件插件,可惜原插件作者...
WordPress不同分类使用不同的文章模板的方法