Java堂  


推荐两款Wordpress插件

归档在: Web&Server — Jet @ 8:37 上午
原文出处: http://www.javatang.com/archives/2007/10/28/3751229.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

这里推荐两款Wordpress插件给大家,都是基于后台管理的。

1. Wordpress Automatic Upgrade

作者:Keith
Wordpress官方页面:http://wordpress.org/extend/plugins/wordpress-automatic-upgrade/

Wordpress automatic upgrade(自动升级Wordpress)可以自动在后台升级你的Wordpress到最新的版本,具体来说主要通过以下几步来实现:

(1) 备份原来的程序文件并生成一个可下载的链接;
(2) 备份数据库并生成一个可下载的链接;
(3) 自动从 http://wordpress.org/latest.zip 下载最新的wordpress程序并解压缩;
(4) 将站点设置为维护模式(就是在前台提示程序正在升级);
(5) 取消所有插件并记住之前的状态;
(6) 升级覆盖wordpress文件;
(7) 在新窗口打开升级后的程序;
(8) 重新激活插件。

上面所有的步骤都是程序自动完成,必须要人工去点击操作,所以非常的方便。安装成功后在后台 manage - Automatic Upgrade 中进行管理,不过有一点需要注意的是网站不能运行在PHP的安全模式(safe mode)。

2. Wordpress Database Backup (WP-DB-Backup)

作者:Austin Matzko
WP官方页面:http://wordpress.org/extend/plugins/wp-db-backup/

Wrodpress Database Backup(Wordpress数据库备份)插件可以非常方便的备份wp程序的数据库内容,它可以按照你设置的周期(每小时、每天、每周)自动见数据库备份为一个sql文件并生成一个压缩文件,另外还可以在备份完毕后自动发送电子邮件给管理员。如果早安装这个插件的话我就不会这么倒霉了,呵呵

安装之后进入后台 manage - Backup 进行设置管理,有的时候会提示“无法创建backup-随机字母和数字…”的提示,只要在wp-content目录下面自动创建就可以了。

参考资料:
WordPress自动升级插件

乱码造成本站之前数据破坏,借此谈谈MySQL的乱码问题

归档在: Database, Life, Tools — Jet @ 3:18 上午
原文出处: http://www.javatang.com/archives/2007/10/23/1847217.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

为了防止升级失败我特意用sqlYog将数据备份了一下,然后升级的过程中没有任何问题,因为我发现原来的栏目排列有些改变,于是就直接清空数据然后再导入备份过的数据重新安装一下系统。当前清空数据库的时候没有多想,反正之前有备份。这个时候问题出现了:导入备份后的数据全部变成了乱码!确切的应该说是错码才对,因为出现的不是问号而是一些错误的中文字。

乱码

反复试了很多种方法依然是无效,后来从sqlYog官方网站上查到sqlYog从6.0开始每次生成的sql文件编码都是utf-8格式的,另外在操作数据之前都使用

  1. set names "utf8";

将所有的环境都设置为utf8编码,你可以在sqlYog的查询窗口中使用

  1. SHOW VARIABLES LIKE 'character_set_%';

查看一下语言环境。sqlYog在查看数据的时候首先查看原来数据库设置的编码格式,然后将其转换为utf8格式的数据,最后输出出来;如果修改数据则相反。上次我在博文中提到使用sqlYog6.03可以直接查看gbk编码的数据,但是查看utf8格式的编码是乱码,我觉得这应该是sqlYog6.03版本中转换编码算法的一个bug,果然在最新发布的6.10rc版本中就修复了这个错误;另外一个就是根数据库默认设置的编码也有很大的关系,因为MySQL使用的默认编码是latin1,正是这样一个非常具有历史原因的设置成为了造成乱码的最直接的原因。这里可能有人会说不是sqlYog操作之前都已经将环境设置为utf8格式了吗?这个时候应该跟MySQL本身的编码没有任何关系了呀。sqlYog操作的时候是不会有关系,但是其他进程(比如php、java等)操作的时候呢?数据写入的时候已经出现乱码了,问题就出在这里。所以为了完全杜绝MySQL的乱码问题,建议将MySQL的默认编码设置为utf8格式。

因为wordpress数据库中的编码都是utf8格式的,我又使用的sqlYog6.03版本,所以无论查看还是备份utf8的数据都是乱码。最后只能是逐一从百度快照中将数据找出来添加到数据库中,因为我在wordpress中设置的remark规则跟时间和最后的数据id号有关系,为了不至于造成在百度中搜索出来的结果失效,所以首先先将原来数据库中的这些数据导入到新的数据中。当然这个时候wordpress已经升级成2.3了,呵呵(苦笑中…)

目前在2006年8月份之前的数据还没有恢复,将近有80条。我会在最近这段时间将他升级完成的。

参考资料:Which MySQL Character Sets are supported by SQLyog?

强烈推荐一款WordPress插件-Akismet

归档在: Tools, Web&Server — Jet @ 8:00 下午
原文出处: http://www.javatang.com/archives/2007/03/07/0043113.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

Akismet是干什么用的?“Akismet 插件使用 Akismet Web 服务检查您 Blog 的评论,判断它们是否为垃圾评论。”说白了就是过滤WordPress中的垃圾评论信息的,说实话这个插件实在是太棒了。以前基本每天都要清理至少几百条垃圾评论,有的时候还会不小心把真实的评论误删除掉,真是痛苦的要命。前几天安装了这个插件之后发现过滤垃圾评论的效果很是不错,现在基本每天只要处理几条就可以了,hoho…

Akismet插件默认被放在2.x的安装包中的,使用的时候需要WordPress.com API 键,这个API需要你在WP官方网站上注册一个帐号,然后在http://wordpress.com/profile/下就可以看到你的API键了。

另外Akisme默认删除垃圾评论的时间为15天,如果想修改这个时间的话可以在插件编辑中找到如下代码:

  1. $wpdb->query("DELETE FROM $wpdb->comments WHERE DATE_SUB('$now_gmt', INTERVAL 15 DAY) > comment_date_gmt AND comment_approved = 'spam'");

然后修改中间的“INTERVAL 15 DAY”的15为其他的数字。具体可以参考这篇文章:如何控制Akismet插件删除spam的时间

Enjoy it!

顺利升级WordPress到2.1

归档在: Tools — Jet @ 12:58 下午
原文出处: http://www.javatang.com/archives/2007/01/28/584491.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

上午顺利升级WordPress到2.1,很是顺利。我想最主要的是参考了官方提供的升级指南,另外使用的插件不是很多,而且最令人欣慰的是这些插件都可以在新版本中使用。

新版本初步感觉后台变化比较大,很是贴切。最喜欢的一个功能就是自动保存日志内容,这样就不用害怕提交的时候宕机了。其他的在慢慢研究,:)

实现WordPress的Permalinks

归档在: Tools, Web&Server — Jet @ 11:14 下午
原文出处: http://www.javatang.com/archives/2006/03/14/14246.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

之前了解过WordPress内置Permalinks功能,使用Apache的Rewrite实现的动态页面静态化。之前也接触过Apache的Rewrite,但是最后查阅官方的文档才发现Wordpress原来如此的简单。 ^_^!!
实现的过程如下:
1. 打开Apache的Rewrite模块。默认是注释掉的,去掉注释就可以了。

  1. LoadModule rewrite_module "modules/mod_rewrite.so"

2. 设置主机目录的AllowOverride 为All。虽然可以直接设置所有的目录AllowOverride为All,但是基于安全性的考虑,还是单独设置比较好。如下所示:

  1. <virtualhost 127.0.0.1:80>
  2.   ServerName www.yourdomain.com
  3.   DocumentRoot "/usr/wwwroot/mysite"
  4.   <directory "/usr/wwwroot/mysite">
  5.     AllowOverride All
  6.   </directory>
  7. </virtualhost>

3. 进入WP后台的”Options”-”Permalink “选项,设置Structure。比如:/%year%/%monthnum%/%day%/%postname%/
其中具体的参数含义分别如下:

  1. %year%
  2.   The year of the post, four digits, for example 2004
  3. %monthnum%
  4.   Month of the year, for example 05
  5. %day%
  6.   Day of the month, for example 28
  7. %hour%
  8.   Hour of the day, for example 15
  9. %minute%
  10.   Minute of the hour, for example 43
  11. %second%
  12.   Second of the minute, for example 33
  13. %postname%
  14.   A sanitized version of the title of the post. So “This Is A Great Post!‿ becomes “this-is-a-great-post‿ in the URI (see note below)
  15. %post_id%
  16.   The unique ID # of the post, for example 423
  17. %category%
  18.   A sanitized version of the category name. Nested sub-categories appear as nested directories in the URI.
  19. %author%
  20.   A sanitized version of the author name.

经过以上三步之后,就可以实现动态网址静态化了。

说明两点:
1) 开始的时候我以为必须自己来写RewriteRule,后来看到官方说明原来是在WP后台对Permalink 进行设置之后自动生成的。
2) 算是个插曲吧。因为开始以为必须自己写.htaccess的内容,所以首先要创建.htaccess文件。这个在Linux下面是很容易的,但是在Windows下面是无法直接创建的。实现的方法有两种,一是使用UtralEdit创建新文件,然后保存成.htaccess;二是首先创建一个文本文件,然后在cmd中使用rename更名为.htaccess。

good luck!

参考资料:
WordPress官方文档 Using Permalinks
http://codex.wordpress.org/Using_Permalinks

修复WordPress进入后台缓慢的问题

归档在: Tools, Web&Server — Jet @ 10:49 下午
Tags:
原文出处: http://www.javatang.com/archives/2006/03/13/49104.html
作者: Jet Mah from Java堂
声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!

WP进入后台默认的是Dashboard页,该页会利用 Magpierss 取三个 feeds 并汇聚成 dashboard 上的新闻。这种做法本身很不错,但是对于国内的用户来说速度就会很慢,使用的时候不是很好。在网上也看到有人直接将Dashboard功能去掉,这样终归不是很好的方式。结合这些方面,我实现了一个方案。 (更多…)