WordPress如何处理文章内容

0条评论

WordPress如何处理文章内容

WordPress后台中编辑的内容最终显示在WordPress博客的网页之前,WordPress会对该内容进行多次处理。处理过程中将过滤多余代码,且会将内容转换成浏览器可翻译的格式。若用户不了解WordPress文章内容过滤的细节,会造成不必要的变化。

变化和过滤主要发生在 wp-includes/formatting.php文件中。详细代码功能和特征参见 the file source code

用户在使用内容过滤函数和处理函数时遇到的典型问题包括:

1. 保存文本后,空白段落、关闭的span标签和换行符元素被删除

2. 类从元素中被删除

3. DIV元素被转换成P元素

4. Java脚本和代码被转换成可显示代码而非可执行代码。关于如何将Java脚本植入博客文章,请参阅 使用Javascript

以下是对WordPress在最终发表前处理文章内容的逐步介绍。

TinyMCE

TinyMCE 是WordPress的富文本编辑器。不是所有WordPress博客都使用TinyMCE,但一旦使用,TinyMCE会帮助用户将保存的内容转换为可发表的代码。

WordPress函数wpautop()

wpautop()是一个重要的WordPress函数,可自动处理、校对并修改文章内容。

该函数保留换行符和段落标签,开启应开启但关闭了的标签,关闭应关闭但未关闭的标签,清除重复的HTML标签。

Texturize

Texturize (wptexturize()) 是一款文本过滤器,默认情况下Texturize会修改已发表的文章或评论,然后输出更方便阅读更具吸引力的内容。

Texturize生成具有美学效果的内容的同时,也为在编程语言中发表代码示例带来了不便。在这种情况下最好不要修改文章内容,否则可能会生成语句错误的代码。

有些示例包括:

"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

转换表情符号

convert_smilies()函数将文章、页面和评论内容中的字符组合图转换成相应的笑容或其它表情符号。例如,若激活笑容符号,WordPress就可以识别:D,并将之转换为笑脸。

激活笑容符号的关键在于:在字符组合图前后添加空格。单纯的文字不会被转换成笑容符号。

如果用户不希望转换表情符号,可以在Options > Writing中关闭该功能。

转换字符

formatting.php代码文件中包含大量函数,这些函数可以帮助将字符实体、重音符号以及非英文字符转换成浏览器可识别的格式。

一般情况下这些函数运行状态良好,但如果浏览器未激活某种语言,该语言字符就不能被浏览器所辨别。用户可查看浏览器文档以添加浏览器可识别的语言字符。

阻止WordPress处理文章内容

有很多插件可以改变WordPress默认状态下的过滤处理用法。建议用户不要改变核心程序设计,用户可以使用WordPress插件来改变某些或整个内容处理过程。相关插件请参考WordPress Plugins Directory

更多相关信息