【问题标题】:Stop WordPress from auto-formatting certain codes阻止 WordPress 自动格式化某些代码
【发布时间】:2011-11-24 06:44:11
【问题描述】:

我有一个小问题要问你。如何阻止 WordPress 将 & 符号更改为 &?我找到了通过 remove_filter('the_content', 'wpautop'); 停止使用短语格式化代码的解决方案;但对于这个我在任何地方都找不到。谢谢!

【问题讨论】:

  • IIRC 删除 kses 过滤器应该可以做到。你真的应该知道你在做什么,因为这在 wordpress 中有点脆弱,所以你以后可能会遇到一些安全问题。
  • & 转换为& 有什么问题?这些转换规避了可能的字符编码问题。
  • 此转换是生成有效 HTML 所必需的。 (简而言之:所有出现的&都需要转义)不要轻易删除
  • 这发生在哪里?在 Post Editor 中,还是在输出代码时?
  • & 在 CMS 脚本中应该变成 &,因为符号被编码可以解决各种 SQL、转义和其他问题。

标签: php jquery html wordpress


【解决方案1】:

这让我很头疼,所以我创建了一个短代码来阻止这种行为:

function do_not_filter_content_shortcode( $atts, $content ) {
    return wp_specialchars_decode($content);
}
add_shortcode( 'do_not_filter', 'do_not_filter_content_shortcode' );

【讨论】:

    【解决方案2】:

    通常,我在“HTML”选项卡视图中进行大部分编辑。然后我知道我输入的字符不会被改变。

    但有时我希望对字符进行 HTML 编码。例如,我可能会在帖子中提到一些计算机代码。我希望用户看到这些特殊字符,而不是将我的代码示例解释为要呈现的 HTML 的页面。然后我去“视觉”选项卡输入它们。

    通过这种方式,我可以快速访问输入文字字符或将它们进行 HTML 编码。

    如果您确实想阻止 WordPress 对这些字符进行编码,请尝试其中一些插件。我没有尝试过,但它们可能会有所帮助。 http://wordpress.org/extend/plugins/raw-html/ http://wordpress.org/extend/plugins/preserve-code-formatting/

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    相关资源
    最近更新 更多