wordpress升级到3.5.2:数据库升级问题

wordpress后台提示有新版本,3.5.2,于是就升级,提示需要升级数据库,但升级数据库后就一篇空白,页面也不再更新了。

网上搜了很多,多数说是禁止插件、主题。但这个问题应该和插件、主题没有关系的。最终搜索到有可能是内存的问题,于是把php的内存从64M调整到128M。然后问题就解决了。

参考:
http://setwordpress.com/2013/06/24/fix-wordpress-3-5-2-database-update-required-error/

wordpress站点更换域名

采用wordpress建站后经常会先使用临时域名,待测试完毕后再更换为正式域名,但在wordpress数据库里对站点域名进行了绑定,因此需要使用数据库进行处理:

update wp_options set option_value=replace(option_value,’old_site_url’,’new_site_url’) where option_value like ‘%old_site_url%’;

bcSpamBlock插件:防止垃圾留言

垃圾留言大多是由程序自动产生的,而bcSpamBlock插件就能有效的阻挡机器的留言,而使用浏览器的留言则感觉不到任何区别,若是禁止了javascript,则需要手工拷贝一个字符串。具体的原理请参考官方的说明。

而目前的1.1版本同时也阻挡了trackback和pingback,因此我进行了一些修改,使其不阻挡trackback和pingback。那如何防止pingback/trackback的垃圾呢?这就可以使用另外一个插件来进行处理:Simple Trackack Validation,同时要注意,这个插件默认只支持对trackback进行处理,我也作了简单地修改,使其能处理pingback。

效果:未使用bcSpamBlock插件之前,我每天将近有3000个spam留言,而使用了这个插件之后,到现在为止,一个漏网的都没有!

bcSpamBlock 1.1 modify by wlx
Simple Trackback Validation 2.1 wlx modified version

启用Quotmarks Replacer插件

我原来一直都是使用Code Markup来解决全角/半角的问题,今天无意中发现这个插件Quotmarks Replacer,感觉不错。

解决 WordPress 的全角引号问题,将全角的单引、和双引号和省略号替换成半角的格式,使后台输入的引号、省略号格式与前台读者浏览的引号格式保持一致。

不过,我也是一直不清楚为何WP要作这种显示的转换。

wordpress mu 1.3中的编码问题

发现wordpress mu 升级到1.3版本了,对应到wordpress 2.3系列。其中,显著的功能就是默认的TAG支持了。但是升级后发现中文乱码,这时因为我的mysql数据库目前默认的编码还是utf8,而wordpress mu目前默认的编码是采用utf8了,因此需要进行修改。

有两种办法处理:
1、修改wordpress mu的代码
找到wp-inlcudes/wp-db.php文件,注释掉这两行:

// if ( !empty($this->charset) && version_compare(mysql_get_server_info(), '4.1.0', '>=') )
// $this->query("SET NAMES '$this->charset'");

2、修改数据库编码,使其和你的wordpress编码相对应
比如,可以修改数据库的编码为utf8。
首先导出:

mysqldump --default-character-set=utf8 -uroot yourdb > yourdb.sql

然后修改此文件,替换所有的utf8为utf8,并在文件头添加:

SET NAMES utf8;
SET CHARACTER_SET_CLIENT=utf8;
SET CHARACTER_SET_RESULTS=utf8;

然后保存为yourdb-utf.sql,在进行数据库的导入工作:

mysql -uroot
mysql>drop database yourdb
mysql >create database yourdb
mysql -uroot yourdb

此处的转换方法参考:转换论坛:webwiz 7.9 -> phpBB3

我为了以后升级的方便,选择了第二种方法进行处理。

code markup插件的使用

wordpress里默认是无法显示html部分内容的内容,需要使用第三方插件才可以显示,我这使用的是code markup插件。
若需要严格的HTML内容显示,应该这样使用:

具体的使用方法如下:
* or allows common HTML tags to be rendered, and displays everything else exactly as written.
* displays content exactly as written — no markup allowed.
* renders content as HTML — all markup is allowed.
* allows only , and tags to be rendered as HTML — everything else is displayed exactly as written. You can put whatever tags you like in the allow attribute, separated by spaces. As a special case, you can include the comment tag — this means that HTML comments will be “rendered” as normal HTML comments (i.e. not displayed).
* or
displays content exactly as written, the same as .

安装wordpress 1.0 mu到UBUNTU SERVER

前面我提到如何安装wordpress mu 1.0,这次在ubuntu edgy server版上安装就轻车熟路了。
首先要确保ubuntu server上安装了apache2, php, mysql。
然后要激活rewrite mod。

sudo a2enmod

创建westgis.ac.cn的vhost文件:


ServerAdmin wlx@mygis.org
ServerName westgis.ac.cn
ServerAlias westgis.ac.cn *.westgis.ac.cn
DocumentRoot /var/www/westgis.ac.cn


Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride FileInfo Options
Order allow,deny
allow from all

ErrorLog /var/log/apache2/westgis.ac.cn-error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/westgis.ac.cn-access.log combined
ServerSignature On


激活这个vhost就可以了,注意AllowOverride部分和默认是不同的。