Invision Power Board UTF-8编码及乱码解决方案

软件与互联网技术
Admin
Advanced Member
Posts: 89
Joined: Thu May 13, 2004 11:56 am

Invision Power Board UTF-8编码及乱码解决方案

Post by Admin »

1. 首先是在后台中打开皮肤及模板控制面板(Skin & Templates),对Board Wrapper进行修改,例如把其中一句代码改为UTF-8字符编码如下:

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 
2.后台控制(ACP)中如果有中文,一般情况下是以程序原字符编码(ISO-8859-1)显示的,因此一些用了中文编码如UTF-8的版块名、用户ID、邮件通知、版块规则以及说明都将会显示为乱码。到程序目录中找到如下文件Sources\Admin\admin_skin.php,大约在1111行处增加一句:

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 
注意这类META最好紧跟<HEAD>标签。
另外在1612行左右也有<title>Menu</title>这样的标签,可以不加CHARSET的<META>标签。

3.如果打开了IPDynamicLite功能,则要到HTML Templates的控制模块下进行修改。进入IPDynamicLite的HTML模板选择其中的MAIN TEMPLATE(应该是大写的),里面加入一句代码(以UTF-8字符编码为例)

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
4.在Global HTML elements中的pop_up_window中同样加入这一句

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
这样小帮手(My Assistant)一类的弹出窗口显示汉字时就不会是乱码。

5.有时修改自己的用户信息点确定或给中文ID用户发送中文标题的悄悄话后论坛的转换页面也会显示为乱码(IPB2中此项可以隐藏),这时就要修改Redirect Page了,同样在Global HTML elements的类别(IPB2中称为All Global HTML)中,打开该项修改,在大约第三行

Code: Select all

<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>{ibf.lang.stand_by}</title>
照如上修改即可。

6.程序目录skin\s1\下打开skin_global.php,大约第11行<head>后加入或更改字符编码(以UTF-8为例)

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
7.System setting---General configuration---Type of auto-redirect:本项选HTML META Redirect

经过如上修改后,系统就可正常显示UTF-8了。

以上第七项不是必须的,要根据服务器端情况,如果不知道具体情况,照做就可以。
Admin
Advanced Member
Posts: 89
Joined: Thu May 13, 2004 11:56 am

Post by Admin »

升级至IPB2(PF4)后,有部分变化。

3.如果需要打开IPB Portal功能(即原先的IPDynamicLite),进入IPB Portal 的HTML模板选择其中的csite_skeleton_template,里面加入一句代码

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
上贴第六步在PF4中已经有所改变,原skin_global.php文件所在路径为:
skin_cache\cachid_x\ 其中x为1、2之类数字

IPB2中新增加LF版的处理方式:
进入lofiversion\lofi_skin.php 第八行

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
改为

Code: Select all

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

Who is online

Users browsing this forum: ClaudeBot [Bot] and 0 guests