Posted on 18-06-2011
Filed Under (技术) by waterlin

趁着今天有空,把 WordPress 维护了一把,不小心,碰到如下两个问题:

错误1:Call to undefined function wp_get_current_user()

我准备在后台把 WordPress 从当前版本升级到 3.1.3,可是却出现了如下错误提示:

上 WordPress 官方论坛找了找几处说法,原因应该是一些插件还停留在旧版本的 WordPress 架构上,还会用旧方法调用 wp_get_current_user() 这类函数,引用一位人士的解释:

解决办法可以在 /wp-includes/capabilities.php 文件正式代码的开头,添加下面这行语句:

希望以后的 WordPress 版本自动兼容这些问题。

错误2:You do not have permission to access this page.

在解决了上述问题后,我在控制面板点击升级到 3.1.3 这个链接,却又出现了错误页面,提示以下错误:

这个问题比较怪异,除了无法通过 Network Admin 部分来管理站点外,其它一切都正常,包括博客的前端页面及各个独立博客的管理面板。

即使我手动升级 WordPress 到了 3.1.3,依然没有办法解决这个没有权限访问的问题。

这个问题应该是由于插件不兼容新版本的 WordPress 造成的,手动删除了该插件即可解决此类问题。

想要手动删除某个插件,直接到下面这个目录删除该插件即可:

在我这里,是由插件 Ad Inserter 造成的。不知道为什么,Ad Inserter 在我的 3.1.3 版本 WordPress 里使用就会有这个问题。

经验总结:升级 WordPress 之前,一定要先把所有的插件都关闭,然后仔细地检查一下所有的插件是否兼容新版本的 WordPress,否则就很难找到具体是哪个插件出了问题。

(0) Comments    Read More   
Posted on 17-06-2011
Filed Under (商业) by waterlin

中国的老百姓们处于弱势地位,而中国的中文博主们,就更是弱势得无以复加了。放眼四海,针对英文博主们的活动数不胜数,而针对中文博主们的活动却寥寥无几。你可能会说中文圈子太小,可是全球有五分之一的人在使用中文;你可能会说中文缺乏全球性,但是在华人圈里中文的使用已经足够广泛了。

可是,我觉得这些都不是最主要的原因:中文博主们的互动太少了,中文博客太缺乏专注精神;相互之间没有关联的博客,就像一个一个的孤岛,只能孤芳自赏,永远走不出闭门造车的怪圈。

拿福能的千人挑战活动,却干了一件不同寻常的事情。它像是在各个孤岛博客的汪洋大海里,扔进了一个小石块,激起了一圈圈的涟漪,而正是这些涟漪,让信息在博客中间流动起来。恰如我一样,就是从其它人的博客里看到的这个活动广告。

为了能迅速提升拿福能在国内市场的知名度,他们开展了”将人民币50000元平分给1000名加入的每一位博主(每人50元)”的活动,活动链接 http://www.nuffnang.com.cn/blog/2011/05/23/challenge-1000 ,想了解详情的博主们不妨看下。

参加这个活动,倒不是为了这50元钱,而是为了更切身的实践商业活动,要是这个商业模式真有价值的话,我也算是早期参与者之一了。呵,各位博主战友们,机会不可错过。

参加这个活动,倒不是为了这区区50元钱,只是希望通过参加这个活动,能圈起更多的朋友,迈出闭门造车的窘境,让自己也能在忙于码字与被字码的时候,与世界有一个擦肩的机会。假如有人从我这里开始,加入到拿福能,我会觉得无比的满足,毕竟,我是有读者的。

参加这个活动,倒不是为了这个广告平台的50元钱,多少有点”反垄断”的味道。Google Adsense 以其卓越的表现给独立博主们带了一丝生存希望,但是前段时间的 Google 广告门事件,让人不禁担忧起仅仅依靠 Google Adsense 的下场。加入拿福能,多一个盟友,就多一份力量,从这个角度来看,我支持拿福能提供给博主们多一个的选择。

就像《魔兽世界》里的著名台词所说的一样,”为了联盟”,你也赶紧来加入拿福能的千人挑战活动吧!通过这种方式,让一个一个的博客孤岛,成为信息流动的媒介;通过这种异常的信息流动方式,链出一个完整的兴趣圈。

赶紧哦,仅有名额一千人!

(0) Comments    Read More   

最近被一个问题折磨了好几天,VC++2008 编译出来的 Debug 版本程序,拷到目标机器上,没有办法运行。我用 VC++2008 编译的文件在自己电脑上可以运行,可一放到别人电脑上就显示程序配置有问题,试了几台电脑都这样,拿到另一台装了 VC++2008 的电脑上又正常了。以前用 VC++6.0 的时候没这么多事,这是怎么回事呢?

类似这种情况下,按理说应该是少了某个动态链接库,但是我确定第三方的动态链接库都拷贝到目标机器上了。

在目标机器上安装 Microsoft Visual C++ 2008 Redistributable Package (x86) 后,程序依然不能运行。但是如果我装给目标机器装上 VS2008 ,程序就可以顺利执行。

这个问题和 Debug 版本有关吗?还是 VS2008 的问题?编译成 Release 版本能不能解决这个问题呢?

我用静态编译的方式,编译出的 release 版本就更奇怪了,在我自己的电脑上运行,都提示如下错误:

这个库我怎么可能会没有?

上 MSDN 仔细找了找原因,出现类似上面的问题,有以下几点需要注意:

  1. 按道理来说,编译成 release 版本后,只要在目标机器上安装相应版本的 vc_redist 就可以了;
  2. 对于 VS2008 版本,光把编译生成的可执行文件及 Dll 拷贝到目标机器上是不行的,要加上 manifest 文件;
  3. 动态链接的程序,需要在文件目录里复制 MFC90.dll, MSVCR90.dll 和 manifest 文件,不加上这个 manifest 是运行不了滴。

在寻找答案的过程中,也在 StackOverflow 里提问获得了帮助,原文是 Where is msvcp90d.dll supposed to come from?,笔记一下以备查阅。

如果需要检测程序依赖的动态链接库有哪些,可以使用 Dependency Walker 这个工具。

PS: 看来 Stackoverflow 里,问题的回答质量是相当高的,以后可以尝试多用。

(1) Comment    Read More   
Posted on 16-06-2011
Filed Under (文化) by waterlin

记得 mail.139.com 刚推出的时候,我是何等的倾倒于可以使用手机号码作为自己的邮箱名:从此以后,再也不用在电话里解释我的名字如何全拼,如何小心翼翼地叮嘱别人,带不带后鼻音、是不是卷舌之类的;给父母申请邮箱,也不用再考虑他们不熟悉英文这一窘境,直接上手机号码作为邮箱就好了。不管从哪方面来说,都是太爽了!

打这以后,QQ、163也纷纷推出手机号码邮箱,一时之间,手机号码邮箱,成了各大邮箱、门户竞争的一大法宝,是不是这样的?

可奇怪的是,远在大洋彼岸的美丽坚共和国,Google 却好像一直没有推出用手机号码作为 Gmail 邮箱别名,其它大邮箱厂商如 Hotmail、Yahoo 好像也没有听说类似的服务。我不禁在想,为什么会这样呢?

左想右想,在这里胡乱扯一通,给自己天天写代码的日子带来一点阳光好了。我猜想,老外用名字就蛮方便的,反正你不是叫 David 就是叫 Tom,姓也就那么几个,顶多后面再加几个数字。对他们来说,英文拼写只是一个家常便饭,你没看在美剧里,在打电话留言的时候,经常就要拼一下自己的姓名吗?在这种情况下,用手机号码作为邮箱别名,优势似乎并不明显。

而对大多数中国人来说就不同了,”高学历”如我一般的人,对英文的拼写也常常出错,也极其讨厌英文的拼写。而大多数中国人都有这样的烦恼,在注册帐号的时候用什么作为帐号呢?是用装13的英文名,还是用全拼,还是取一个和自己世界观相符的英文单词?游离于种种选择之间,于是邮箱别名机制在中国大行其道,作为手机号码这一独有的特性,便成了更加亮丽的选择。现在,你再也不用为在电话里报一长串英文邮箱名而烦恼了,用手机号码,一切纠结的口头英文交流,都成了过去式。

换位思考一下,如果你能用中文作为邮箱名,如果仅和中国人通邮件的话,你是不最更喜欢用中文呢?我喜欢,起码邮箱名一报大家就明白。

而对于电话而言,很多人都在说,数字号码是对古老电话的一种妥协,是为了便于人们更好地使用转盘电话,现今的技术完全可以改成用全英文作为键盘来拨号,也容易记;殊不知,这完全是洋大人的阴谋论,换成中国,难道要把几千个常用汉字全搬上去么?在中国,用英文号码来代替数字号码肯定是行不通的。

所以,用手机号码作为邮箱别名,算是一种符合中国国情的创举了吧?

(3) Comments    Read More