使用Word2007写WordPress

Word2007新增了不少WEB功能,最近发现用它写博客蛮方便的。直接输自己WordPress的地址,账号便可以发布、修改博文。
具体的步骤大家打开Word2007一定很快就发现怎么用了。

这里贴出自己遇到的若干问题,以及解决方法:

1. 添加账号时,提示无法连接到博客提供商

1.a) 首先确认你的博客设置中Writing里的”Enable the Atom Publishing Protocol” 和 “Enable the WordPress, Movable Type, MetaWeblog and Blogger XML-RPC publishing protocols” 这两个选项已经勾上。这是启用XMLRPC,只用启用了此功能,Word才能连接到博客。

1.b) 如果已经启用了,但仍然无法连接,那么很可能是你的WordPress经过了手工编辑,可能是你自己编辑,也可能是安装包已经是经过修改的。而在修改时有相关文件被加上了UTF8编码标记
打开wp-includes/class-IXR.php 文件,找到

$length = strlen($xml);
header('Connection: close');
header('Content-Length: '.$length);
header('Content-Type: text/xml');
header('Date: '.date('r'));
echo $xml;
exit;

这段代码,大概应该在395行的样子,将设置Content-Length这句注释掉:

$length = strlen($xml);
header('Connection: close');
header('Content-Length: '.$length);
//header('Content-Type: text/xml');
header('Date: '.date('r'));
echo $xml;
exit;

因为这句话设置了反馈给Word的内容的长度,而一旦内容中包含了UTF8编码标记的话,将会导致xml文档内容不完整,而使得Word无法正常解析。显然不设置这句,PHP也会自动计算出长度的。

2. 打开现有文章时,文章内容不全。

细心的人会发现,凡是加入了“More”标记的文章,打开后都只能显示More之前的内容。这个不知道为什么会这样设计,反正WordPress的设计者就这么干了,我们可以改一下代码。
打开根目录下的xmlrpc.php文件。找到如下代码片段(大概在2630行):

$resp = array(
	'dateCreated' => new IXR_Date($post_date),
	'userid' => $postdata['post_author'],
	'postid' => $postdata['ID'],
	'description' => $post['main'],  //这个$post['main']是上面计算出来的More标签之前的摘要内容
	'title' => $postdata['post_title'],
	'link' => $link,
	'permaLink' => $link

其中的$post['main']替换成$postdata['post_content']即可。这样即是返回全文:

$resp = array(
	'dateCreated' => new IXR_Date($post_date),
	'userid' => $postdata['post_author'],
	'postid' => $postdata['ID'],
	'description' => $postdata['post_content'],  //返回全文
	'title' => $postdata['post_title'],
	'link' => $link,
	'permaLink' => $link

OK,我就遇到这两个问题了。最近在研究将WordPress改造成电子商务网站,有成果了再跟大家分享。

如何预防自己在婚姻中出轨

现代对“开放性婚姻”可能每个人解读不同,但是从渴望出轨到身体力行的男女比例似乎皆在攀升来看,我们需要预防的不是别人出轨与否,且预防得了吗?而是我们该怎么看待婚约,以及如何善处才不会造成彼此纠葛,我一贯主张“惟有修为上半身,才好管理下半身”,无论情感或情欲流动的事实为何,我们总清楚自己在做什么?到底要什么?能否承担得起后果?
Continue reading

分块云计算

今日看到一篇来自InfoQ的文章分块云计算, 受益颇多,转链于此。

在我的眼中,过去数年间的多股潮流,都指向同一个方向,现在该到将它们总结归纳的时候了。这篇文章没有什么新奇观点,只是将我的思考与观察做一个概括。我不自禁要将心中的图景描绘出来(即便这幅画的背景全由我的痛苦教训涂抹而成)。这就开始吧。…

原文排版得更好,并且附有插图,建议对项目架构有兴趣的朋友们到InfoQ查看原文:http://www.infoq.com/cn/articles/CCC-Jimmy-Nilsson