我有一个最初用iso-8859-1编码的页面,一旦合并到wordpress帖子中就无法正确显示。我能够在wordpress之外复制这个问题,迫使页面的编码被读作utf-8。在这里你可以看到会发生什么:
ISO-8859-1页面:http://www.maxballet.it/sito/orari.php
UTF-8:http://www.maxballet.it/sito/orari2.php
不幸的是,我无法展示原始帖子,但这正是发生的事情。
当然,我理解从浏览器到数据库的整个管道的某个步骤存在一些问题,我正在从中提取数据(可能是数据库本身内部的一些非utf8字符)。但是因为在过去的几天里调查这个问题对我来说非常耗时,经过几次尝试后我试图强制将wordpress页面编码读作iso-8859-1(通过<meta>
标签),以便在调查时快速修复它。
不幸的是,即使是强硬的firefox也能够将wordpress post的页面编码检测为iso-8859-1,但是没有用,并且帖子仍然显示为上面的错误示例。
我正在调查管道编码问题,我在这里已经发布了另一个问题,但此时我真的需要让这个页面再次运行。
我可能错过了关于wordpress平台的一些东西,我绝对不熟悉它。所以任何关于如何在wordpress中解决这个问题而不必修复整个管道的建议都会非常感激。
提前感谢所有人。
更新1:我忘了提到我已经尝试过utf8_encode()来自数据库的任何字符串而没有运气。
答案 0 :(得分:1)
解决了这个问题。现在一切都在完美无瑕。对此感激不尽。如果您想将其作为答案发布,我会将您的标记作为解决方案
根据OP希望根据我的原始评论结束问题:
看到你的另一个问题,你要从数据库中提取这个问题。
尝试在查询之前将编码传递到数据库连接。
有时会修复它。
例如mysqli_set_charset($con, 'utf8');
或$con->set_charset("utf8");
答案 1 :(得分:0)
您可以在回复之前尝试utf8_decode您的内容:
echo utf8_decode($content);//on iso-8859-1 page