<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>idea&#039;s blog &#187; WordPress</title>
	<atom:link href="http://www.ideawu.net/blog/tag/wordpress/feed" rel="self" type="application/rss+xml" />
	<link>http://www.ideawu.net/blog</link>
	<description>网络服务器架构, Linux C/C++服务器端开发, TCP/IP网络协议, PHP Web后端和Web前端开发, 网站架构.</description>
	<lastBuildDate>Wed, 08 Feb 2012 10:02:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Wordpress评论转义HTML标签</title>
		<link>http://www.ideawu.net/blog/archives/519.html</link>
		<comments>http://www.ideawu.net/blog/archives/519.html#comments</comments>
		<pubDate>Tue, 22 Jun 2010 05:54:47 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/archives/519.html</guid>
		<description><![CDATA[<p>把这段代码放到 theme 里的 functions.php 文件:</p>
<pre>
function theme_pre_comment_post( $c) {
	$c['comment_content'] = htmlspecialchars($c['comment_content']);
	return $c;
}
add_filter( 'preprocess_comment', 'theme_pre_comment_post', '', 1);
</pre>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/591.html' rel='bookmark' title='Permanent Link: jQuery延时绑定事件(lazy-bind)'>jQuery延时绑定事件(lazy-bind)</a></li>
<li><a href='http://www.ideawu.net/blog/archives/517.html' rel='bookmark' title='Permanent Link: HTTP POST using PHP cURL'>HTTP POST using PHP cURL</a></li>
<li><a href='http://www.ideawu.net/blog/archives/351.html' rel='bookmark' title='Permanent Link: 史上最强大的PHP MySQL操作类'>史上最强大的PHP MySQL操作类</a></li>
<li><a href='http://www.ideawu.net/blog/archives/607.html' rel='bookmark' title='Permanent Link: 获取动态加载的图片大小的正确方法'>获取动态加载的图片大小的正确方法</a></li>
<li><a href='http://www.ideawu.net/blog/archives/202.html' rel='bookmark' title='Permanent Link: 写自己的 http_build_query'>写自己的 http_build_query</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/519.html" title="Wordpress评论转义HTML标签">Wordpress评论转义HTML标签</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>把这段代码放到 theme 里的 functions.php 文件:</p>
<pre>
function theme_pre_comment_post( $c) {
	$c['comment_content'] = htmlspecialchars($c['comment_content']);
	return $c;
}
add_filter( 'preprocess_comment', 'theme_pre_comment_post', '', 1);
</pre>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/591.html' rel='bookmark' title='Permanent Link: jQuery延时绑定事件(lazy-bind)'>jQuery延时绑定事件(lazy-bind)</a></li>
<li><a href='http://www.ideawu.net/blog/archives/517.html' rel='bookmark' title='Permanent Link: HTTP POST using PHP cURL'>HTTP POST using PHP cURL</a></li>
<li><a href='http://www.ideawu.net/blog/archives/351.html' rel='bookmark' title='Permanent Link: 史上最强大的PHP MySQL操作类'>史上最强大的PHP MySQL操作类</a></li>
<li><a href='http://www.ideawu.net/blog/archives/607.html' rel='bookmark' title='Permanent Link: 获取动态加载的图片大小的正确方法'>获取动态加载的图片大小的正确方法</a></li>
<li><a href='http://www.ideawu.net/blog/archives/202.html' rel='bookmark' title='Permanent Link: 写自己的 http_build_query'>写自己的 http_build_query</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/519.html" title="Wordpress评论转义HTML标签">Wordpress评论转义HTML标签</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/519.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>换一个mac风格的Wordpress主题i2theme</title>
		<link>http://www.ideawu.net/blog/archives/475.html</link>
		<comments>http://www.ideawu.net/blog/archives/475.html#comments</comments>
		<pubDate>Fri, 23 Apr 2010 13:59:16 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/archives/475.html</guid>
		<description><![CDATA[<p>今天无意中发现一个mac风格的Wordpress主题 <a href="http://www.i2theme.com/">i2theme</a>, 觉得很好看, 于是Download下来, 改一下宽度, 就用上了. 以前也发现别人用过这样的mac主题.</p>
<p>mac的视觉效果确实非常优雅, 有机会要买一个苹果电脑用用.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/425.html' rel='bookmark' title='Permanent Link: 今天的午饭: 啤酒+炒蚬子'>今天的午饭: 啤酒+炒蚬子</a></li>
<li><a href='http://www.ideawu.net/blog/archives/350.html' rel='bookmark' title='Permanent Link: 我和赵薇的一次近距离接触'>我和赵薇的一次近距离接触</a></li>
<li><a href='http://www.ideawu.net/blog/archives/322.html' rel='bookmark' title='Permanent Link: 这一段时间的总结-解决问题'>这一段时间的总结-解决问题</a></li>
<li><a href='http://www.ideawu.net/blog/archives/190.html' rel='bookmark' title='Permanent Link: 凉爽的天气'>凉爽的天气</a></li>
<li><a href='http://www.ideawu.net/blog/archives/110.html' rel='bookmark' title='Permanent Link: 傲慢与偏见'>傲慢与偏见</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/475.html" title="换一个mac风格的Wordpress主题i2theme">换一个mac风格的Wordpress主题i2theme</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>今天无意中发现一个mac风格的Wordpress主题 <a href="http://www.i2theme.com/">i2theme</a>, 觉得很好看, 于是Download下来, 改一下宽度, 就用上了. 以前也发现别人用过这样的mac主题.</p>
<p>mac的视觉效果确实非常优雅, 有机会要买一个苹果电脑用用.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/425.html' rel='bookmark' title='Permanent Link: 今天的午饭: 啤酒+炒蚬子'>今天的午饭: 啤酒+炒蚬子</a></li>
<li><a href='http://www.ideawu.net/blog/archives/350.html' rel='bookmark' title='Permanent Link: 我和赵薇的一次近距离接触'>我和赵薇的一次近距离接触</a></li>
<li><a href='http://www.ideawu.net/blog/archives/322.html' rel='bookmark' title='Permanent Link: 这一段时间的总结-解决问题'>这一段时间的总结-解决问题</a></li>
<li><a href='http://www.ideawu.net/blog/archives/190.html' rel='bookmark' title='Permanent Link: 凉爽的天气'>凉爽的天气</a></li>
<li><a href='http://www.ideawu.net/blog/archives/110.html' rel='bookmark' title='Permanent Link: 傲慢与偏见'>傲慢与偏见</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/475.html" title="换一个mac风格的Wordpress主题i2theme">换一个mac风格的Wordpress主题i2theme</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/475.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress category widget  using new 2.8 API</title>
		<link>http://www.ideawu.net/blog/archives/470.html</link>
		<comments>http://www.ideawu.net/blog/archives/470.html#comments</comments>
		<pubDate>Fri, 09 Apr 2010 04:16:04 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpress插件]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/archives/470.html</guid>
		<description><![CDATA[<p>Category widget with an exclude field, that you can set &#8216;Uncategoriezed&#8217; not being shown. Based on default Wordpress category widget, so it acts just like that one.</p>
<p>In widget setting page, add &#8220;ideawu_category&#8221; widget to Sidebar, then type &#8220;1&#8243; into the &#8220;Exclude&#8221; form field that save. Category ids are seperated by comma mark.</p>
<p><strong>Download</strong>: <a href='http://www.ideawu.net/blog/wp-content/uploads/2010/04/ideawu_category.zip'>ideawu_category.zip</a></p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/116.html' rel='bookmark' title='Permanent Link: 告诉我应该选择哪一个Linux发行版'>告诉我应该选择哪一个Linux发行版</a></li>
<li><a href='http://www.ideawu.net/blog/archives/351.html' rel='bookmark' title='Permanent Link: 史上最强大的PHP MySQL操作类'>史上最强大的PHP MySQL操作类</a></li>
<li><a href='http://www.ideawu.net/blog/archives/434.html' rel='bookmark' title='Permanent Link: 最简单的JavaScript两级联动示例'>最简单的JavaScript两级联动示例</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
<li><a href='http://www.ideawu.net/blog/archives/93.html' rel='bookmark' title='Permanent Link: 国内外一些计算机学习资源的链接'>国内外一些计算机学习资源的链接</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/470.html" title="Wordpress category widget  using new 2.8 API">Wordpress category widget  using new 2.8 API</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>Category widget with an exclude field, that you can set &#8216;Uncategoriezed&#8217; not being shown. Based on default Wordpress category widget, so it acts just like that one.</p>
<p>In widget setting page, add &#8220;ideawu_category&#8221; widget to Sidebar, then type &#8220;1&#8243; into the &#8220;Exclude&#8221; form field that save. Category ids are seperated by comma mark.</p>
<p><strong>Download</strong>: <a href='http://www.ideawu.net/blog/wp-content/uploads/2010/04/ideawu_category.zip'>ideawu_category.zip</a></p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/116.html' rel='bookmark' title='Permanent Link: 告诉我应该选择哪一个Linux发行版'>告诉我应该选择哪一个Linux发行版</a></li>
<li><a href='http://www.ideawu.net/blog/archives/351.html' rel='bookmark' title='Permanent Link: 史上最强大的PHP MySQL操作类'>史上最强大的PHP MySQL操作类</a></li>
<li><a href='http://www.ideawu.net/blog/archives/434.html' rel='bookmark' title='Permanent Link: 最简单的JavaScript两级联动示例'>最简单的JavaScript两级联动示例</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
<li><a href='http://www.ideawu.net/blog/archives/93.html' rel='bookmark' title='Permanent Link: 国内外一些计算机学习资源的链接'>国内外一些计算机学习资源的链接</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/470.html" title="Wordpress category widget  using new 2.8 API">Wordpress category widget  using new 2.8 API</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/470.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress开发指南</title>
		<link>http://www.ideawu.net/blog/archives/465.html</link>
		<comments>http://www.ideawu.net/blog/archives/465.html#comments</comments>
		<pubDate>Tue, 23 Mar 2010 06:45:36 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=465</guid>
		<description><![CDATA[<h3>不使用Permalink也能编辑Wordpress slug</h3>
<p>编辑 wp-admin/js/page.js 和 wp-admin/js/post.js, 将如下两行注释掉.</p>
<p>//jQuery(&#8216;#slugdiv&#8217;).hide();<br />
//jQuery(&#8216;#pageslugdiv&#8217;).hide();</p>
<h3>autosave和revisions</h3>
<p>define( &#8216;AUTOSAVE_INTERVAL&#8217;, 99999 ); // seconds<br />
define( &#8216;WP_POST_REVISIONS&#8217;, 0 ); // disable revisions</p>
<p>从wp-admin/post-new.php和page-new.php中删除&#8221;wp_enqueue_script(&#8216;autosave&#8217;);&#8221;;</p>
<h3>关闭恼人的插件更新提示</h3>
<p>在wp-admin/menu.php中搜索&#8221;update_plugins&#8221;, 你就知道怎么修改了.</p>
<h3>显示文章数量为0的分类</h3>
<p>就算没有文章, 分类也应该显示, 而不应该隐藏.</p>
<p>修改wp-includes/category-template.php的wp_list_categories可带参数hide_empty.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/416.html' rel='bookmark' title='Permanent Link: C语言类函数宏的参数'>C语言类函数宏的参数</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/477.html' rel='bookmark' title='Permanent Link: jQuery BlockUI 页面遮挡插件'>jQuery BlockUI 页面遮挡插件</a></li>
<li><a href='http://www.ideawu.net/blog/archives/359.html' rel='bookmark' title='Permanent Link: [转]300+Jquery, CSS, MooTools 和 JS的导航菜单'>[转]300+Jquery, CSS, MooTools 和 JS的导航菜单</a></li>
<li><a href='http://www.ideawu.net/blog/archives/622.html' rel='bookmark' title='Permanent Link: PHP重用curl句柄, CURLOPT_HTTPGET的BUG'>PHP重用curl句柄, CURLOPT_HTTPGET的BUG</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/465.html" title="Wordpress开发指南">Wordpress开发指南</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<h3>不使用Permalink也能编辑Wordpress slug</h3>
<p>编辑 wp-admin/js/page.js 和 wp-admin/js/post.js, 将如下两行注释掉.</p>
<p>//jQuery(&#8216;#slugdiv&#8217;).hide();<br />
//jQuery(&#8216;#pageslugdiv&#8217;).hide();</p>
<h3>autosave和revisions</h3>
<p>define( &#8216;AUTOSAVE_INTERVAL&#8217;, 99999 ); // seconds<br />
define( &#8216;WP_POST_REVISIONS&#8217;, 0 ); // disable revisions</p>
<p>从wp-admin/post-new.php和page-new.php中删除&#8221;wp_enqueue_script(&#8216;autosave&#8217;);&#8221;;</p>
<h3>关闭恼人的插件更新提示</h3>
<p>在wp-admin/menu.php中搜索&#8221;update_plugins&#8221;, 你就知道怎么修改了.</p>
<h3>显示文章数量为0的分类</h3>
<p>就算没有文章, 分类也应该显示, 而不应该隐藏.</p>
<p>修改wp-includes/category-template.php的wp_list_categories可带参数hide_empty.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/416.html' rel='bookmark' title='Permanent Link: C语言类函数宏的参数'>C语言类函数宏的参数</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/477.html' rel='bookmark' title='Permanent Link: jQuery BlockUI 页面遮挡插件'>jQuery BlockUI 页面遮挡插件</a></li>
<li><a href='http://www.ideawu.net/blog/archives/359.html' rel='bookmark' title='Permanent Link: [转]300+Jquery, CSS, MooTools 和 JS的导航菜单'>[转]300+Jquery, CSS, MooTools 和 JS的导航菜单</a></li>
<li><a href='http://www.ideawu.net/blog/archives/622.html' rel='bookmark' title='Permanent Link: PHP重用curl句柄, CURLOPT_HTTPGET的BUG'>PHP重用curl句柄, CURLOPT_HTTPGET的BUG</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/465.html" title="Wordpress开发指南">Wordpress开发指南</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/465.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>更新了简历, Google百度搜索引擎快来啊</title>
		<link>http://www.ideawu.net/blog/archives/456.html</link>
		<comments>http://www.ideawu.net/blog/archives/456.html#comments</comments>
		<pubDate>Fri, 26 Feb 2010 03:58:37 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[etc]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=456</guid>
		<description><![CDATA[<p>我的简历页面(<a href="http://www.ideawu.net/resume.php">http://www.ideawu.net/resume.php</a>)更新后, 这两个搜索引擎都没有来更新, 还是以前的内容, 不知道什么原因, 所以发篇日志试下. Wordpress的SEO做得还是很好.</p>
<p>Google百度搜索引擎快来啊!</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/392.html' rel='bookmark' title='Permanent Link: &#8220;打开方式&#8221;里无法选择程序的解决方法'>&#8220;打开方式&#8221;里无法选择程序的解决方法</a></li>
<li><a href='http://www.ideawu.net/blog/archives/553.html' rel='bookmark' title='Permanent Link: 从腾讯&#8221;泄密门&#8221;谈程序员的职业化'>从腾讯&#8221;泄密门&#8221;谈程序员的职业化</a></li>
<li><a href='http://www.ideawu.net/blog/archives/547.html' rel='bookmark' title='Permanent Link: 网友用mobileme找回被偷iphone4, 堪比高科技特工'>网友用mobileme找回被偷iphone4, 堪比高科技特工</a></li>
<li><a href='http://www.ideawu.net/blog/archives/473.html' rel='bookmark' title='Permanent Link: 请各位朋友修改RSS地址'>请各位朋友修改RSS地址</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/456.html" title="更新了简历, Google百度搜索引擎快来啊">更新了简历, Google百度搜索引擎快来啊</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>我的简历页面(<a href="http://www.ideawu.net/resume.php">http://www.ideawu.net/resume.php</a>)更新后, 这两个搜索引擎都没有来更新, 还是以前的内容, 不知道什么原因, 所以发篇日志试下. Wordpress的SEO做得还是很好.</p>
<p>Google百度搜索引擎快来啊!</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/392.html' rel='bookmark' title='Permanent Link: &#8220;打开方式&#8221;里无法选择程序的解决方法'>&#8220;打开方式&#8221;里无法选择程序的解决方法</a></li>
<li><a href='http://www.ideawu.net/blog/archives/553.html' rel='bookmark' title='Permanent Link: 从腾讯&#8221;泄密门&#8221;谈程序员的职业化'>从腾讯&#8221;泄密门&#8221;谈程序员的职业化</a></li>
<li><a href='http://www.ideawu.net/blog/archives/547.html' rel='bookmark' title='Permanent Link: 网友用mobileme找回被偷iphone4, 堪比高科技特工'>网友用mobileme找回被偷iphone4, 堪比高科技特工</a></li>
<li><a href='http://www.ideawu.net/blog/archives/473.html' rel='bookmark' title='Permanent Link: 请各位朋友修改RSS地址'>请各位朋友修改RSS地址</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/456.html" title="更新了简历, Google百度搜索引擎快来啊">更新了简历, Google百度搜索引擎快来啊</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/456.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>变更Wordpress数据库表前缀</title>
		<link>http://www.ideawu.net/blog/archives/448.html</link>
		<comments>http://www.ideawu.net/blog/archives/448.html#comments</comments>
		<pubDate>Mon, 04 Jan 2010 09:59:34 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=448</guid>
		<description><![CDATA[<p>假设你原来的前缀是&#8221;wp_&#8221;, 将数据库中所有表都改名一遍.</p>
<p>然后修改config.php:</p>
<p>$table_prefix  = &#8216;PREFIX_&#8217;; </p>
<p>直接修改数据库表 wp_usermeta, 将meta_key带前缀&#8221;wp_&#8221;的行, 全部修改为&#8221;PREFIX_&#8221;前缀(你的新前缀).</p>
<p>直接修改数据库表 wp_options, 将option_name=wp_user_roles的那一行, 修改为option_name=PREFIX_user_roles.</p>
<p>如果没有做这些修改, 会在后台管理页面遇到错误提示&#8221;You do not have sufficient permissions to access this page.&#8221;或&#8221;您没有足够的权限访问本页面&#8221;.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/179.html' rel='bookmark' title='Permanent Link: ideabook 新版本发布'>ideabook 新版本发布</a></li>
<li><a href='http://www.ideawu.net/blog/archives/171.html' rel='bookmark' title='Permanent Link: 我不喜欢struts-html Tag Lib 的原因'>我不喜欢struts-html Tag Lib 的原因</a></li>
<li><a href='http://www.ideawu.net/blog/archives/301.html' rel='bookmark' title='Permanent Link: Google Talk Developer Home 中文翻译'>Google Talk Developer Home 中文翻译</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/448.html" title="变更Wordpress数据库表前缀">变更Wordpress数据库表前缀</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>假设你原来的前缀是&#8221;wp_&#8221;, 将数据库中所有表都改名一遍.</p>
<p>然后修改config.php:</p>
<p>$table_prefix  = &#8216;PREFIX_&#8217;; </p>
<p>直接修改数据库表 wp_usermeta, 将meta_key带前缀&#8221;wp_&#8221;的行, 全部修改为&#8221;PREFIX_&#8221;前缀(你的新前缀).</p>
<p>直接修改数据库表 wp_options, 将option_name=wp_user_roles的那一行, 修改为option_name=PREFIX_user_roles.</p>
<p>如果没有做这些修改, 会在后台管理页面遇到错误提示&#8221;You do not have sufficient permissions to access this page.&#8221;或&#8221;您没有足够的权限访问本页面&#8221;.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/179.html' rel='bookmark' title='Permanent Link: ideabook 新版本发布'>ideabook 新版本发布</a></li>
<li><a href='http://www.ideawu.net/blog/archives/171.html' rel='bookmark' title='Permanent Link: 我不喜欢struts-html Tag Lib 的原因'>我不喜欢struts-html Tag Lib 的原因</a></li>
<li><a href='http://www.ideawu.net/blog/archives/301.html' rel='bookmark' title='Permanent Link: Google Talk Developer Home 中文翻译'>Google Talk Developer Home 中文翻译</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/448.html" title="变更Wordpress数据库表前缀">变更Wordpress数据库表前缀</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/448.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>博客防垃圾评论探讨</title>
		<link>http://www.ideawu.net/blog/archives/396.html</link>
		<comments>http://www.ideawu.net/blog/archives/396.html#comments</comments>
		<pubDate>Sat, 27 Jun 2009 01:33:30 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=396</guid>
		<description><![CDATA[<p>由于 Web/HTTP 的流行(Web 基于 HTTP, 超文本传输协议), 人们开发了大量的 Web 开发库, 这使得, 提交一个表单发表评论是一件非常简单的事. 如果使用脚本语言, 甚至能仅用 3, 5 行代码便能解决.</p>
<p>博客防垃圾评论, 是每一个博主十分关心了头疼的问题, 特别是使用了 Wordpress 这类十分流行的开源博客软件, 那么被垃圾评论盯上的机率就更甚了. 同时, 这些软件也提供了防垃圾评论(anti-spam)插件, 用于解决这个问题.</p>
<h2>1. 垃圾评论的分类</h2>
<p>垃圾评论根据产生方式在可以分为两大类: 人工垃圾评论, 机器人垃圾评论.<span id="more-396"></span></p>
<h3>1.1. 人工垃圾评论</h3>
<p>人工垃圾评论是指, 某一个人类用户(人工垃圾评论制造者), 在网站上的所有的操作都和正常用户一样, 除了其提交的评论内容. 人工垃圾评论制造者使用常用的 Firefox/IE/Chrome 等浏览器, 输入页面链接, 然后复制粘贴评论内容到页面表单中, 再点击&#8221;提交&#8221;按钮. 为了提高垃圾评论提交的速度, 人工垃圾评论制造者可能会使用某些浏览器插件(如 Firefox 的操作, IE 的 ActiveX 控件), 模拟人类用户在浏览器中的浏览, 输入和点击. 这样, 人工垃圾评论制造者的工作量可以大大减轻.</p>
<h3>1.2. 机器人垃圾评论</h3>
<p>机器人垃圾评论一般完全独立于正常浏览器之外, 使用 HTTP 客户端库, 如 C 语言的 libcurl, Python 的 urllib2, C# 的 WebClient 等等. 使用这些开发库提交的数据, 在 Web 服务器看来, 和用户在浏览器中提交是没有区别的. 事实上, 浏览器也会使用一个类似的 HTTP 客户端库和服务器交互. 这样, 提交垃圾评论的整个过程, 可以完全由软件(这类软件称为&#8221;垃圾评论机器人&#8221;)控制, 不需要人的参与.</p>
<h2>2. 防垃圾评论的方法</h2>
<h3>2.1. 登录用户限制</h3>
<p>这种方法限制, 必须是登录用户才可以提交评论. 这种方法简单, 因为几乎所有的博客程序都提供了这项功能. 该方法据使用效果来看, 有时候也十分有效的.</p>
<p>这种方法的缺点也很明显, 首先它限制了正常用户的评论热情, 使评论无法广泛得到参与. 其次, 用户的注册也会成为一个产生垃圾数据的地方, 而且, 有些博客系统因为赋予登录用户太多的权限, 不良企图者只需要一次人工注册, 之后便可以肆无忌惮地使用机器人进行评论, 危害非常大.</p>
<h3>2.2. 评论提交频率限制</h3>
<p>这种方法初看有效, 但其实没有多大用处, 因为正常用户的再次提交的间隔可能时间极短到不足一分钟, 也可能长到几天甚至几个月. 假设把时间间隔设置为 5 分钟, 一天也能被提交 60/5 * 24 = 288 条评论. 重要的问题是, 本方法必须依赖准确的用户身份识别. 使用 Session 或者 Cookie 都不行, 常用的方法是使用 IP, 但因为 NAT(如常用的多台电脑同时上网的无线路由器), 多个用户的标识是相同的.</p>
<h3>2.3. 增加用户参与难度</h3>
<p>这种方法十分愚蠢, 但也能见到不少人在使用. 这种方法基于两个假设: 垃圾评论机器人的智能足够低, 垃圾评论制造者的智力和时间有限. 这两个假设都可能很大程度上正确, 但降低了正常用户的用户体验, 阻挡了正常用户.</p>
<p>下表列出了常用的方法和它们各自的影响, 人类用户包括正常用户和垃圾评论制造者:</p>
<table>
<tr>
<td>方法</td>
<td>人类用户难度</td>
<td>机器人难度</td>
</tr>
<tr>
<td>简单数字验证码</td>
<td>易</td>
<td>难</td>
</tr>
<tr>
<td>复杂数字验证码</td>
<td>难</td>
<td>较难</td>
</tr>
<tr>
<td>简单数学运算表达式求值</td>
<td>中</td>
<td>中</td>
</tr>
</table>
<p>注: 难度词&#8221;难/易&#8221;前加上副词&#8221;极&#8221;, 表示程序加甚. 如&#8221;较难&#8221;比&#8221;难&#8221;更复杂, 难度更大.</p>
<h3>2.4. 链接数量限制</h3>
<p>这种方法的一般原理, 当评论中出现超过一定数量的链接时, 将评论视为可能的垃圾评论, 所以加入待审核队列. 这种方法十分低效, 因为不良企图者可以通过评论的数量来增加链接的数量, 而不是在单个评论中使用大量链接.</p>
<h3>2.5. 更高智能的语义识别</h3>
<p>这种方式, 极大地增加博客程序的开发者开发难度和工作量. 语义识别是一个极具挑战性的领域. 幸运的是, 有一些现成的系统可以使用, 如 Akismet, 可以被 Wordpress 等博客程序使用. 此类系统提交一个中央评论识别系统, 其客户端将评论内容提交给它, 然后它再返回评论的分类(比如是否垃圾评论).</p>
<h2>3. 关于防止机器人垃圾评论的一种方法</h2>
<p>目前, 垃圾评论主要是由机器人来提交的. 机器人几乎都有一个特性, 可以区别于人类用户. 那就是, 机器人不执行网页中的 JavaScript 代码. 如果在评论表单中加入一个隐藏域, 该域的值通过 JavaScript 来设置. 服务器在接收到提交的评论时验证一下, 就能识别出机器人. 这种方法对付机器人十分有效, 但对人工垃圾评论不起作用.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/446.html' rel='bookmark' title='Permanent Link: 同时运行Firefox2和Firefox3'>同时运行Firefox2和Firefox3</a></li>
<li><a href='http://www.ideawu.net/blog/archives/306.html' rel='bookmark' title='Permanent Link: JavaScript 多线程'>JavaScript 多线程</a></li>
<li><a href='http://www.ideawu.net/blog/archives/507.html' rel='bookmark' title='Permanent Link: 非常抱歉, 博客前几天中了木马'>非常抱歉, 博客前几天中了木马</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/449.html' rel='bookmark' title='Permanent Link: 炮轰Firefox 3'>炮轰Firefox 3</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/396.html" title="博客防垃圾评论探讨">博客防垃圾评论探讨</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>由于 Web/HTTP 的流行(Web 基于 HTTP, 超文本传输协议), 人们开发了大量的 Web 开发库, 这使得, 提交一个表单发表评论是一件非常简单的事. 如果使用脚本语言, 甚至能仅用 3, 5 行代码便能解决.</p>
<p>博客防垃圾评论, 是每一个博主十分关心了头疼的问题, 特别是使用了 Wordpress 这类十分流行的开源博客软件, 那么被垃圾评论盯上的机率就更甚了. 同时, 这些软件也提供了防垃圾评论(anti-spam)插件, 用于解决这个问题.</p>
<h2>1. 垃圾评论的分类</h2>
<p>垃圾评论根据产生方式在可以分为两大类: 人工垃圾评论, 机器人垃圾评论.<span id="more-396"></span></p>
<h3>1.1. 人工垃圾评论</h3>
<p>人工垃圾评论是指, 某一个人类用户(人工垃圾评论制造者), 在网站上的所有的操作都和正常用户一样, 除了其提交的评论内容. 人工垃圾评论制造者使用常用的 Firefox/IE/Chrome 等浏览器, 输入页面链接, 然后复制粘贴评论内容到页面表单中, 再点击&#8221;提交&#8221;按钮. 为了提高垃圾评论提交的速度, 人工垃圾评论制造者可能会使用某些浏览器插件(如 Firefox 的操作, IE 的 ActiveX 控件), 模拟人类用户在浏览器中的浏览, 输入和点击. 这样, 人工垃圾评论制造者的工作量可以大大减轻.</p>
<h3>1.2. 机器人垃圾评论</h3>
<p>机器人垃圾评论一般完全独立于正常浏览器之外, 使用 HTTP 客户端库, 如 C 语言的 libcurl, Python 的 urllib2, C# 的 WebClient 等等. 使用这些开发库提交的数据, 在 Web 服务器看来, 和用户在浏览器中提交是没有区别的. 事实上, 浏览器也会使用一个类似的 HTTP 客户端库和服务器交互. 这样, 提交垃圾评论的整个过程, 可以完全由软件(这类软件称为&#8221;垃圾评论机器人&#8221;)控制, 不需要人的参与.</p>
<h2>2. 防垃圾评论的方法</h2>
<h3>2.1. 登录用户限制</h3>
<p>这种方法限制, 必须是登录用户才可以提交评论. 这种方法简单, 因为几乎所有的博客程序都提供了这项功能. 该方法据使用效果来看, 有时候也十分有效的.</p>
<p>这种方法的缺点也很明显, 首先它限制了正常用户的评论热情, 使评论无法广泛得到参与. 其次, 用户的注册也会成为一个产生垃圾数据的地方, 而且, 有些博客系统因为赋予登录用户太多的权限, 不良企图者只需要一次人工注册, 之后便可以肆无忌惮地使用机器人进行评论, 危害非常大.</p>
<h3>2.2. 评论提交频率限制</h3>
<p>这种方法初看有效, 但其实没有多大用处, 因为正常用户的再次提交的间隔可能时间极短到不足一分钟, 也可能长到几天甚至几个月. 假设把时间间隔设置为 5 分钟, 一天也能被提交 60/5 * 24 = 288 条评论. 重要的问题是, 本方法必须依赖准确的用户身份识别. 使用 Session 或者 Cookie 都不行, 常用的方法是使用 IP, 但因为 NAT(如常用的多台电脑同时上网的无线路由器), 多个用户的标识是相同的.</p>
<h3>2.3. 增加用户参与难度</h3>
<p>这种方法十分愚蠢, 但也能见到不少人在使用. 这种方法基于两个假设: 垃圾评论机器人的智能足够低, 垃圾评论制造者的智力和时间有限. 这两个假设都可能很大程度上正确, 但降低了正常用户的用户体验, 阻挡了正常用户.</p>
<p>下表列出了常用的方法和它们各自的影响, 人类用户包括正常用户和垃圾评论制造者:</p>
<table>
<tr>
<td>方法</td>
<td>人类用户难度</td>
<td>机器人难度</td>
</tr>
<tr>
<td>简单数字验证码</td>
<td>易</td>
<td>难</td>
</tr>
<tr>
<td>复杂数字验证码</td>
<td>难</td>
<td>较难</td>
</tr>
<tr>
<td>简单数学运算表达式求值</td>
<td>中</td>
<td>中</td>
</tr>
</table>
<p>注: 难度词&#8221;难/易&#8221;前加上副词&#8221;极&#8221;, 表示程序加甚. 如&#8221;较难&#8221;比&#8221;难&#8221;更复杂, 难度更大.</p>
<h3>2.4. 链接数量限制</h3>
<p>这种方法的一般原理, 当评论中出现超过一定数量的链接时, 将评论视为可能的垃圾评论, 所以加入待审核队列. 这种方法十分低效, 因为不良企图者可以通过评论的数量来增加链接的数量, 而不是在单个评论中使用大量链接.</p>
<h3>2.5. 更高智能的语义识别</h3>
<p>这种方式, 极大地增加博客程序的开发者开发难度和工作量. 语义识别是一个极具挑战性的领域. 幸运的是, 有一些现成的系统可以使用, 如 Akismet, 可以被 Wordpress 等博客程序使用. 此类系统提交一个中央评论识别系统, 其客户端将评论内容提交给它, 然后它再返回评论的分类(比如是否垃圾评论).</p>
<h2>3. 关于防止机器人垃圾评论的一种方法</h2>
<p>目前, 垃圾评论主要是由机器人来提交的. 机器人几乎都有一个特性, 可以区别于人类用户. 那就是, 机器人不执行网页中的 JavaScript 代码. 如果在评论表单中加入一个隐藏域, 该域的值通过 JavaScript 来设置. 服务器在接收到提交的评论时验证一下, 就能识别出机器人. 这种方法对付机器人十分有效, 但对人工垃圾评论不起作用.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/446.html' rel='bookmark' title='Permanent Link: 同时运行Firefox2和Firefox3'>同时运行Firefox2和Firefox3</a></li>
<li><a href='http://www.ideawu.net/blog/archives/306.html' rel='bookmark' title='Permanent Link: JavaScript 多线程'>JavaScript 多线程</a></li>
<li><a href='http://www.ideawu.net/blog/archives/507.html' rel='bookmark' title='Permanent Link: 非常抱歉, 博客前几天中了木马'>非常抱歉, 博客前几天中了木马</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/449.html' rel='bookmark' title='Permanent Link: 炮轰Firefox 3'>炮轰Firefox 3</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/396.html" title="博客防垃圾评论探讨">博客防垃圾评论探讨</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/396.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>使用i_am_not_spam Wordpress插件</title>
		<link>http://www.ideawu.net/blog/archives/376.html</link>
		<comments>http://www.ideawu.net/blog/archives/376.html#comments</comments>
		<pubDate>Sun, 03 May 2009 12:54:28 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpress插件]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=376</guid>
		<description><![CDATA[<p>虽然akismet识别垃圾评论的准确率很高, 但对于我来说, 每天看到垃圾评论队列里有那么多垃圾评论, 还是很不爽. 眼不见为净. 于是自己写了个Wordpress插件, 直接丢弃垃圾评论.</p>
<p>Wordpress只有comment_post, 但没有pre_comment_post事件, 在评论被保存之前触发. 我只好自己加上了. 所以修改了wp-comments-post.php文件.</p>
<pre lang="php" line="1">
// 就是这一行, ideawu.net
do_action('pre_comment_post', $commentdata);

$comment_id = wp_new_comment( $commentdata );

$comment = get_comment($comment_id);
</pre>
<p>插件很简单, 就是利用comment_post事件加入一个隐藏字段, 该字段的值通过客户端JavaScript代码来设置. 提交后和服务器端的值比较, 如果不相同, 说明用户未开启JavaScript, 被认为是垃圾评论. 评论机器人一般不会支持JavaScript.</p>
<p>有需要的朋友给我留言, 我发给你. 欢迎有心的朋友按第一条评论的格式回复进行测试!</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/554.html' rel='bookmark' title='Permanent Link: tableview新增单选功能'>tableview新增单选功能</a></li>
<li><a href='http://www.ideawu.net/blog/archives/519.html' rel='bookmark' title='Permanent Link: Wordpress评论转义HTML标签'>Wordpress评论转义HTML标签</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/448.html' rel='bookmark' title='Permanent Link: 变更Wordpress数据库表前缀'>变更Wordpress数据库表前缀</a></li>
<li><a href='http://www.ideawu.net/blog/archives/367.html' rel='bookmark' title='Permanent Link: Wordpress分页代码'>Wordpress分页代码</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/376.html" title="使用i_am_not_spam Wordpress插件">使用i_am_not_spam Wordpress插件</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>虽然akismet识别垃圾评论的准确率很高, 但对于我来说, 每天看到垃圾评论队列里有那么多垃圾评论, 还是很不爽. 眼不见为净. 于是自己写了个Wordpress插件, 直接丢弃垃圾评论.</p>
<p>Wordpress只有comment_post, 但没有pre_comment_post事件, 在评论被保存之前触发. 我只好自己加上了. 所以修改了wp-comments-post.php文件.</p>
<pre lang="php" line="1">
// 就是这一行, ideawu.net
do_action('pre_comment_post', $commentdata);

$comment_id = wp_new_comment( $commentdata );

$comment = get_comment($comment_id);
</pre>
<p>插件很简单, 就是利用comment_post事件加入一个隐藏字段, 该字段的值通过客户端JavaScript代码来设置. 提交后和服务器端的值比较, 如果不相同, 说明用户未开启JavaScript, 被认为是垃圾评论. 评论机器人一般不会支持JavaScript.</p>
<p>有需要的朋友给我留言, 我发给你. 欢迎有心的朋友按第一条评论的格式回复进行测试!</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/554.html' rel='bookmark' title='Permanent Link: tableview新增单选功能'>tableview新增单选功能</a></li>
<li><a href='http://www.ideawu.net/blog/archives/519.html' rel='bookmark' title='Permanent Link: Wordpress评论转义HTML标签'>Wordpress评论转义HTML标签</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/448.html' rel='bookmark' title='Permanent Link: 变更Wordpress数据库表前缀'>变更Wordpress数据库表前缀</a></li>
<li><a href='http://www.ideawu.net/blog/archives/367.html' rel='bookmark' title='Permanent Link: Wordpress分页代码'>Wordpress分页代码</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/376.html" title="使用i_am_not_spam Wordpress插件">使用i_am_not_spam Wordpress插件</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/376.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>博客迁移到Wordpress, 欢迎订阅</title>
		<link>http://www.ideawu.net/blog/archives/375.html</link>
		<comments>http://www.ideawu.net/blog/archives/375.html#comments</comments>
		<pubDate>Thu, 30 Apr 2009 12:10:14 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ideawu.net/blog/?p=375</guid>
		<description><![CDATA[<p>从第一次想法到现在好几年, 今天终于把博客迁移到Wordpress上, 欢迎订阅. 近4年来不使用Wordpress, 而是使用自己写的博客程序, 原来有几个: 1. 自己写的程序更快. 2. 自己写的程序用起来更顺手.</p>
<p>因为自己比较熟悉PHP+MySQL, 所以数据迁移很顺利, 原来ideablog中的文章, 评论和留言都迁移过来了, 没有丢失. 而且通过简单的文本替换, 适应了Wordpress的文章显示格式, 保持了原有的文章格式. 当然会有部分格式有问题, 但还未发现.</p>
<p>新博客刚上线没几分钟, 就收到垃圾评论(spam). 还不如我的ideablog, 只用简单的客户端JavaScript代码就可以实现防垃圾评论, 因为spam机器人不会去执行javascript.</p>
<p><a href="http://www.ideawu.net/blog/?feed=rss2">欢迎订阅RSS</a>.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/396.html' rel='bookmark' title='Permanent Link: 博客防垃圾评论探讨'>博客防垃圾评论探讨</a></li>
<li><a href='http://www.ideawu.net/blog/archives/122.html' rel='bookmark' title='Permanent Link: 编写JSP/PHP+MySQL留言本'>编写JSP/PHP+MySQL留言本</a></li>
<li><a href='http://www.ideawu.net/blog/archives/519.html' rel='bookmark' title='Permanent Link: Wordpress评论转义HTML标签'>Wordpress评论转义HTML标签</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/375.html" title="博客迁移到Wordpress, 欢迎订阅">博客迁移到Wordpress, 欢迎订阅</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>从第一次想法到现在好几年, 今天终于把博客迁移到Wordpress上, 欢迎订阅. 近4年来不使用Wordpress, 而是使用自己写的博客程序, 原来有几个: 1. 自己写的程序更快. 2. 自己写的程序用起来更顺手.</p>
<p>因为自己比较熟悉PHP+MySQL, 所以数据迁移很顺利, 原来ideablog中的文章, 评论和留言都迁移过来了, 没有丢失. 而且通过简单的文本替换, 适应了Wordpress的文章显示格式, 保持了原有的文章格式. 当然会有部分格式有问题, 但还未发现.</p>
<p>新博客刚上线没几分钟, 就收到垃圾评论(spam). 还不如我的ideablog, 只用简单的客户端JavaScript代码就可以实现防垃圾评论, 因为spam机器人不会去执行javascript.</p>
<p><a href="http://www.ideawu.net/blog/?feed=rss2">欢迎订阅RSS</a>.</p>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/396.html' rel='bookmark' title='Permanent Link: 博客防垃圾评论探讨'>博客防垃圾评论探讨</a></li>
<li><a href='http://www.ideawu.net/blog/archives/122.html' rel='bookmark' title='Permanent Link: 编写JSP/PHP+MySQL留言本'>编写JSP/PHP+MySQL留言本</a></li>
<li><a href='http://www.ideawu.net/blog/archives/519.html' rel='bookmark' title='Permanent Link: Wordpress评论转义HTML标签'>Wordpress评论转义HTML标签</a></li>
<li><a href='http://www.ideawu.net/blog/archives/470.html' rel='bookmark' title='Permanent Link: Wordpress category widget  using new 2.8 API'>Wordpress category widget  using new 2.8 API</a></li>
<li><a href='http://www.ideawu.net/blog/archives/465.html' rel='bookmark' title='Permanent Link: Wordpress开发指南'>Wordpress开发指南</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/375.html" title="博客迁移到Wordpress, 欢迎订阅">博客迁移到Wordpress, 欢迎订阅</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/375.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wordpress分页代码</title>
		<link>http://www.ideawu.net/blog/archives/367.html</link>
		<comments>http://www.ideawu.net/blog/archives/367.html#comments</comments>
		<pubDate>Thu, 12 Mar 2009 06:47:01 +0000</pubDate>
		<dc:creator>ideawu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[<p>将下面的函数放到你的主题的 functions.php 文件中:</p>
<pre lang="php" line="1">
function theme_echo_pagenavi(){
    global $wp_query;
    global $request, $posts_per_page, $wpdb, $paged;
    $maxButtonCount = 9; //显示的最多链接数目

    $current_page = $paged;

    $current_page = $paged;
    if(empty($current_page)) {
        $current_page = 1;
    }

    $numposts = $wp_query-&gt;found_posts;
    $max_page = $wp_query-&gt;max_num_pages;

    $start = max(1, $current_page - intval($maxButtonCount/2));
    $end = min($start + $maxButtonCount - 1, $max_page);
    $start = max(1, $end - $maxButtonCount + 1);

    if($current_page &lt;= 1){
        echo "&lt;span&gt;|&lt;&lt;/span&gt;";
        echo "&lt;span&gt;&lt;&lt;&lt;/span&gt;";
    }else{
        echo '&lt;a href="'.get_pagenum_link().'"&gt;&lt;span&gt;|&lt;&lt;/span&gt;&lt;/a&gt;';
        echo '&lt;a href="'.get_pagenum_link($current_page-1).'"&gt;&lt;span&gt;&lt;&lt;&lt;/span&gt;&lt;/a&gt;';
    }
    for($i=$start; $i&lt;=$end; $i++){
        if($i == $current_page) {
            echo "&lt;span class=\"page_num on\"&gt;$i&lt;/span&gt;";
        } else {
            echo '&lt;a href="'.get_pagenum_link($i).'"&gt;&lt;span class="page_num"&gt;'.$i.'&lt;/span&gt;&lt;/a&gt;';
        }
    }
    if($current_page &gt;= $max_page){
        echo "&lt;span&gt;&gt;&gt;&lt;/span&gt;";
        echo "&lt;span&gt;&gt;|&lt;/span&gt; ";
    }else{
        echo '&lt;a href="'.get_pagenum_link($current_page+1).'"&gt;&lt;span&gt;&gt;&gt;&lt;/span&gt;&lt;/a&gt;';
        echo '&lt;a href="'.get_pagenum_link($max_page).'"&gt;&lt;span&gt;&gt;|&lt;/span&gt;&lt;/a&gt;';
    }

    echo " {$current_page}/{$max_page}页, {$numposts}条记录.";
}
</pre>
<p>在主题的 index.php 文件中这样引用:</p>
<pre lang="php" line="1">
&lt;?php theme_echo_pagenavi(); ?&gt;
</pre>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/518.html' rel='bookmark' title='Permanent Link: if-else对优化代码冗余度的反作用'>if-else对优化代码冗余度的反作用</a></li>
<li><a href='http://www.ideawu.net/blog/archives/352.html' rel='bookmark' title='Permanent Link: 3行代码的分页算法(求起始页和结束页)'>3行代码的分页算法(求起始页和结束页)</a></li>
<li><a href='http://www.ideawu.net/blog/archives/619.html' rel='bookmark' title='Permanent Link: PHP浮点数显示和转成字符串'>PHP浮点数显示和转成字符串</a></li>
<li><a href='http://www.ideawu.net/blog/archives/464.html' rel='bookmark' title='Permanent Link: 用PHP去除重复图片文件'>用PHP去除重复图片文件</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/367.html" title="Wordpress分页代码">Wordpress分页代码</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></description>
			<content:encoded><![CDATA[<p>将下面的函数放到你的主题的 functions.php 文件中:</p>
<pre lang="php" line="1">
function theme_echo_pagenavi(){
    global $wp_query;
    global $request, $posts_per_page, $wpdb, $paged;
    $maxButtonCount = 9; //显示的最多链接数目

    $current_page = $paged;

    $current_page = $paged;
    if(empty($current_page)) {
        $current_page = 1;
    }

    $numposts = $wp_query-&gt;found_posts;
    $max_page = $wp_query-&gt;max_num_pages;

    $start = max(1, $current_page - intval($maxButtonCount/2));
    $end = min($start + $maxButtonCount - 1, $max_page);
    $start = max(1, $end - $maxButtonCount + 1);

    if($current_page &lt;= 1){
        echo "&lt;span&gt;|&lt;&lt;/span&gt;";
        echo "&lt;span&gt;&lt;&lt;&lt;/span&gt;";
    }else{
        echo '&lt;a href="'.get_pagenum_link().'"&gt;&lt;span&gt;|&lt;&lt;/span&gt;&lt;/a&gt;';
        echo '&lt;a href="'.get_pagenum_link($current_page-1).'"&gt;&lt;span&gt;&lt;&lt;&lt;/span&gt;&lt;/a&gt;';
    }
    for($i=$start; $i&lt;=$end; $i++){
        if($i == $current_page) {
            echo "&lt;span class=\"page_num on\"&gt;$i&lt;/span&gt;";
        } else {
            echo '&lt;a href="'.get_pagenum_link($i).'"&gt;&lt;span class="page_num"&gt;'.$i.'&lt;/span&gt;&lt;/a&gt;';
        }
    }
    if($current_page &gt;= $max_page){
        echo "&lt;span&gt;&gt;&gt;&lt;/span&gt;";
        echo "&lt;span&gt;&gt;|&lt;/span&gt; ";
    }else{
        echo '&lt;a href="'.get_pagenum_link($current_page+1).'"&gt;&lt;span&gt;&gt;&gt;&lt;/span&gt;&lt;/a&gt;';
        echo '&lt;a href="'.get_pagenum_link($max_page).'"&gt;&lt;span&gt;&gt;|&lt;/span&gt;&lt;/a&gt;';
    }

    echo " {$current_page}/{$max_page}页, {$numposts}条记录.";
}
</pre>
<p>在主题的 index.php 文件中这样引用:</p>
<pre lang="php" line="1">
&lt;?php theme_echo_pagenavi(); ?&gt;
</pre>


<h3>Related posts:</h3><ol><li><a href='http://www.ideawu.net/blog/archives/518.html' rel='bookmark' title='Permanent Link: if-else对优化代码冗余度的反作用'>if-else对优化代码冗余度的反作用</a></li>
<li><a href='http://www.ideawu.net/blog/archives/352.html' rel='bookmark' title='Permanent Link: 3行代码的分页算法(求起始页和结束页)'>3行代码的分页算法(求起始页和结束页)</a></li>
<li><a href='http://www.ideawu.net/blog/archives/619.html' rel='bookmark' title='Permanent Link: PHP浮点数显示和转成字符串'>PHP浮点数显示和转成字符串</a></li>
<li><a href='http://www.ideawu.net/blog/archives/464.html' rel='bookmark' title='Permanent Link: 用PHP去除重复图片文件'>用PHP去除重复图片文件</a></li>
</ol><div><p><img src="http://www.ideawu.net/favicon.ico" /> 你现在看的文章是: <a href="http://www.ideawu.net/blog/archives/367.html" title="Wordpress分页代码">Wordpress分页代码</a></p>

<div>
	<a href="http://www.benegg.com/linode-ad.php">
		Linode VPS - 美国虚拟主机
	</a>
	|
	<a href="http://www.udpwork.com/">
		IT牛人博客聚合网站
	</a>
</div></div>]]></content:encoded>
			<wfw:commentRss>http://www.ideawu.net/blog/archives/367.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

