让comments的id号连续起来

wordpress的post和comment的id号是自动增长的,这意味着当你删除掉一个post或comment时,他们的id号将变得不完整。

而讨厌的spam却让我们不得不删掉大量的comment,commnet的id号也随之变得越来越大(会不会影响到页面的生成呢?可能会)。

闲逛中发现一条实用的SQL语句,可以使id号变得连续起来(请不要试图将此语句用于post的id上!要不你会发现posts和comments失去了联系!。当然也不是完全不可能的,但实施起来你会发现它将花费你不少时间)。

ALTER TABLE tablename DROP id;
ALTER TABLE tablename ADD id INT NOT NULL PRIMARY KEY AUTO_INCREMENT FIRST

下面这条SQL语句可以使comment的id号变得连续(请在运行此语句前,备份你的MySQL数据库!):

ALTER TABLE wp_comments DROP comment_ID;
ALTER TABLE wp_comments ADD comment_ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT FIRST

我的wp已经测试,大家看看右边的recent comments是不是能对上号?如果你发现能对上,为什么不试试呢?(再罗嗦一句,一定要先备份你的数据库啊!

提醒:安装了关于comments方面plugin的同学注意啦,运行此语句后可能使你的comments失去关联!

参考:让MySQL自增长字段号从不连续变成连续的

更新blogbus to wordpress转换程序

不久前写了个从blogbus跳转到WordPress的小程序,因为只是简单在本地测试了一下就迫不及待的post出来与大家分享。没想到上传到服务器后运行却与本地测试有较大的差别,一直不能完整的把blogbus的备份文件转换到rss格式。

今天在网络闲逛时发现了一个XML to PHP的库,发现这个应该可以用在blogbus2wp的转换中。

果然一切都变得简单了。经过使用这个库,可以比较完美地把blogbus备份中的数据取出。我所要做的只是把数据格式化为rss2。

使用方法:
下载blogbus2wordpress.zip,解压;
根据你的需要修改index.php中的

$filename = ‘bus.xml’;
$allowtag = true;

上传index.php、xml.php和blogbus的备份文件到你的空间中(如果你使用的是BSP,你可以在本地安装一个php);
运行index.php;
将所得到的页面保存为xml(以xml为后缀名)文件;
在wordpress的后后台中import即可。

Tips:import过程中,wp会将xml文件上传到你的wordpress目录 -> wp-content -> uploads文件夹中。当import完成后,你可以删除它,节省空间!

如果你在使用中遇到问题可以在这里comment,或者直接Gmail我

参考:PHP XML Library

我使用的plugins

响应BPC的号召,把我正在用的plugins都倒出来:

Akismet:这个不用说啦,wp2.0标备的防spam comment的plugin。

Blogtimes with Icons:用图显示最近post的频率和时间,具体示范看footer↓↓ wp主要开发者matt制作使用的plugin(Plugin by Matt Mullenweg. Icon modifications by Martin),官方站已失效,感兴趣的,可从这里下载->My 450mbMy googlepages

CoolCode:国产精品,高亮显示代码。wp默认是把HTML等代码直接作为网页的一部分的,除非你事先将代码实体化。而这个plugin可以解决这个问题。(原来用得是iG:Syntax Hiliter,升级wp为2.01后改用coolcode了)

Def-Link:自定义词语的解释或链接。因为这样那样的问题,停用了。

Flash Filter Plus:在post中加入flash或用flash播放mp3

Flickr Gallery
:将flickr的photosets显示在wp中。代码已经许久没更新过了。近期将关掉。已关!

FAlbum 0.6.4:呵呵,功能跟上面的基本一致,添加了wp后台设置。(My Flickr)可以单独安装。(不一定要wp)

Gravatar:在留言处显示一个个性头像。gravatar官方的wp plugin,功能比较简单,需要修改theme。

IImage Browser:上传图片的plugin。激活plugin后自动添加一个按钮在quicktag中,点击后可上传东西到服务器中,支持多文件夹,自动生成img链接,快速添加代码到post中……(功能强大,不是wp自带upload可比的。强烈推荐!

中文 WordPress 工具箱:用来解决官方 WordPress 没有照顾到的中文相关问题。使用这个插件,你可以显示随机文章,最新留言,留言最多文章,发表评论最多的网友,还有真正的文章摘要,等等,真正截断,没有乱码。
呵呵,具体还是看桑林志中的介绍吧。

Feedburner Feed Replacement:把wp中的feed转到feedburner上去。需要服务器支持mod_rewrite。

WP-PageNavi:为wp增加一个比较详细的页面导航条。

Ultimate Tag Warrior:功能比较完备的一个添加tag的plugin。

WP-Googlestats:记录google bot索引wp页面的情况。

WordPress Database Backup:备份数据库。wp2.0以上版本自带。

Plugin平时增删的好像很频繁,看当前所用Plugins

另一个多用户wp——Lyceum

Lyceum是由wordpress派生出来的另一个多用户blog。

它与wpmu主要的不同在于数据库的组织上,wpmu为每个用户生成一个数据表,而lyceum则是把所有文章都放在同一个表上;还有就是Lyceum可以只注册用户而不注册blog(这个概念好像比较模糊);同时Lyceum还进行了一些安全方面的修改。

我在安装wpmu的时候总是出现问题,不知道Lyceum能不能装上呢?

[wp plugin] def-link

Def-Link:当post中有你定义过的词语时,这个plugin将自动将其转换为链接或是缩写含义(对中文好像支持不够!)。
例子:
1、HTML:当文中出现“HTML”的时候,它将会以acronym标签显示它的缩写含义。

2、wordpress:当文中有“wordpress”时,它将以链接的形式出现。

安装使用:
Def-Link下载def-link.php.txt和def-link-manage.php.txt文件;
将文件名中的”.txt”去掉;
def-link.php上传到plugins文件夹中,def-link-manage.php上传到admin文件夹中;
后台激活此plugin;
现在可以去manage->Def-Link中添加/更改/删除自定义词语。

类似plugins:
Scott Reilly的Text Replace
Tziortzis的wp-Define(Def-link既是由此plugin修改而来)

从blogbus跳转到WordPress

从:wp:1.5升级到2.0也有一段时间了
2.0的很多新的功能都还没用得上:

Categories的AJAX Add
Upload
preview
WYSIWYG编辑器
Import

但今天终于体验了一下Import功能
WordPresscn Group有位同学问到有没从blogbus跳转到wordpress的办法
虽然wordpress Import可以导入的blog类型很丰富,但肯定是没有blogbus的,幸好还有一个RSS。
blogbus是可以将内容生成一个xml文件导出到本地的,虽然格式跟RSS不太相同,但只要有内容就好办,简单地转换一下就能用了。
说干就干,自己写了个小程序转换一下:
下载blogbusbackup-to-rss.phpfile更新blogbus to wordpress转换程序文件,将其改名为以php为后缀名的文件;
打开此文件,在开头找到

$filename = ‘bus.xml’;

,改filename.xml为blogbus导出的xml文件;
将这两个文件上传到你的空间,运行blogbusbackup-to-rss文件;
把生成的文件保存为xml文件;


最后当然是在你的:wp:后台导入RSS文件。

note:因为blogbus没有categories选项,所以导入时全部文章都会标记为Uncategories如果每个post只用一个tag时,可以用分类就为tag。如果你的post不只是一个tag,你可以把这句

$allowtag = true;

改为false,这时分类只能用默认的Uncategories
只会导入Title, LogDate, Excerpt, Content and Writer(自动用默认的admin)这几项。
因为此hack只是经过自己的简单测试,所以导入前,请备份你的:wp:数据!

Update:经过测试过大的xml文件导入较困难!你可以把生成的xml文件分成数小份,便于导入。

Update:以更新blogbus2wordpress转换文件,详情->更新blogbus to wordpress转换程序
参考:用 PHP 读取和编写 XML DOM

wordpress 2.0

早几天wordpress 2.0已经发布,但这个消息却是由weblogtoolscollection来代劳的,download页中也是用1.5的名称:strayhorn(其实当时是下不了的,:wp:换了服务器,页面也在更新,链接很多都是不能正常工作)。
正奇怪wordpress.org还没有反应,终于在2005年的最后一天,:wp: development公布了这条消息:

The WordPress community is very proud to present the next generation of WordPress to the world, our 2.0 “Duke” release, named in honor of jazz pianist and composer Duke Ellington.
Read on for more

消息中提到了wordpress 2.0的名字:Duke (源于jazz钢琴家作曲家Duke Ellington)和wordpress 2.0的特点。

WordPress 2.0 Released!!

wordpress logo
weblogtoolscollection上公布2.0正式发布。
WordPress.org是什么时候改版的呢?nav似乎有一点小问题,download掉到下面去了。(firefox1.5)