Jekyll中的特殊字符生成HTML破坏RSS提要。任何修复?

时间:2013-10-16 15:44:21

标签: ruby xml rss jekyll

我在Jekyll生成的一篇博文中有这一行文字:

Welcome, AAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBB+b��C BBBBBBBBBBBBBB+b��C

显然,打破了使用以下代码生成的RSS源:

---
layout: none
---
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
<title type="text">{{ site.title }}</title>
<generator uri="https://github.com/mojombo/jekyll">Jekyll</generator>
<link rel="self" type="application/atom+xml" href="{{ site.url }}/feed.xml" />
<link rel="alternate" type="text/html" href="{{ site.url }}" />
<updated>{{ site.time | date_to_xmlschema }}</updated>
<id>{{ site.url }}/</id>
<author>
  <name>{{ site.owner.name }}</name>
  <uri>{{ site.url }}/</uri>
  <email>{{ site.owner.email }}</email>
</author>
{% for post in site.posts limit:20 %}

<entry>
  <title type="html"><![CDATA[{{ post.title | cdata_escape }}]]></title>
  <link>{% if post.link %}{{ post.link }}{% else %}{{ site.url }}{{ post.url }}{% endif %}</link>
  <id>{{ site.url }}{{ post.id }}</id>
  {% if post.modified %}<updated>{{ post.modified | to_xmlschema }}T00:00:00-00:00</updated>
  <published>{{ post.date | date_to_xmlschema }}</published>
  {% else %}<published>{{ post.date | date_to_xmlschema }}</published>
  <updated>{{ post.date | date_to_xmlschema }}</updated>{% endif %}
  <author>
    <name>{{ site.owner.name }}</name>
    <uri>{{ site.url }}</uri>
    <email>{{ site.owner.email }}</email>
  </author>
  <content type="html">{{ post.content | xml_escape }}
  &lt;p&gt;&lt;a href=&quot;{{ site.url }}{{ post.url }}&quot;&gt;{{ post.title }}&lt;/a&gt; was originally published by {{ site.owner.name }} at &lt;a href=&quot;{{ site.url }}&quot;&gt;{{ site.title }}&lt;/a&gt; on {{ post.date | date: "%B %d, %Y" }}.&lt;/p&gt;</content>
</entry>
{% endfor %}
</feed>

访问该Feed会引发以下错误:

This page contains the following errors:

error on line 392 at column 104: PCDATA invalid Char value 24
Below is a rendering of the page up to the first error.

有没有办法解决这个问题?

0 个答案:

没有答案