Wordpress Query£签名失败

时间:2011-03-30 09:23:18

标签: php wordpress

我的代码采用了一个术语的名称,并提取了一个同名的自定义帖子类型的帖子。这很好用。除非标题中有£字符。

e.g。伪代码

$q = new WP_Query (array( 'name' => "Insurance Rating £1K"));
if($q->have_posts()){
    // expected path of logic flow
} else {
    // nothing was found =s
}

这篇文章确实存在,但未找到,此问题仅影响标题中带有'£'字符的个案。由于Wordpress已经对标题等进行了消毒,所以发生了什么?为什么这不起作用?

编辑:

这是一般情况,并非特定于我的任何代码库。我想知道为什么会发生这种情况以及如何避免它,首先出现的代码库是无关紧要的。所以我不需要替代解决方案,因为我正在寻找为什么它发生了

编辑2:

数据库表正在使用utf8_general_ci编码。

£字符也按原样保存,而不是html实体,这是phpmyadmin的截图:

Database row

1 个答案:

答案 0 :(得分:2)

您的PHP文件是什么编码,它是否与数据库的编码匹配?他们需要匹配才能发挥作用。 (检查您的IDE或@Tom提供的this link

如果失败,请确保该字符不是£实体而不是文字字符。