<?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>Fwolf's Blog &#187; Blog - Fwolf's Blog</title>
	<atom:link href="http://www.fwolf.com/blog/category/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.fwolf.com/blog</link>
	<description>随心·随意·随缘·努力～</description>
	<lastBuildDate>Tue, 29 Dec 2009 14:58:13 +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>升级WP旧模板，让它支持Widgets</title>
		<link>http://www.fwolf.com/blog/post/402</link>
		<comments>http://www.fwolf.com/blog/post/402#comments</comments>
		<pubDate>Sat, 10 May 2008 21:09:11 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[relate]]></category>
		<category><![CDATA[sidebar]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[widgets]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/?p=402</guid>
		<description><![CDATA[正如大家所见，我使用的WordPress模板已经是很旧很旧的了，是以前在WordPress 1.5还是1.0系列的默认模板之上，简单修改而来的。没有选用三栏布局，因为我喜欢用稍微大一点的字体，三栏布局对我来说侧边栏东西太多，加上文章长了以后侧边栏的下面空白很大。不过旧模板自然也就没有Widgets：

No Sidebars Defined

You are seeing this message because the theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change. For information on making your theme widget-aware, please follow these instructions.


刚开始我还能忍受，Sidebar上没有的东西俺自己手工加上，不过用上Simple Tags插件之后，感叹到了插件和Tags的强大，Relate Post很方便，可Relate Tags就是出不来，探查一番，原因应该就是我的模板不支持Widgets。所以忍不住了，模板可以不变样，但不能不升级，我就动手把它改成支持Widgets的吧。

刚才的提示中已经给出了修改指引的链接，首先把模板中的Sidebar改成ul形式的，Theme Editor -&#62; Sidebar (sidebar.php)，第一行的ul换成div即可：

&#60;ul id="sidebar"&#62;
......中间的很多内容
&#60;/ul&#62;


看了一下，对外观没有太大影响，css应该是用id来引用的，不过还是需要调整一点css：

/* 启用Widgets后Sidebar样式有些变化，在这里修正 */
#sidebar {list-style: none;}
#sidebar li ul li:before [...]]]></description>
			<content:encoded><![CDATA[<p>正如大家所见，我使用的WordPress模板已经是很旧很旧的了，是以前在WordPress 1.5还是1.0系列的默认模板之上，简单修改而来的。没有选用三栏布局，因为我喜欢用稍微大一点的字体，三栏布局对我来说侧边栏东西太多，加上文章长了以后侧边栏的下面空白很大。不过旧模板自然也就没有Widgets：</p>

<pre><code>No Sidebars Defined

You are seeing this message because the theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change. For information on making your theme widget-aware, please follow these instructions.
</code></pre>

<p>刚开始我还能忍受，Sidebar上没有的东西俺自己<a href="366">手工加上</a>，不过用上<a href="http://wordpress.org/extend/plugins/simple-tags/">Simple Tags</a>插件之后，感叹到了插件和Tags的强大，Relate Post很方便，可Relate Tags就是出不来，探查一番，原因应该就是我的模板不支持Widgets。所以忍不住了，模板可以不变样，但不能不升级，我就动手把它改成支持Widgets的吧。</p>

<p>刚才的提示中已经给出了<a href="http://automattic.com/code/widgets/themes/">修改指引的链接</a>，首先把模板中的Sidebar改成<code>ul</code>形式的，<code>Theme Editor -&gt; Sidebar (sidebar.php)</code>，第一行的<code>ul</code>换成<code>div</code>即可：</p>

<pre><code>&lt;ul id="sidebar"&gt;
......中间的很多内容
&lt;/ul&gt;
</code></pre>

<p>看了一下，对外观没有太大影响，css应该是用id来引用的，不过还是需要调整一点css：</p>

<pre><code>/* 启用Widgets后Sidebar样式有些变化，在这里修正 */
#sidebar {list-style: none;}
#sidebar li ul li:before {
    content: "\00BB \0020";
}
#sidebar li ul li {
    margin-bottom: 5px;
}
</code></pre>

<p>然后还是修改Sidebar模板文件，加入是否有动态Sidebar的检查、如果有就调入的PHP代码：</p>

<pre><code>&lt;ul id="sidebar"&gt;
&lt;?php if ( !function_exists('dynamic_sidebar')
    || !dynamic_sidebar() ) : ?&gt;
......中间的很多内容
&lt;?php endif; ?&gt;
&lt;/ul&gt;
</code></pre>

<p>代码一共就3行，前面加2行，后面加一行，就是个简单的判断而已。别着急，现在还没有完成，还有最后一步。</p>

<p>在模板目录下，比如我的就是<code>wp-content/themes/fwolfs-blog</code>这个目录，创建一个新文件<code>functions.php</code>，内容就4行：</p>

<pre><code>&lt;?php
if ( function_exists('register_sidebar') )
    register_sidebar();
?&gt;
</code></pre>

<p>好了，现在再刷新<code>Design -&gt; Widgets</code>页面，就有内容了，我的旧模板现在也支持Widgets了。</p>

<p>同样的，<code>Design -&gt; Theme Editor</code>页面中也会多一项可编辑内容：</p>

<pre><code>Theme Functions (functions.php)
</code></pre>

<p>PS1: 如果要添加多个Sidebar，需要模板的支持，也就是模板中制定需要几个Sidebar，在Design中就能管理几个（<code>register_sidebars(n)</code>，n就是Sidebar数量）。</p>

<p>PS2: 如果想在Widgets的Text里面内嵌php代码，比如设定只有首页才显示BlogRoll，那么需要安装<a href="http://wordpress.org/extend/plugins/php-code-widget/">PHP Code Widget</a>插件，并使用<code>PHP Code</code>代码块。直接在原来的Text中写php代码的话，会原封不动的被当成php代码输出，昏死。</p>

<p>PS3: 一切都折腾好了，Relate Tags功能还是得手工添加php代码块到Widgets中：</p>

<pre><code>&lt;?php
if (is_tag()) {
    st_related_tags();
    st_remove_related_tags();
}
?&gt;
</code></pre>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/hack" title="hack" rel="tag">hack</a>, <a href="http://www.fwolf.com/blog/post/tag/plugin" title="plugin" rel="tag">plugin</a>, <a href="http://www.fwolf.com/blog/post/tag/relate" title="relate" rel="tag">relate</a>, <a href="http://www.fwolf.com/blog/post/tag/sidebar" title="sidebar" rel="tag">sidebar</a>, <a href="http://www.fwolf.com/blog/post/tag/tag" title="tag" rel="tag">tag</a>, <a href="http://www.fwolf.com/blog/post/tag/theme" title="theme" rel="tag">theme</a>, <a href="http://www.fwolf.com/blog/post/tag/widgets" title="widgets" rel="tag">widgets</a>, <a href="http://www.fwolf.com/blog/post/tag/wordpress" title="WordPress" rel="tag">WordPress</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/366" title="WordPress升级到2.3.1 (2007-11-02)">WordPress升级到2.3.1</a> (0)</li>
	<li><a href="http://www.fwolf.com/blog/post/102" title="更改 WordPress 自动生成摘要的方式 (2005-12-19)">更改 WordPress 自动生成摘要的方式</a> (17)</li>
	<li><a href="http://www.fwolf.com/blog/post/241" title="如何为网站添加sitemap文件 (2006-10-17)">如何为网站添加sitemap文件</a> (3)</li>
	<li><a href="http://www.fwolf.com/blog/post/296" title="WordPress 插件编写简例 (2007-02-26)">WordPress 插件编写简例</a> (13)</li>
	<li><a href="http://www.fwolf.com/blog/post/87" title="搞定WordPress的Permalinks (2005-11-07)">搞定WordPress的Permalinks</a> (6)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/402/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>WordPress升级后分类乱码的原因及解决</title>
		<link>http://www.fwolf.com/blog/post/394</link>
		<comments>http://www.fwolf.com/blog/post/394#comments</comments>
		<pubDate>Fri, 04 Apr 2008 17:41:15 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[charset]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/?p=394</guid>
		<description><![CDATA[另外一个网站WordPress很久没有升级了，主要是嫌网站太慢，ssh上去操作麻烦，加上主人也很少更新。不过当Wordpress Automatic upgrade出现之后这一切都简单多了我只要在页面上点点鼠标就能升级了，顺便还能把WP的文件和数据库打包下载到本地。同时，WP的新版2.5还支持插件的自动升级，以后无论是升级WP还是升级插件，基本上就不用ssh了。

Wordpress Automatic upgrade的安装和WP的升级基本顺利，不过中间执行完upgrade.php升级数据库后，返回wpau有一个错误，没什么提示信息，直接retry后说升级不成功，清除结果再次运行就没问题了。

升级成功之后，blog标题成了？？问号，我知道这是字符集的问题，看了看wp-include/wp-db.php中已经可以自动识别字符集（原来都是自己hack这个文件），就在wp-config.php中添加了两句配置：

define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');


乱码问题解决。以为这就没什么事，又分类的名称怎么都成了“？？”了，到分类管理里面一看还是问号，编辑修改成中文保存后依然是问号，如果改成英文的就没事了，其它的内容比如文章什么的中文都正常，怎么回事呢？

左思右想，觉得还是和升级时候的那个错误有关，我是从比较旧版本的WP升级过来的，以前是通过hack wp-include/wp-db.php文件设置数据库用utf8编码连接，升级过程中这个文件被新版文件覆盖了，而wp-config.php中添加相应设置之前有一个空档，而升级数据库恰恰是在这个空档时进行的。WP 2.3添加了tag功能，后来查看分类的数据表发现分类和tag是保存在一起的，所以可以确认这些被修改了的数据表在创建时，程序并不是使用utf8编码连接的数据库服务器，而是默认的latin1_swedish_ci字符集。在这样字符集的数据表中，自然是无法保存中文的，所以原来的中文、新输入的中文就都变成了问号。

解决方法有些麻烦，因为没有用phpMyAdmin，都是直接编辑好sql命令在mysql中执行的，好在涉及到的表不多：


wp_term_relationships
wp_term_taxonomy
wp_terms
wpau_active_plugins_info
wpau_upgrade_log


修改表的字符集语法如下：

ALTER TABLE [table_name]  DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


这还没完，还得把每个表中的字符型字段的编码转换过来，这个就略微多一点了：

# 查看表中各列的详细情况，包括字符集：
show full columns from wp_term_relationships;

# 更改列的字符集或类型、长度
alter table  wp_term_taxonomy change taxonomy taxonomy varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table  wp_term_taxonomy change description description longtext CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;

alter table  wp_terms [...]]]></description>
			<content:encoded><![CDATA[<p>另外一个网站WordPress很久没有升级了，主要是嫌网站太慢，ssh上去操作麻烦，加上主人也很少更新。不过当<a href="http://wordpress.org/extend/plugins/wordpress-automatic-upgrade/">Wordpress Automatic upgrade</a>出现之后这一切都简单多了我只要在页面上点点鼠标就能升级了，顺便还能把WP的文件和数据库打包下载到本地。同时，WP的新版2.5还支持插件的自动升级，以后无论是升级WP还是升级插件，基本上就不用ssh了。</p>

<p><a href="http://wordpress.org/extend/plugins/wordpress-automatic-upgrade/">Wordpress Automatic upgrade</a>的安装和WP的升级基本顺利，不过中间执行完<code>upgrade.php</code>升级数据库后，返回wpau有一个错误，没什么提示信息，直接retry后说升级不成功，清除结果再次运行就没问题了。</p>

<p>升级成功之后，blog标题成了？？问号，我知道这是字符集的问题，看了看<code>wp-include/wp-db.php</code>中已经可以自动识别字符集（原来都是自己hack这个文件），就在<code>wp-config.php</code>中添加了两句配置：</p>

<pre><code>define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
</code></pre>

<p>乱码问题解决。以为这就没什么事，又分类的名称怎么都成了“？？”了，到分类管理里面一看还是问号，编辑修改成中文保存后依然是问号，如果改成英文的就没事了，其它的内容比如文章什么的中文都正常，怎么回事呢？</p>

<p>左思右想，觉得还是和升级时候的那个错误有关，我是从比较旧版本的WP升级过来的，以前是通过hack <code>wp-include/wp-db.php</code>文件设置数据库用utf8编码连接，升级过程中这个文件被新版文件覆盖了，而<code>wp-config.php</code>中添加相应设置之前有一个空档，而升级数据库恰恰是在这个空档时进行的。WP 2.3添加了tag功能，后来查看分类的数据表发现分类和tag是保存在一起的，所以可以确认这些被修改了的数据表在创建时，程序并不是使用utf8编码连接的数据库服务器，而是默认的latin1_swedish_ci字符集。在这样字符集的数据表中，自然是无法保存中文的，所以原来的中文、新输入的中文就都变成了问号。</p>

<p>解决方法有些麻烦，因为没有用phpMyAdmin，都是直接编辑好sql命令在mysql中执行的，好在涉及到的表不多：</p>

<ul>
<li>wp_term_relationships</li>
<li>wp_term_taxonomy</li>
<li>wp_terms</li>
<li>wpau_active_plugins_info</li>
<li>wpau_upgrade_log</li>
</ul>

<p>修改表的字符集语法如下：</p>

<pre><code>ALTER TABLE [table_name]  DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
</code></pre>

<p>这还没完，还得把每个表中的字符型字段的编码转换过来，这个就略微多一点了：</p>

<pre><code># 查看表中各列的详细情况，包括字符集：
show full columns from wp_term_relationships;

# 更改列的字符集或类型、长度
alter table  wp_term_taxonomy change taxonomy taxonomy varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table  wp_term_taxonomy change description description longtext CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;

alter table  wp_terms change name name varchar(55) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table  wp_terms change slug slug varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;

alter table  wpau_active_plugins_info change plugin_name plugin_name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table  wpau_active_plugins_info change plugin_status plugin_status varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;

alter table wpau_upgrade_log change task_name task_name varchar(150) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table wpau_upgrade_log change task_status task_status varchar(150) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table wpau_upgrade_log change task_description task_description varchar(150) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
alter table wpau_upgrade_log change task_log task_log text CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
</code></pre>

<p>其实wpau的两个表不用改的，老外设计的程序一般不会写中文进去，改过来只是好看一些。</p>

<p>另外WP 2.5把slug弄没了很不舒服，虽然现在我只用id作permanent link，但还是原意有个整齐一点的slug更好看，所以用上了<a href="http://blog.2i2j.com/being-humble-opinion/wp-plugins-slug-show-in-post-of-wordpress25.html">slugshow插件</a>，希望WP啥时候把那个貌似智能其实很傻的功能改过来。</p>

<h4>Update @ 2008-04-05</h4>

<p>差点忘记了还有一个<a href="http://www.gracecode.com/Archive/Display/1298">css裸奔节</a>，顺便贴一下我blog首页穿衣服和不穿衣服的样子，首先是穿衣服的：</p>

<p><a href="http://img509.imageshack.us/my.php?image=sblog1207408366991gs3.png" target="_blank"><img src="http://img509.imageshack.us/img509/7793/sblog1207408366991gs3.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a></p>

<p>然后是不穿衣服的：</p>

<p><a href="http://img87.imageshack.us/my.php?image=fwolfsblog1207408413561bm7.png" target="_blank"><img src="http://img87.imageshack.us/img87/3391/fwolfsblog1207408413561bm7.th.png" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a></p>

<p>我的<a href="312">脱衣脚本</a>还是很好用的嘛。</p>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/charset" title="charset" rel="tag">charset</a>, <a href="http://www.fwolf.com/blog/post/tag/css" title="css" rel="tag">css</a>, <a href="http://www.fwolf.com/blog/post/tag/mysql" title="mysql" rel="tag">mysql</a>, <a href="http://www.fwolf.com/blog/post/tag/wordpress" title="WordPress" rel="tag">WordPress</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/102" title="更改 WordPress 自动生成摘要的方式 (2005-12-19)">更改 WordPress 自动生成摘要的方式</a> (17)</li>
	<li><a href="http://www.fwolf.com/blog/post/87" title="搞定WordPress的Permalinks (2005-11-07)">搞定WordPress的Permalinks</a> (6)</li>
	<li><a href="http://www.fwolf.com/blog/post/404" title="忙碌的5月 (2008-06-13)">忙碌的5月</a> (10)</li>
	<li><a href="http://www.fwolf.com/blog/post/241" title="如何为网站添加sitemap文件 (2006-10-17)">如何为网站添加sitemap文件</a> (3)</li>
	<li><a href="http://www.fwolf.com/blog/post/369" title="在无线网络中使用RADIUS服务器+mysql进行用户认证 (2007-11-15)">在无线网络中使用RADIUS服务器+mysql进行用户认证</a> (0)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/394/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress升级到2.3.1</title>
		<link>http://www.fwolf.com/blog/post/366</link>
		<comments>http://www.fwolf.com/blog/post/366#comments</comments>
		<pubDate>Thu, 01 Nov 2007 18:02:33 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[sidebar]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[widgets]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/post/366</guid>
		<description><![CDATA[以前用的是2.2版本，现在最新版是2.3.1，我看重的主要改进是添加了tag的支持，就升过来了。

升级过程非常简单，下载包，解压，覆盖，然后执行一下wp-admin/upgrade.php就可以了。

忘记了WordPress从哪个版本开始支持Widgets功能的，可我用的这个模板是从1.5版本的默认主题，一路改过来的，虽然没有动大手术，琐碎的修改还是有一些的。对于我这个懒人来说，重新套模板然后更改显然是不划算的，虽然后来学聪明了，有些修改作成了插件，剩下的好像也不少，所以尽可能的在旧模板的基础上更改。

Widgets好像就是个可高度自定义的sidebar，在我现在的模板中，打开Widgets页面总是提示“No Sidebars Defined”，不支持，好在我的要求也不高，咱自己动手，丰衣足食。

Wordpress的wp-includes/widgets.php这个文件，是Widgets的主要实现代码，所以修改主要是参照了这个文件的内容。好了，开始编辑现在这个旧模板的sidebar文件。

首先，要把存档archive改成下拉列表框，月份多了实在看着不舒服，widgets.php中有这么一段：

function wp_widget_archives($args) {
    extract($args);
    $options = get_option('widget_archives');
    $c = $options['count'] ? '1' : '0';
    $d = $options['dropdown'] ? '1' : '0';
    $title = empty($options['title']) ? __('Archives') : $options['title'];

    echo $before_widget;
    echo $before_title [...]]]></description>
			<content:encoded><![CDATA[<p>以前用的是2.2版本，现在最新版是2.3.1，我看重的主要改进是添加了tag的支持，就升过来了。</p>

<p>升级过程非常简单，下载包，解压，覆盖，然后执行一下<code>wp-admin/upgrade.php</code>就可以了。</p>

<p>忘记了WordPress从哪个版本开始支持Widgets功能的，可我用的这个模板是从1.5版本的默认主题，一路改过来的，虽然没有动大手术，琐碎的修改还是有一些的。对于我这个懒人来说，重新套模板然后更改显然是不划算的，虽然后来学聪明了，有些修改作成了插件，剩下的好像也不少，所以尽可能的在旧模板的基础上更改。</p>

<p>Widgets好像就是个可高度自定义的sidebar，在我现在的模板中，打开Widgets页面总是提示“No Sidebars Defined”，不支持，好在我的要求也不高，咱自己动手，丰衣足食。</p>

<p>Wordpress的<code>wp-includes/widgets.php</code>这个文件，是Widgets的主要实现代码，所以修改主要是参照了这个文件的内容。好了，开始编辑现在这个旧模板的sidebar文件。</p>

<p>首先，要把存档archive改成下拉列表框，月份多了实在看着不舒服，widgets.php中有这么一段：</p>

<pre><code>function wp_widget_archives($args) {
    extract($args);
    $options = get_option('widget_archives');
    $c = $options['count'] ? '1' : '0';
    $d = $options['dropdown'] ? '1' : '0';
    $title = empty($options['title']) ? __('Archives') : $options['title'];

    echo $before_widget;
    echo $before_title . $title . $after_title;

    if($d) {
?&gt;
        &lt;select name="archive-dropdown" onchange='document.location.href=this.options[this.selectedIndex].value;'&gt; &lt;option value=""&gt;&lt;?php echo attribute_escape(__('Select Month')); ?&gt;&lt;/option&gt; &lt;?php wp_get_archives("type=monthly&amp;format=option&amp;show_post_count=$c"); ?&gt; &lt;/select&gt;
</code></pre>

<p>可以看出，内置的<code>wp_get_archives</code>函数的参数，原来只有<code>type=monthly</code>，现在多了<code>format=option</code>和<code>show_post_count=$c</code>，前者应该代表是否下拉列表框形式显示，值的定义为<code>$options['dropdown']</code>；后者是是否显示本月文章计数，值的定义为<code>$options['count']</code>，并且都是用1代表真，0代表假，所以修改就简单了，把原来的：</p>

<pre><code>&lt;?php wp_get_archives('type=monthly'); ?&gt;
</code></pre>

<p>更改为：</p>

<pre><code>        &lt;select name="archive-dropdown" onchange='document.location.href=this.options[this.selectedIndex].value;'&gt; &lt;option value=""&gt;&lt;?php echo attribute_escape(__('Select Month')); ?&gt;&lt;/option&gt; &lt;?php wp_get_archives("type=monthly&amp;format=option&amp;show_post_count=1"); ?&gt; &lt;/select&gt;
</code></pre>

<p>就行了。</p>

<p>然后，把archive月份存档和category分类列表的位置互换，分类列表放在上面，直接调整代码顺序即可，同时给分类列表也加上分类计数的显示：</p>

<pre><code>            &lt;li&gt;&lt;h2&gt;Categories&lt;/h2&gt;
                &lt;ul&gt;
                &lt;?php wp_list_cats('sort_column=name&amp;show_count=1'); ?&gt;
                &lt;/ul&gt;
            &lt;/li&gt;
</code></pre>

<p>最后，添加Tag Cloud，没有这个升级就白作了，参照widgets.php中的：</p>

<pre><code>function wp_widget_tag_cloud($args) {
    extract($args);
    $options = get_option('widget_tag_cloud');
    $title = empty($options['title']) ? __('Tags') : $options['title'];

    echo $before_widget;
    echo $before_title . $title . $after_title;
    wp_tag_cloud();
    echo $after_widget;
}
</code></pre>

<p>没什么太复杂的，直接调用<code>wp_tag_cloud()</code>函数，连参数都没有，最终代码为：</p>

<pre><code>            &lt;li&gt;&lt;h2&gt;Tags Cloud&lt;/h2&gt;
                &lt;ul&gt;
                &lt;?php wp_tag_cloud(); ?&gt;
                &lt;/ul&gt;
            &lt;/li&gt;
</code></pre>

<p>这样就大功告成了，虽然模板不支持Widgets，侧边栏倒也符合我的基本使用需要了。</p>

<h4>参考</h4>

<ul>
<li><a href="http://codex.wordpress.org/Template_Tags/wp_tag_cloud">wp_tag_cloud函数的详细说明文档</a></li>
</ul>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/hack" title="hack" rel="tag">hack</a>, <a href="http://www.fwolf.com/blog/post/tag/php" title="PHP" rel="tag">PHP</a>, <a href="http://www.fwolf.com/blog/post/tag/sidebar" title="sidebar" rel="tag">sidebar</a>, <a href="http://www.fwolf.com/blog/post/tag/tag" title="tag" rel="tag">tag</a>, <a href="http://www.fwolf.com/blog/post/tag/widgets" title="widgets" rel="tag">widgets</a>, <a href="http://www.fwolf.com/blog/post/tag/wordpress" title="WordPress" rel="tag">WordPress</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/402" title="升级WP旧模板，让它支持Widgets (2008-05-11)">升级WP旧模板，让它支持Widgets</a> (4)</li>
	<li><a href="http://www.fwolf.com/blog/post/102" title="更改 WordPress 自动生成摘要的方式 (2005-12-19)">更改 WordPress 自动生成摘要的方式</a> (17)</li>
	<li><a href="http://www.fwolf.com/blog/post/87" title="搞定WordPress的Permalinks (2005-11-07)">搞定WordPress的Permalinks</a> (6)</li>
	<li><a href="http://www.fwolf.com/blog/post/296" title="WordPress 插件编写简例 (2007-02-26)">WordPress 插件编写简例</a> (13)</li>
	<li><a href="http://www.fwolf.com/blog/post/399" title="Gregarius编辑feed时中文乱码的解决 (2008-05-02)">Gregarius编辑feed时中文乱码的解决</a> (1)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/366/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MediaTemple启航</title>
		<link>http://www.fwolf.com/blog/post/340</link>
		<comments>http://www.fwolf.com/blog/post/340#comments</comments>
		<pubDate>Fri, 20 Jul 2007 06:17:23 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Hosted]]></category>
		<category><![CDATA[MediaTemple]]></category>
		<category><![CDATA[share]]></category>
		<category><![CDATA[start]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/post/340</guid>
		<description><![CDATA[按照以前的方案和约定，虽然报名人数并没有达到预期数额，我还是启动了，现在您看到的这篇文章，我的网站，就是在mt空间上了。

注册用户的过程非常顺利，就是一定要我输入公司名称，可我明明是个人用户，所以就输了个“Personal, not a company”，为了怕遭遇和万网一样的小麻烦，还特意发邮件咨询了一下，得到答复是这项信息可以随时修改，应该不影响的。注册的时间比较巧，差不多刚刚赶上美国那边（-8时区），所以很快就通过了人工审核，拿到了账号。

然后就登录账号中心、Plesk控制面板，熟悉了一下管理功能，发现基本上常用的主机管理和账号分配功能都可以在Plesk里完成了，于是建立了第一个客户Client，把我这个网站转了过去。根据合组方案，建立了一个客户模板，每个客户拥有：


自己的控制面板。
自己管理域名，限1个主域名，但可以分子域名或别名。
可以自行开启ssh账号，但仅限chroot环境。
1G磁盘空间，包括日志，但好像不包括数据库。
50G月流量，双向计算的。
1个数据库，mysql 4.1


暂时没有找到cpu的限量使用功能，费用是每人每年￥200，中途退出和加入按每月￥20计。

为了节约资源，关闭了邮件相关功能，大家gmail用得不是挺好么:)，为了方便交流，还建了一个google group，地址是：http://groups.google.com/group/fwolf-mt01，如果想测试一下速度，可以下载我上传的php文档，我这里测试能到几十k，还比较稳定，主机ping值300左右，国外的主机一般都是这个速度。

在我的blog中增加了一个hosted分类，专门记录和主机使用相关的资料。虽然已经取得了root权限，暂时还没有时间配php5，但安装wp没问题。这几天集中给大家开通账号，等有空了再把联络表和合组公约整理出来。

今天是周五，明后天就是周末了，所以请以前登记过的合组用户尽快与我联系，争取在周末把大家的空间都开通了。

另外我们合租的人还没有凑齐，有意的同学仍然可以报名。

Update @ 2007-08-31

截止目前，人数已够20，本主机不再接受新人。但如果大家仍然有意使用MT的话，也可以在我这里登记一下，一方面可以“候补”，另一方面如果人数够，我又有精力的话，可以考虑再开第二个主机。

Update @ 2008-07-13

第二年开张了，现在还有几个空缺，有意者请和我mail联系。

	Tags: MediaTemple, share, start, vps

	Related posts
	
	[MediaTemple]合租第二年开张 (7)
	[MediaTemple]从(dv)3.0升级到3.5 (0)
	由一个错误学到的一些php安全配置问题 (4)
	生成用于web服务器的openssl证书 (1)
	升级MT dv 3.0主机到php5 (9)


]]></description>
			<content:encoded><![CDATA[<p>按照以前的<a href="335">方案和约定</a>，虽然报名人数并没有达到预期数额，我还是启动了，现在您看到的这篇文章，我的网站，就是在mt空间上了。</p>

<p>注册用户的过程非常顺利，就是一定要我输入公司名称，可我明明是个人用户，所以就输了个“Personal, not a company”，为了怕<a href="332">遭遇和万网一样的小麻烦</a>，还特意发邮件咨询了一下，得到答复是这项信息可以随时修改，应该不影响的。注册的时间比较巧，差不多刚刚赶上美国那边（-8时区），所以很快就通过了人工审核，拿到了账号。</p>

<p>然后就登录账号中心、Plesk控制面板，熟悉了一下管理功能，发现基本上常用的主机管理和账号分配功能都可以在Plesk里完成了，于是建立了第一个客户Client，把我这个网站转了过去。根据合组方案，建立了一个客户模板，每个客户拥有：</p>

<ul>
<li>自己的控制面板。</li>
<li>自己管理域名，限1个主域名，但可以分子域名或别名。</li>
<li>可以自行开启ssh账号，但仅限chroot环境。</li>
<li>1G磁盘空间，包括日志，但好像不包括数据库。</li>
<li>50G月流量，双向计算的。</li>
<li>1个数据库，mysql 4.1</li>
</ul>

<p>暂时没有找到cpu的限量使用功能，费用是每人每年￥200，中途退出和加入按每月￥20计。</p>

<p>为了节约资源，关闭了邮件相关功能，大家gmail用得不是挺好么:)，为了方便交流，还建了一个google group，地址是：<a href="http://groups.google.com/group/fwolf-mt01">http://groups.google.com/group/fwolf-mt01</a>，如果想测试一下速度，可以下载我<a href="http://mt.fwolf.com/php_manual_chm.zip">上传的php文档</a>，我这里测试能到几十k，还比较稳定，主机ping值300左右，国外的主机一般都是这个速度。</p>

<p>在我的blog中增加了一个<a href="http://www.fwolf.com/blog/category/hosted">hosted分类</a>，专门记录和主机使用相关的资料。虽然已经取得了root权限，暂时还没有时间配php5，但安装wp没问题。这几天集中给大家开通账号，等有空了再把联络表和合组公约整理出来。</p>

<p>今天是周五，明后天就是周末了，所以请以前登记过的合组用户尽快与我联系，争取在周末把大家的空间都开通了。</p>

<p>另外我们合租的人还没有凑齐，有意的同学仍然可以报名。</p>

<h4>Update @ 2007-08-31</h4>

<p>截止目前，人数已够20，本主机不再接受新人。但如果大家仍然有意使用MT的话，也可以在我这里登记一下，一方面可以“候补”，另一方面如果人数够，我又有精力的话，可以考虑再开第二个主机。</p>

<h4>Update @ 2008-07-13</h4>

<p>第二年开张了，现在<a href="413">还有几个空缺</a>，有意者请和我mail联系。</p>

	Tags: <a href="http://www.fwolf.com/blog/post/tag/mediatemple" title="MediaTemple" rel="tag">MediaTemple</a>, <a href="http://www.fwolf.com/blog/post/tag/share" title="share" rel="tag">share</a>, <a href="http://www.fwolf.com/blog/post/tag/start" title="start" rel="tag">start</a>, <a href="http://www.fwolf.com/blog/post/tag/vps" title="vps" rel="tag">vps</a><br />

	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.fwolf.com/blog/post/413" title="[MediaTemple]合租第二年开张 (2008-07-13)">[MediaTemple]合租第二年开张</a> (7)</li>
	<li><a href="http://www.fwolf.com/blog/post/412" title="[MediaTemple]从(dv)3.0升级到3.5 (2008-07-13)">[MediaTemple]从(dv)3.0升级到3.5</a> (0)</li>
	<li><a href="http://www.fwolf.com/blog/post/411" title="由一个错误学到的一些php安全配置问题 (2008-07-13)">由一个错误学到的一些php安全配置问题</a> (4)</li>
	<li><a href="http://www.fwolf.com/blog/post/407" title="生成用于web服务器的openssl证书 (2008-06-25)">生成用于web服务器的openssl证书</a> (1)</li>
	<li><a href="http://www.fwolf.com/blog/post/347" title="升级MT dv 3.0主机到php5 (2007-08-09)">升级MT dv 3.0主机到php5</a> (9)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/340/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>blog如何赚钱？</title>
		<link>http://www.fwolf.com/blog/post/327</link>
		<comments>http://www.fwolf.com/blog/post/327#comments</comments>
		<pubDate>Sat, 26 May 2007 07:40:04 +0000</pubDate>
		<dc:creator>Fwolf</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://www.fwolf.com/blog/post/327</guid>
		<description><![CDATA[本来赚钱和盈利是两个概念，赚到钱了不一定就能够盈利，而盈利不见得就只有赚钱这一种方式。可是高调唱完了，blogger们还是会回到原点：从哪里补贴服务器费用？从哪里补贴所花费的时间和精力？写blog难道就只是一种娱乐么？难道除了自娱自乐或者是写写枪文，就没有其他方式么？

虽然keso比较反感付费话题，代表了一部分人的观点，可是别忘记了那后半句话“没有钱是万万不能的”，本来我们的口粮就不多，理想化的东西恐怕都要打折销售了。

原来的reviewme没赶上，现在的feedsky也没兴趣，倒是这个
Bloggerwave算是我的第一把，虽然没有太多特色，目前的赞助机会也比较少，但是要求不高，形式也简单，最方便的是直接付款到paypal，10块美刀好歹也够一个域名一年的费用了，干嘛不试试呢？

另外付费评论如何“写”也是个值得研究的话题，让你写什么就写什么那太笨了，但如果让你写产品，你就来个横向评测，让你写网站你就写写相关现象，我想不但起到了宣传的作用，对blog文章质量的影响也会减少一些。当然如果你本来是写IT的blog，非要去宣传谁家的苹果好卖，还是先三思的好。

function submitIframeBlogId1352OppId4(linkId){document.getElementById("iframeBloggerwaveBlogId1352OppId4").src="http://www.bloggerwave.com/ClickTrack.aspx?OpportunityId=4&#038;BlogId=1352&#038;LinkId="   linkId;}


No tags for this post.
	Related posts
	
	No related posts.
	

]]></description>
			<content:encoded><![CDATA[<p>本来赚钱和盈利是两个概念，赚到钱了不一定就能够盈利，而盈利不见得就只有赚钱这一种方式。可是高调唱完了，blogger们还是会回到原点：从哪里补贴服务器费用？从哪里补贴所花费的时间和精力？写blog难道就只是一种娱乐么？难道除了自娱自乐或者是写写枪文，就没有其他方式么？</p>

<p>虽然<a href="http://blog.donews.com/keso/archive/2007/05/24/1168174.aspx">keso比较反感付费话题</a>，代表了一部分人的观点，可是别忘记了那后半句话“没有钱是万万不能的”，本来我们的口粮就不多，理想化的东西恐怕都要打折销售了。</p>

<p>原来的reviewme没赶上，现在的feedsky也没兴趣，倒是这个
<a href="http://www.bloggerwave.com" onclick="submitIframeBlogId1352OppId4('1')" target="_blank">Bloggerwave</a>算是我的第一把，虽然没有太多特色，目前的赞助机会也比较少，但是要求不高，形式也简单，最方便的是直接付款到paypal，10块美刀好歹也够一个域名一年的费用了，干嘛不试试呢？</p>

<p>另外付费评论如何“写”也是个值得研究的话题，让你写什么就写什么那太笨了，但如果让你写产品，你就来个横向评测，让你写网站你就写写相关现象，我想不但起到了宣传的作用，对blog文章质量的影响也会减少一些。当然如果你本来是写IT的blog，非要去宣传谁家的苹果好卖，还是先三思的好。</p>

<script type="text/javascript">function submitIframeBlogId1352OppId4(linkId){document.getElementById("iframeBloggerwaveBlogId1352OppId4").src="http://www.bloggerwave.com/ClickTrack.aspx?OpportunityId=4&#038;BlogId=1352&#038;LinkId="   linkId;}</script>

<div style=""><iframe id="iframeBloggerwaveBlogId1352OppId4" name="iframeBloggerwaveBlogId1352OppId4" src="http://www.bloggerwave.com/ViewTrack.aspx?OpportunityId=4&#038;BlogId=1352" scrolling="no" width="225" height="40" frameborder="no"></iframe></div>
No tags for this post.
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li>No related posts.</li>
	</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.fwolf.com/blog/post/327/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
