如何使用wordpress建设“多语言网站”

前几天用wordpress把主域名freeflying.org这个网站建设了下,主题不再追求花哨的效果,但求简约、浏览器兼容性强。后来受到一个顾客的启发,准备把freeflying.org做成“多语言网站”,即一个网站不仅仅可以显示中文内容,还能显示英文等其他语言的内容。当时那个用户的网站其实不算是“多语言网站”,而是使用“域名+文件夹路径”的方法建立了多个网站,一个网站对应一种语言。如:域名abc.com对应的是英文网站,则用abc.com/cn/建设中文网站,并在abc.com上添加内页,起名“中文”,地址为:abc.com/cn/。这样就在英文站上加了个向中文站跳转的链接。这其实是利用了wordpress添加内页路径与中文站路径巧合,骗取wordpress对abc.com/cn/处理时,由原先的伪文件处理变成文件处理进而跳转到子站abc.com/cn/。这其实很巧合的!!

刚开始,我就按照上面的思路建设有两个站组合起来的“多语言网站”——其实不算是“多语言网站”!——先安装好英文子站:freeflying.org/en/,然后在freeflying.org中新建内页,起名“English”,路径为:freeflying.org/en/。这样英文站就被关联进了中文网站中,点击中文站中的“English”便可以跳转到英文站freeflying.org/en/。

不过这样做,网站存在几个问题:

  1. 跳转是反应比较慢,效率要低;
  2. 在英文站中无法用相同方式跳转回中文站。

后来,受到wordpress模版页面的启发,打算通过修改页面模版来实现效果。过程如下:

  1. 在wordpress后台中,外观——编辑,在右侧的文件中找个不用的模版页面进行修改;
  2. 把模版页面中的代码清理下,仅留最上面的注释内容。(如果注释内容也清理掉,这个文件就失去了模版的作用,下面就无法操作了)
  3. 在注释内容的上方添加php语句:header(“location: http://www.freeflying.org/en/”);——http://www.freeflying.org/en/这里改写成要跳转网站的网址。模版页面的内容如下:
<?php
header("location: http://www.freeflying.org/en/");
/*
Template Name: Links
*/
?>
  1. 在wordpress后台中,页面——新建页面,填写页面名“English”,路径可以随便写,不一定非要使用www.freeflying.org/en/,页面模版选择刚才修改过的模版。发布后就可以实现效果了。

如法炮制,在英文站中添加跳转回中文站的内页,就可以实现两种语言的自由切换了!这样的一个好处是,也可以使用主域名的子域名来建设“多语言网站”,如:cn.freeflying.org和en.freeflying.org等!

不过,这毕竟是两个网站,文章内容和网站后台都是独立的,网站和数据库存在很多冗余。这个方法不适合中型以上的的“多语言网站”和中英文文章大部分同步的网站!

wordpress网站搬家,坑你没商量

昨天,一个客户买了主机,要把网站恢复到我们空间上。我按照常规流程走了一遍,结果网站不能打开:空白页,title上连页面标题都没有,刚刚给用户解决好,趁着还有印象,做个笔记。

网站搬家的常规做法是:

1、创建数据库和数据库用户,并关联。

2、上传网站的备份文件,并解压到public_html文件夹下。注意修改文件夹和文件的权限。

3、修改网站的数据库配置文件,把数据库的信息改成刚刚建立的数据库信息。

4、访问网站,查看网站是否正常。在域名不变的情况下,一般的网站,修改或者屏蔽.htaccess文件就可以 恢复正常访问!wordpress比较特殊,要确保.htaccess文件中的伪静态代码正确,如果没有,可以复制上一段;wp的一些配置参数还在数据库中,需要打开数据库,对表进行修改——wp_options表中的recently_edited记录需要修改下(里面放的一些文件的绝对路径,需要修改成新主机的绝对路径,这是才发现:用户原先使用的是windows系统的空间,因为我看到了蛋疼的”D:”)。按说如果域名不变,修改这些应该就可以了,但是网站还是那个熊样额!!php版本问题?换了个空间也不行额~

从昨天晚上到今天下午,百度、google不知道查了多少遍,还是没有效的解决办法!!直到看到”wordpress从本地转移到空间后 ,XXX“ 这个百度知道才恍然大悟!!一个灵感闪过:重装wordpress!!果然,效果出来了。步骤如下:

1、重新安装一个wordpress。可以新建个数据库和数据库用户、原先的网站文件改下名字。(不要删除,过会还有用!)

2、安装好后,登录wp的前台和后台,当然现在还是全新的。然后就是见证奇迹的时刻了!

3、把刚才安装的wp数据库清空,恢复成原先备份的数据库。(别忘了修改wp_options表中的recently_edited记录值额!)

4、把原先网站的wp-content/plugins(插件)和wp-content/themes(主题)文件夹打包后move到现在网站的wp-content目录下,覆盖现有的plugins、themes 。刷新后台,把主题设定为原先的主题;刷新前台,网站会显示就网站的架构,会发现缺少部分图片和说明。

5、把wp-content/upgrade和wp-content/uploads文件夹打包后move到现在网站的wp-content目录下 ,刚创建的wp网站没有这两个文件夹,直接解压就可以。刷新前台,大部分网站数据都会恢复,如果还有的无法显示的,可以根据文件的路径查询空间中是否有这个文件,一般是文件名大小写和文件本来就缺失引起的。

欧了,看来是wp系统文件受损了!解说到此结束~

对了,山师博客换logo了,感谢田田姐和她的专业人士~