我是否需要在发布到 query_posts 之前清理用户输入?

Do I need to sanitize user input before posting to query_posts?

我正在接管一个插件的开发,他们几乎已经通过 ajax 从前端 JavaScript 到后端 query_posts 进行了一对一的映射。

这里安全还是我需要转义 everything/certain 字段?

编辑:我问的原因是 parse_query 已经包含了一堆清理。我可以在我的插件中创建该代码的完整副本,但这似乎有点 silly/pointless?并且 http://codex.wordpress.org/Function_Reference/query_posts 文档没有提及任何关于提供净化输入的内容

干杯

parse_query 包含一般卫生,而不是针对您的(未知)案例或数据类型验证的特定卫生。文档没有提到这一点,因为它假定程序员会这样做。 CODEX 是一个很棒的工具——我每天都在使用它,但你必须明白它不是 100% 正确的,也不是完整的。它更像是一个具体的指导方针。

剩下的就看个人常识了。

我建议你阅读 HERE and also HERE‌ 如果你想要数据清理和验证的代码参考 - 以及 wordpress 内置的特定数据类型函数的列表。

因此,您的直接问题的答案很简单:“是”。你应该清理/逃避,并且 "NO" ,你应该假设它不安全(即使它是,或者你假设它是)。