【问题标题】:Sanitizing title URLs in ExpressionEngine 1.6.x在 ExpressionEngine 1.6.x 中清理标题 URL
【发布时间】:2011-05-09 06:39:42
【问题描述】:

我经营一个博客,其博客标题可以是外部链接,也可以是指向较长文章的内部链接,类似于您在类似博客上看到的内容。出于某种原因,ExpressionEngine (1.6.x) 没有对所提供的 URL 中的“&”等内容进行清理。

我在正文中使用 Markdown,它似乎在清理所有 URL 方面做得很好。然而,ExpressionEngine 自己对标题的处理并没有减少它。我曾尝试在 Markdown 中格式化“标题 URL”,但惨遭失败,如果我知道 ExpressionEngine 中到底是什么阻止了我使用它,那该死的。

所以问题归结为其他 ExpressionEngine 1.6.x 用户做了什么和做过什么,或者是否有人可以提出MacGyver-esque 解决方案。因为我被难倒了半年以上。

【问题讨论】:

  • 不是相当确定你的意思,但是EE可以自动将高位ASCII转换为实体(例如(c)变成©)。我不能说我曾经遇到过 EE 和 URLS 的问题 - 你能再澄清一下吗?
  • @Ross 感谢您的回答。出于某种原因,我没有收到任何关于您的回答的电子邮件通知。杰出的。我启用了转换实体的功能,但无济于事。当我查看我的博客的源代码时,title_link 未经处理:http://www.nytimes.com/2010/09/14/technology/14print.html?_r=2&ref=technology&src=me&pagewanted=all。将此与 Markdown 格式的 content 链接进行比较:http://www.nytimes.com/2010/09/14/technology/14print.html?_r=2&ref=technology&src=me&pagewanted=all。在这里,您会看到 & 符号已被清除。我也被难住了。

标签: content-management-system blogs sanitization expressionengine html-sanitizing


【解决方案1】:

来自 EllisLab 的 Rick Ellis 的 XML Encode EE1 插件会将您的特殊字符转换为 HTML 实体。

该插件最初旨在将保留的 XML 字符转换为 ExpressionEngine RSS 模板中的 HTML 实体,但应该可以满足您的需要。

要使用该插件,请将您的 {title_link} 自定义字段包装在其标签对之间:

{exp:xml_encode}
    {title_link}
{/exp:xml_encode}

这将导致:

http://www.google.com/search?q=nytimes&btnG=Google+Search

正在转换为:

http://www.google.com/search?q=nytimes&btnG=Google+Search

提供更多类似但高级功能的其他 EE1 插件有 Cleaner by utilitEEs (Oliver Heine) 或 Lodewijk Schutte 的 Low Replace。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多