<?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>知更鸟 &#187; WP教程</title>
	<atom:link href="http://zmingcx.com/tag/wp%e6%95%99%e7%a8%8b/feed" rel="self" type="application/rss+xml" />
	<link>http://zmingcx.com</link>
	<description>崇尚专注　追求极致</description>
	<lastBuildDate>Tue, 07 Feb 2012 04:35:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>为WordPress添加自定义小工具（widget）</title>
		<link>http://zmingcx.com/to-add-a-custom-wordpress-widget-widget.html</link>
		<comments>http://zmingcx.com/to-add-a-custom-wordpress-widget-widget.html#comments</comments>
		<pubDate>Sat, 23 Jul 2011 05:14:46 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[HotNews Pro]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4464</guid>
		<description><![CDATA[很多主题设计者都喜欢添加固定的侧边功能模块替换Wordpress默认小工具（widget）功能，但上下排列位置是固定的，重新排序需要修改模版文件，对新手来说有一定难度，如果能像Wordpress默认小工具一样，可通过拖拽移动位置是不是会很方便，这篇文章就教大家实现这一功能。 其实强大的Wordpress早已为我们提供了这方面的接口（API），很多国外主题已集成该功能，只是国内主题中很少见到，实现这一功能要用到： wp_register_sidebar_widget()   &#160; 通过上面函数可以向Wordpress小工具（widget）页面注册添加自定义小工具项目。 一、首先将主题固定的模块函数提取出来，放到单独的模版文件中。 比如将下面这两段“热门文章及分类目录”代码，分别粘贴到新建的两个：hot.php和categories.php文件模版中， 热门文章代码： &#60;?php $popular = new WP_Query('orderby=comment_count&#38;posts_per_page=10'); ?&#62;    &#60;?php while ($popular-&#62;have_posts()) : $popular-&#62;the_post(); ?&#62;    &#60;li&#62;&#60;a href="&#60;?php the_permalink(); ?&#62;"&#62;&#60;?php the_title(); ?&#62;&#60;/a&#62;&#60;/li&#62;    &#60;?php endwhile; ?&#62;   文章分类代码： &#60;ul&#62;&#60;?php wp_list_cats("sort_column=name&#38;hierarchical=0&#38;exclude="); ?&#62;&#60;/ul&#62;   二、打开主题的functions.php，添加： if( function_exists( 'register_sidebar_widget' ) ) {        register_sidebar_widget('热门文章','mb_hot');        register_sidebar_widget('文章分类','mb_categories');    }   及： function mb_mb_hot() { include(TEMPLATEPATH . '/mb_hot.php'); }    function mb_categories() { include(TEMPLATEPATH . '/categories.php'); }   之后，打开Wordpress小工具页面，会多出两个小工具“热门文章和文章分类”，与默认小工具一样可任意拖拽到侧边widget中，加上相应的样式基本就大功造成了。 另外还可以替换和隐藏默认的小工具，可以下面参考官网Codex 即将升级的HotNews Pro 主题已将大部分侧边固定功能模块，移到Wordpress小工具（widget）面板中，方便用户灵活安排侧边模块位置。 相关参考： Function Reference/register sidebar widget Widgets API]]></description>
			<content:encoded><![CDATA[<p>很多主题设计者都喜欢添加固定的侧边功能模块替换Wordpress默认小工具（widget）功能，但上下排列位置是固定的，重新排序需要修改模版文件，对新手来说有一定难度，如果能像Wordpress默认小工具一样，可通过拖拽移动位置是不是会很方便，这篇文章就教大家实现这一功能。</p>
<p>其实强大的Wordpress早已为我们提供了这方面的接口（API），很多国外主题已集成该功能，只是国内主题中很少见到，实现这一功能要用到：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>wp_register_sidebar_widget()  </span></span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>通过上面函数可以向Wordpress小工具（widget）页面注册添加自定义小工具项目。</p>
<p>一、首先将主题固定的模块函数提取出来，放到单独的模版文件中。</p>
<p>比如将下面这两段“热门文章及分类目录”代码，分别粘贴到新建的两个：hot.php和categories.php文件模版中，</p>
<p>热门文章代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php </span><span class="vars">$popular</span><span> = </span><span class="keyword">new</span><span> WP_Query('orderby=comment_count&amp;posts_per_page=10'); ?&gt;   </span></span></li>
<li><span>&lt;?php </span><span class="keyword">while</span><span> (</span><span class="vars">$popular</span><span>-&gt;have_posts()) : </span><span class="vars">$popular</span><span>-&gt;the_post(); ?&gt;   </span></li>
<li class="alt"><span>&lt;li&gt;&lt;a href=</span><span class="string">"&lt;?php the_permalink(); ?&gt;"</span><span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/li&gt;   </span></li>
<li><span>&lt;?php </span><span class="keyword">endwhile</span><span>; ?&gt;  </span></li>
</ol>
</div>
<p>文章分类代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;ul&gt;&lt;?php wp_list_cats(</span><span class="string">"sort_column=name&amp;hierarchical=0&amp;exclude="</span><span>); ?&gt;&lt;/ul&gt;  </span></span></li>
</ol>
</div>
<p>二、打开主题的functions.php，添加：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">if</span><span>( function_exists( 'register_sidebar_widget' ) ) {   </span></span></li>
<li><span>    register_sidebar_widget('热门文章','mb_hot');   </span></li>
<li class="alt"><span>    register_sidebar_widget('文章分类','mb_categories');   </span></li>
<li><span>}  </span></li>
</ol>
</div>
<p>及：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">function</span><span> mb_mb_hot() { </span><span class="keyword">include</span><span>(TEMPLATEPATH . '/mb_hot.php'); }   </span></span></li>
<li><span class="keyword">function</span><span> mb_categories() { </span><span class="keyword">include</span><span>(TEMPLATEPATH . '/categories.php'); }  </span></li>
</ol>
</div>
<p>之后，打开Wordpress小工具页面，会多出两个小工具“热门文章和文章分类”，与默认小工具一样可任意拖拽到侧边widget中，加上相应的样式基本就大功造成了。</p>
<p>另外还可以替换和隐藏默认的小工具，可以下面参考官网Codex</p>
<p>即将升级的HotNews Pro 主题已将大部分侧边固定功能模块，移到Wordpress小工具（widget）面板中，方便用户灵活安排侧边模块位置。</p>
<p>相关参考：</p>
<p><a href="http://codex.wordpress.org/Function_Reference/register_sidebar_widget" target="_blank">Function Reference/register sidebar widget</a></p>
<p><a href="http://codex.wordpress.org/Plugins/WordPress_Widgets_Api" target="_blank">Widgets API</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/to-add-a-custom-wordpress-widget-widget.html/feed</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>在新窗口打开WordPress 站点评论者网站链接</title>
		<link>http://zmingcx.com/open-site-in-a-new-window-reviewers-wordpress-web-links.html</link>
		<comments>http://zmingcx.com/open-site-in-a-new-window-reviewers-wordpress-web-links.html#comments</comments>
		<pubDate>Fri, 03 Jun 2011 15:36:48 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4367</guid>
		<description><![CDATA[可能有的童鞋知道通过给链接添加target="_blank"属性可以实现链接在新窗口打开，不过这个属性并不符合 W3C 标准，至于为什么不符合标准，可能是制订W3C标准的老外认为弹出新窗口有些“不友好”。而WordPress作为著名的网站程序源码当然会很规范，留言列表中的网站链接采用的是rel="external nofollow"，符合W3C 标准，至于这个属性的含意这里就不详细解释了，基本与target="_blank"类似，但默认并不会在新窗口中打开链接，还需要一段javascript配合才会有效。 就是下面这段代码： &#60;script type="text/javascript"&#62; function externallinks() { if (!document.getElementsByTagName) return; var anchors = document.getElementsByTagName("a"); for (var i=0; i&#60;anchors.length; i++) { var anchor = anchors[i]; if (anchor.getAttribute("href") &#38;&#38; anchor.getAttribute("rel") == "external nofollow") { anchor.target = "_blank"; } } } window.onload = externallinks; &#60;/script&#62; &#160; 将上面代码，添加到主题顶部模板header.php中即可。这个方法比修改WP程序源文件要方便的多。 不过貌似只对IE有效，其它核心浏览器都有多标签设置功能，并不一定有效果。]]></description>
			<content:encoded><![CDATA[<p>可能有的童鞋知道通过给链接添加target="_blank"属性可以实现链接在新窗口打开，不过这个属性并不符合 W3C 标准，至于为什么不符合标准，可能是制订W3C标准的老外认为弹出新窗口有些“不友好”。而WordPress作为著名的网站程序源码当然会很规范，留言列表中的网站链接采用的是rel="external nofollow"，符合W3C 标准，至于这个属性的含意这里就不详细解释了，基本与target="_blank"类似，但默认并不会在新窗口中打开链接，还需要一段javascript配合才会有效。</p>
<p>就是下面这段代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span>&gt; </span></span></li>
<li><span> </span><span class="keyword">function</span><span> externallinks() </span></li>
<li class="alt"><span>{ </span></li>
<li><span> </span><span class="keyword">if</span><span> (!document.getElementsByTagName) </span><span class="keyword">return</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">var</span><span> anchors = document.getElementsByTagName(</span><span class="string">"a"</span><span>); </span></li>
<li><span> </span><span class="keyword">for</span><span> (</span><span class="keyword">var</span><span> i=0; i&lt;anchors.length; i++) </span></li>
<li class="alt"><span> { </span></li>
<li><span> </span><span class="keyword">var</span><span> anchor = anchors[i]; </span></li>
<li class="alt"><span> </span><span class="keyword">if</span><span> (anchor.getAttribute(</span><span class="string">"href"</span><span>) &amp;&amp; anchor.getAttribute(</span><span class="string">"rel"</span><span>) == </span><span class="string">"external nofollow"</span><span>) </span></li>
<li><span> { </span></li>
<li class="alt"><span> anchor.target = </span><span class="string">"_blank"</span><span>; </span></li>
<li><span> } </span></li>
<li class="alt"><span> } </span></li>
<li><span>} </span></li>
<li class="alt"><span>window.onload = externallinks; </span></li>
<li><span>&lt;/script&gt; </span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>将上面代码，添加到主题顶部模板header.php中即可。这个方法比修改WP程序源文件要方便的多。</p>
<blockquote><p>不过貌似只对IE有效，其它核心浏览器都有多标签设置功能，并不一定有效果。</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/open-site-in-a-new-window-reviewers-wordpress-web-links.html/feed</wfw:commentRss>
		<slash:comments>54</slash:comments>
		</item>
		<item>
		<title>为WordPress模版添加一个固定的滚屏按钮</title>
		<link>http://zmingcx.com/wordpress-template-for-the-scroll-button-to-add-a-fixed.html</link>
		<comments>http://zmingcx.com/wordpress-template-for-the-scroll-button-to-add-a-fixed.html#comments</comments>
		<pubDate>Mon, 23 May 2011 15:47:15 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4351</guid>
		<description><![CDATA[似乎很多人都喜欢弄一个固定的滚屏按钮，这个小功能可以方便读者阅读。其实我们使用的操作系统早已提供了这一功能，那就鼠标中键（滚轮），使用起来远比这个按钮方便，不过鼠标中键貌似都不是很抗用，另外，也为点缀一下博客，弄个固定的滚屏按钮也不错。 今天提供的滚屏代码与HotNews pro主题集成的滚屏按钮类似，只不过是固定在屏幕的边缘并具有鼠标悬停效果，下面以Wordpress默认主题Twenty Ten为例，开始折腾。 打开Twenty Ten主题的header.php模版文件，把以下代码 &#60;div id="scroll"&#62; &#60;a class="scroll_t" title="Top" href="#header"&#62;&#60;/a&#62; &#60;?php if(is_single() &#124;&#124; is_page()) { ?&#62;&#60;a class="scroll_c" title="Comments" href="#comments"&#62;&#60;/a&#62;&#60;?php } ?&#62; &#60;a class="scroll_b" title="Bottom" href="#footer"&#62;&#60;/a&#62; &#60;/div&#62; 添加到这句后面 &#60;div id="wrapper" class="hfeed"&#62; 也可添加到footer.php中。 再把下面的样式添加到style.css的最后面： /** 滚屏 **/ #scroll { position:fixed; top:40%; rightright:0; width:24px; _position:absolute; _top:expression(eval(document.documentElement.scrollTop + document.documentElement.clientHeight * 0.4)); } #scroll a { display:block; float:rightright; width:24px; height:24px; background:#fff url(images/scroll.gif) no-repeat; } #scroll a:hover { background:#fff url(images/scroll.gif) no-repeat; } #scroll a.scroll_t:hover { background-position:-24px [...]]]></description>
			<content:encoded><![CDATA[<p>似乎很多人都喜欢弄一个固定的滚屏按钮，这个小功能可以方便读者阅读。其实我们使用的操作系统早已提供了这一功能，那就鼠标中键（滚轮），使用起来远比这个按钮方便，不过鼠标中键貌似都不是很抗用，另外，也为点缀一下博客，弄个固定的滚屏按钮也不错。</p>
<p>今天提供的滚屏代码与HotNews pro主题集成的滚屏按钮类似，只不过是固定在屏幕的边缘并具有鼠标悬停效果，下面以Wordpress默认主题Twenty Ten为例，开始折腾。</p>
<p>打开Twenty Ten主题的header.php模版文件，把以下代码</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;div id=</span><span class="string">"scroll"</span><span>&gt; </span></span></li>
<li><span> &lt;a </span><span class="keyword">class</span><span>=</span><span class="string">"scroll_t"</span><span> title=</span><span class="string">"Top"</span><span> href=</span><span class="string">"#header"</span><span>&gt;&lt;/a&gt; </span></li>
<li class="alt"><span> &lt;?php </span><span class="keyword">if</span><span>(is_single() || is_page()) { ?&gt;&lt;a </span><span class="keyword">class</span><span>=</span><span class="string">"scroll_c"</span><span> title=</span><span class="string">"Comments"</span><span> href=</span><span class="string">"#comments"</span><span>&gt;&lt;/a&gt;&lt;?php } ?&gt; </span></li>
<li><span> &lt;a </span><span class="keyword">class</span><span>=</span><span class="string">"scroll_b"</span><span> title=</span><span class="string">"Bottom"</span><span> href=</span><span class="string">"#footer"</span><span>&gt;&lt;/a&gt; </span></li>
<li class="alt"><span>&lt;/div&gt; </span></li>
</ol>
</div>
<p>添加到这句后面</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;div id=</span><span class="string">"wrapper"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"hfeed"</span><span>&gt; </span></span></li>
</ol>
</div>
<p>也可添加到footer.php中。</p>
<p>再把下面的样式添加到style.css的最后面：</p>
<div class="dp-highlighter">
<ol class="dp-css">
<li class="alt"><span><span class="comment">/** 滚屏 **/</span><span> </span></span></li>
<li><span> </span><span class="colors">#scroll</span><span> { </span></li>
<li class="alt"><span> </span><span class="keyword">position</span><span>:</span><span class="string">fixed</span><span>; </span></li>
<li><span> </span><span class="string">top</span><span>:40%; </span></li>
<li class="alt"><span> </span><span class="keyword">right</span><span class="string">right</span><span>:0; </span></li>
<li><span> </span><span class="keyword">width</span><span>:</span><span class="string">24px</span><span>; </span></li>
<li class="alt"><span> </span></li>
<li><span> _position:</span><span class="string">absolute</span><span>; </span></li>
<li class="alt"><span> _top:expression(eval(document.documentElement.scrollTop + document.documentElement.clientHeight * 0.4)); </span></li>
<li><span> } </span></li>
<li class="alt"><span class="colors">#scroll</span><span> a { </span></li>
<li><span> </span><span class="keyword">display</span><span>:</span><span class="string">block</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">float</span><span>:</span><span class="keyword">right</span><span class="string">right</span><span>; </span></li>
<li><span> </span><span class="keyword">width</span><span>:</span><span class="string">24px</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">height</span><span>:</span><span class="string">24px</span><span>; </span></li>
<li><span> </span><span class="keyword">background</span><span>:</span><span class="colors">#fff</span><span> </span><span class="string">url</span><span>(images/</span><span class="string">scroll</span><span>.gif) </span><span class="string">no-repeat</span><span>; </span></li>
<li class="alt"><span> } </span></li>
<li><span class="colors">#scroll</span><span> a:hover { </span></li>
<li class="alt"><span> </span><span class="keyword">background</span><span>:</span><span class="colors">#fff</span><span> </span><span class="string">url</span><span>(images/</span><span class="string">scroll</span><span>.gif) </span><span class="string">no-repeat</span><span>; </span></li>
<li><span> } </span></li>
<li class="alt"><span class="colors">#scroll</span><span> a.scroll_t:hover { </span></li>
<li><span> </span><span class="keyword">background-position</span><span>:-</span><span class="string">24px</span><span> 0; </span></li>
<li class="alt"><span> } </span></li>
<li><span class="colors">#scroll</span><span> a.scroll_c { </span></li>
<li class="alt"><span> </span><span class="keyword">background-position</span><span>:0 -</span><span class="string">24px</span><span>; </span></li>
<li><span> } </span></li>
<li class="alt"><span class="colors">#scroll</span><span> a.scroll_c:hover { </span></li>
<li><span> </span><span class="keyword">background-position</span><span>:-</span><span class="string">24px</span><span> -</span><span class="string">24px</span><span>; </span></li>
<li class="alt"><span> } </span></li>
<li><span class="colors">#scroll</span><span> a.scroll_b { </span></li>
<li class="alt"><span> </span><span class="keyword">background-position</span><span>:0 -</span><span class="string">48px</span><span>; </span></li>
<li><span> } </span></li>
<li class="alt"><span class="colors">#scroll</span><span> a.scroll_b:hover { </span></li>
<li><span> </span><span class="keyword">background-position</span><span>:-</span><span class="string">24px</span><span> -</span><span class="string">48px</span><span>; </span></li>
<li class="alt"><span> } </span></li>
<li><span>html body {</span><span class="keyword">background-image</span><span>:</span><span class="string">url</span><span>(about:blank);</span><span class="keyword">background-attachment</span><span>:</span><span class="string">fixed</span><span>;}</span><span class="comment">/** 防止IE6抖动 **/</span><span> </span></li>
</ol>
</div>
<p>最后把下面的图片扔到主题的images文件夹中，刷新页面试试按钮效果。</p>
<p><a href="http://zmingcx.com/wp-content/uploads/2011/05/scroll.gif"><img class="alignnone size-full wp-image-4352" title="scroll" src="http://zmingcx.com/wp-content/uploads/2011/05/scroll.gif" alt="" width="48" height="72" /></a></p>
<p>可能你会发现滚屏有些生硬，对了还缺少JS滑动特效。</p>
<p>下载：<a title="网盘下载jquery.min" href="http://dl.dbank.com/c0ca7sbway" target="_blank">jquery.min.js</a>，放到Twenty Ten主题根目录中，并在header.php模版：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;link rel=</span><span class="string">"pingback"</span><span> href=</span><span class="string">"&lt;?php bloginfo( 'pingback_url' ); ?&gt;"</span><span> /&gt; </span></span></li>
</ol>
</div>
<p>下面添加：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span> src=</span><span class="string">"&lt;?php bloginfo('stylesheet_directory'); ?&gt;/jquery.min.js"</span><span> &gt;&lt;/script&gt; </span></span></li>
<li><span>&lt;script type=</span><span class="string">"text/javascript"</span><span>&gt; </span></li>
<li class="alt"><span>jQuery(document).ready(</span><span class="keyword">function</span><span>($){ </span></li>
<li><span>$('.scroll_t').click(</span><span class="keyword">function</span><span>(){$('html,body').animate({scrollTop: '0px'}, 800);}); </span></li>
<li class="alt"><span>$('.scroll_c').click(</span><span class="keyword">function</span><span>(){$('html,body').animate({scrollTop:$('#comments').offset().top}, 800);}); </span></li>
<li><span>$('.scroll_b').click(</span><span class="keyword">function</span><span>(){$('html,body').animate({scrollTop:$('#footer').offset().top}, 800);}); </span></li>
<li class="alt"><span>}); </span></li>
<li><span>&lt;/script&gt; </span></li>
</ol>
</div>
<p>注：如果你的主题已加载了jquery.js，就不用重复加载jquery.min.js了。</p>
<p>最后，再刷新一下页面，这回效果应该出来了。<a title="滚屏演示" href="http://demo.zmingcx.com/" target="_blank"><strong>点些查看效果演示</strong></a></p>
<p><span style="color: #ff0000;">注：如果你的主题标签选择器不是#header、#comments和#footer可以对上面代码作相应的修改。</span></p>
<p>经常看见有的网友也弄了个滚屏按钮，大大的回旋箭头，JS特效晃晃悠悠，严重干扰阅读者的视线。</p>
<p>顺便再给大家提供一个双击滚屏代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span>&gt; </span></span></li>
<li><span> </span><span class="keyword">var</span><span> currentpos,timer; </span></li>
<li class="alt"><span> </span><span class="keyword">function</span><span> initialize() </span></li>
<li><span>{ </span></li>
<li class="alt"><span>timer=setInterval(</span><span class="string">"scrollwindow()"</span><span>,10); </span></li>
<li><span>} </span></li>
<li class="alt"><span class="keyword">function</span><span> sc(){ </span></li>
<li><span>clearInterval(timer); </span></li>
<li class="alt"><span>} </span></li>
<li><span class="keyword">function</span><span> scrollwindow() </span></li>
<li class="alt"><span>{ </span></li>
<li><span>window.scrollBy(0,1); </span></li>
<li class="alt"><span>} </span></li>
<li><span>document.onmousedown=sc </span></li>
<li class="alt"><span>document.ondblclick=initialize </span></li>
<li><span>&lt;/script&gt; </span></li>
</ol>
</div>
<p>这段JS代码，可实现双击鼠标自动滚屏，单击停止，效果可以在此页面试试。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/wordpress-template-for-the-scroll-button-to-add-a-fixed.html/feed</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>给你的博客添加一个简易的计数器</title>
		<link>http://zmingcx.com/add-your-blog-to-a-simple-counter.html</link>
		<comments>http://zmingcx.com/add-your-blog-to-a-simple-counter.html#comments</comments>
		<pubDate>Thu, 28 Apr 2011 04:52:15 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4330</guid>
		<description><![CDATA[是否经常会看到一些网站有类似“您是第位访客”字样的计数统计，这里教你把这个计数器添加到你的Wordpress主题中。网上有很多第三方的计数器代码，可能影响页面加载速度，完全没必要，一段简单的PHP代码就可搞定。这个计数器与网站流量统计有区别，记录的是刷新次数，并不是真实记录访问者的IP，主要是满足一下大家的虚荣心，哈！ 将下面的代码添加到你的主题模版适当位置，比如添加到footer.php中 &#60;?php $counterFile = "counter.txt"; function displayCounter($counterFile) { $fp = fopen($counterFile,"rw"); $num = fgets($fp,5); $num += 1; print "您是第 "."$num"." 位访客"; exec( "rm -rf $counterFile"); exec( "echo $num &#62; $counterFile"); } if (!file_exists($counterFile)) { exec( "echo 0 &#62; $counterFile"); } displayCounter($counterFile); ?&#62; 添加上述代码后，在第一次浏览页面时，PHP程序会首先寻找counter.txt 文件是否存在，若不存在，则在你的Wordpress程序根目录建立一个 counter.txt 文件，然后将 0 写入文件。读取 counter.txt 文件的内容，再将文本中的数字存入 $num 变数中，并将数字显示在代码添加的位置。 效果可以看我博客的页脚，这个计数统计数字只能用飙升来形容了！]]></description>
			<content:encoded><![CDATA[<p>是否经常会看到一些网站有类似“您是第位访客”字样的计数统计，这里教你把这个计数器添加到你的Wordpress主题中。网上有很多第三方的计数器代码，可能影响页面加载速度，完全没必要，一段简单的PHP代码就可搞定。这个计数器与网站流量统计有区别，记录的是刷新次数，并不是真实记录访问者的IP，主要是满足一下大家的虚荣心，哈！</p>
<p>将下面的代码添加到你的主题模版适当位置，比如添加到footer.php中</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php </span></span></li>
<li><span> </span><span class="vars">$counterFile</span><span> = </span><span class="string">"counter.txt"</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">function</span><span> displayCounter(</span><span class="vars">$counterFile</span><span>) { </span></li>
<li><span> </span><span class="vars">$fp</span><span> = </span><span class="func">fopen</span><span>(</span><span class="vars">$counterFile</span><span>,</span><span class="string">"rw"</span><span>); </span></li>
<li class="alt"><span> </span><span class="vars">$num</span><span> = </span><span class="func">fgets</span><span>(</span><span class="vars">$fp</span><span>,5); </span></li>
<li><span> </span><span class="vars">$num</span><span> += 1; </span></li>
<li class="alt"><span> print </span><span class="string">"您是第 "</span><span>.</span><span class="string">"$num"</span><span>.</span><span class="string">" 位访客"</span><span>; </span></li>
<li><span> </span><span class="func">exec</span><span>( </span><span class="string">"rm -rf $counterFile"</span><span>); </span></li>
<li class="alt"><span> </span><span class="func">exec</span><span>( </span><span class="string">"echo $num &gt; $counterFile"</span><span>); </span></li>
<li><span> } </span></li>
<li class="alt"><span> </span><span class="keyword">if</span><span> (!</span><span class="func">file_exists</span><span>(</span><span class="vars">$counterFile</span><span>)) { </span></li>
<li><span> </span><span class="func">exec</span><span>( </span><span class="string">"echo 0 &gt; $counterFile"</span><span>); </span></li>
<li class="alt"><span> } </span></li>
<li><span> displayCounter(</span><span class="vars">$counterFile</span><span>); </span></li>
<li class="alt"><span>?&gt; </span></li>
</ol>
</div>
<p>添加上述代码后，在第一次浏览页面时，PHP程序会首先寻找counter.txt 文件是否存在，若不存在，则在你的Wordpress程序根目录建立一个 counter.txt 文件，然后将 0 写入文件。读取 counter.txt 文件的内容，再将文本中的数字存入 $num 变数中，并将数字显示在代码添加的位置。</p>
<p>效果可以看我博客的页脚，这个计数统计数字只能用飙升来形容了！</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/add-your-blog-to-a-simple-counter.html/feed</wfw:commentRss>
		<slash:comments>101</slash:comments>
		</item>
		<item>
		<title>HotNews pro2.4联系表单模版</title>
		<link>http://zmingcx.com/hotnews-pro-contact-template.html</link>
		<comments>http://zmingcx.com/hotnews-pro-contact-template.html#comments</comments>
		<pubDate>Sun, 27 Mar 2011 02:18:17 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[HotNews主题]]></category>
		<category><![CDATA[HotNews Pro]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>
		<category><![CDATA[原创主题]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4286</guid>
		<description><![CDATA[　　联系表单模版，也就是集成一个可以在博客页面直接发送电子邮件与博主进行电邮联系，而不需要登录邮箱，方便快捷。
　　使用方法：1.上传下载的模版文件；2.加载必需的JS文件；3.新建一个页面，名称任意，比如：联系我，右下模板属性→模版→选择“联系方式”模版，发表即可；4.可以通过WP菜单功能将新建的联系表单页面加到导航菜单中，发个电邮试试吧。
　　另外，还有一个更简易的联系表单模版，功能较单一，虽然添加...]]></description>
			<content:encoded><![CDATA[<p>联系表单模版，也就是集成一个可以在博客页面直接发送电子邮件与博主进行电邮联系，而不需要登录邮箱，方便快捷。</p>
<p><strong>联系表单模板补丁使用方法：</strong></p>
<p>1.解压下载的压缩包，分别将：</p>
<p><span style="color: #800000;">contact.php</span> 上传到主题根目录</p>
<p><span style="color: #800000;">form.php</span> 上传到主题includes目录（<span style="color: #800000;">注：上传前需打开该模版文件，将第一行的电邮地址改为自己的</span>）</p>
<p><span style="color: #800000;">muscript.js</span> 上传到主题js目录</p>
<p>2.打开header.php在〈/head〉上面添加：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span> src=</span><span class="string">"&lt;?php bloginfo('template_directory'); ?&gt;/js/muscript.js"</span><span>&gt;&lt;/script&gt; </span></span></li>
</ol>
</div>
<p>3.新建一个页面，名称任意，比如：联系我，右下模板属性→模版→选择“联系方式”模版，发表即可。</p>
<p>4.可以通过WP菜单功能将新建的联系表单页面加到导航菜单中，发个电邮试试吧。</p>
<table border="0" width="312" align="center">
<tbody>
<tr>
<td width="120" height="25">
<div id="demo"><a href="http://zmingcx.com/contact">效果演示</a></div>
</td>
<td width="50"> </td>
<td width="120" height="25">
<div id="download"><a href="http://zmingcx.com/?dl_id=40">模版下载</a></div>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p>另外，还有一个更简易的联系表单模版，只有一个文件，制作方法参考自下面这篇教程：</p>
<p><a title="How to create a built-in contact form for your WordPress theme" href="http://www.catswhocode.com/blog/how-to-create-a-built-in-contact-form-for-your-wordpress-theme" target="_blank">How to create a built-in contact form for your WordPress theme</a></p>
<p>该教程的翻译：</p>
<p><a title="教你如何给WordPress主题创建内置联系表单" href="http://www.wordpress.la/how-to-create-a-built-in-contact-form-for-your-wordpress-theme.html" target="_blank">教你如何给WordPress主题创建内置联系表单</a></p>
<p>这个简易的联系表单模版，功能较单一，虽然添加表单jQuery验证插件后，功能也不错，但加载的js文件较大，得不偿失，自己选择吧。</p>
<table border="0" width="120" align="center">
<tbody>
<tr>
<td width="120" height="25">
<div id="download"><a href="http://zmingcx.com/?dl_id=41">模版下载</a></div>
</td>
</tr>
</tbody>
</table>
<p>使用方法：直接将contact.php模版文件上传到主题根目录，其它参考上面的第三步。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/hotnews-pro-contact-template.html/feed</wfw:commentRss>
		<slash:comments>125</slash:comments>
		</item>
		<item>
		<title>不同页面显示不同的侧边栏</title>
		<link>http://zmingcx.com/different-display-different-sidebar-page.html</link>
		<comments>http://zmingcx.com/different-display-different-sidebar-page.html#comments</comments>
		<pubDate>Sat, 12 Mar 2011 03:48:59 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[HotNews Pro]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4246</guid>
		<description><![CDATA[你是否想在不同的页面调用显示不同的侧边栏内容，这是一些CMS主题（包括企业站主题）常用的方法，下面我就以HotNews Pro 2.4版为例，教大家实现这一功能。 比如，想让HotNews Pro 2.4版CMS模板侧边内容与正文及分类页面显示不同的内容。 首先，复制一份sidebar.php模版文件，重命名为：sidebar_h.php 之后，打开cms.php，找到： &#60;?php get_sidebar(); ?&#62; 替换为： &#60;?php include('sidebar_h.php'); ?&#62; 下面就可以针对这个sidebar_h.php模版进行个性化修改，让其与sidebar.php模版调用的内容不同. 比如：调整滑动菜单模块顺序，把最新文章与热门文章位置调换一下： 最新文章代码： &#60;li&#62;&#60;a href="#"&#62;最新文章&#60;/a&#62; &#60;div class="clear"&#62;&#60;/div&#62; &#60;ul&#62; &#60;ol id="newarticles"&#62; &#60;?php $myposts = get_posts('numberposts=10&#38;offset=0');foreach($mypostsas$post) :?&#62; &#60;a href="&#60;?php the_permalink(); ?&#62;" rel="bookmark" title="详细阅读 &#60;?php the_title_attribute(); ?&#62;"&#62;&#60;?php echo cut_str($post-&#62;post_title,32); ?&#62;&#60;/a&#62; &#60;?php endforeach; ?&#62; &#60;/ol&#62; &#60;/ul&#62; 热门文章代码： &#60;li&#62;&#60;a href="#"&#62;热门文章&#60;/a&#62; &#60;div class="clear"&#62;&#60;/div&#62; &#60;ul&#62; &#60;ol id="hotarticles"&#62; &#60;?php simple_get_most_viewed(); ?&#62; &#60;/ol&#62; &#60;/ul&#62; 还可以适当增减，sidebar_h.php模版调用的内容。 比如：你在小工具1中调用显示了日历小工具，不准备显示在首页，那就删除： &#60;div class="widget"&#62; &#60;?php if ( !function_exists('dynamic_sidebar') &#124;&#124; !dynamic_sidebar('小工具1') ) : ?&#62; &#60;?php endif; ?&#62; &#60;/div&#62; 不显示分类目录模块，就删除： &#60;?php if (get_option('swt_category_h') == 'Hide') { ?&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>你是否想在不同的页面调用显示不同的侧边栏内容，这是一些CMS主题（包括企业站主题）常用的方法，下面我就以HotNews Pro 2.4版为例，教大家实现这一功能。</p>
<p>比如，想让HotNews Pro 2.4版CMS模板侧边内容与正文及分类页面显示不同的内容。</p>
<p>首先，复制一份sidebar.php模版文件，重命名为：sidebar_h.php</p>
<p>之后，打开cms.php，找到：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php get_sidebar(); ?&gt; </span></span></li>
</ol>
</div>
<p>替换为：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php </span><span class="keyword">include</span><span>('sidebar_h.php'); ?&gt; </span></span></li>
</ol>
</div>
<p>下面就可以针对这个sidebar_h.php模版进行个性化修改，让其与sidebar.php模版调用的内容不同.</p>
<p>比如：调整滑动菜单模块顺序，把最新文章与热门文章位置调换一下：</p>
<p>最新文章代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;li&gt;&lt;a href=</span><span class="string">"#"</span><span>&gt;最新文章&lt;/a&gt; </span></span></li>
<li><span>&lt;div </span><span class="keyword">class</span><span>=</span><span class="string">"clear"</span><span>&gt;&lt;/div&gt; </span></li>
<li class="alt"><span> &lt;ul&gt; </span></li>
<li><span> &lt;ol id=</span><span class="string">"newarticles"</span><span>&gt; </span></li>
<li class="alt"><span> &lt;?php </span><span class="vars">$myposts</span><span> = get_posts('numberposts=10&amp;offset=0');</span><span class="keyword">foreach</span><span>(</span><span class="vars">$myposts</span><span class="keyword">as</span><span class="vars">$post</span><span>) :?&gt; </span></li>
<li><span> &lt;a href=</span><span class="string">"&lt;?php the_permalink(); ?&gt;"</span><span> rel=</span><span class="string">"bookmark"</span><span> title=</span><span class="string">"详细阅读 &lt;?php the_title_attribute(); ?&gt;"</span><span>&gt;&lt;?php </span><span class="func">echo</span><span> cut_str(</span><span class="vars">$post</span><span>-&gt;post_title,32); ?&gt;&lt;/a&gt; </span></li>
<li class="alt"><span> &lt;?php </span><span class="keyword">endforeach</span><span>; ?&gt; </span></li>
<li><span> &lt;/ol&gt; </span></li>
<li class="alt"><span> &lt;/ul&gt; </span></li>
</ol>
</div>
<p>热门文章代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;li&gt;&lt;a href=</span><span class="string">"#"</span><span>&gt;热门文章&lt;/a&gt; </span></span></li>
<li><span>&lt;div </span><span class="keyword">class</span><span>=</span><span class="string">"clear"</span><span>&gt;&lt;/div&gt; </span></li>
<li class="alt"><span> &lt;ul&gt; </span></li>
<li><span> &lt;ol id=</span><span class="string">"hotarticles"</span><span>&gt; </span></li>
<li class="alt"><span> &lt;?php simple_get_most_viewed(); ?&gt; </span></li>
<li><span> &lt;/ol&gt; </span></li>
<li class="alt"><span> &lt;/ul&gt; </span></li>
</ol>
</div>
<p>还可以适当增减，sidebar_h.php模版调用的内容。</p>
<p>比如：你在小工具1中调用显示了日历小工具，不准备显示在首页，那就删除：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;div </span><span class="keyword">class</span><span>=</span><span class="string">"widget"</span><span>&gt; </span></span></li>
<li><span> &lt;?php </span><span class="keyword">if</span><span> ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('小工具1') ) : ?&gt; </span></li>
<li class="alt"><span> &lt;?php </span><span class="keyword">endif</span><span>; ?&gt; </span></li>
<li><span>&lt;/div&gt; </span></li>
</ol>
</div>
<p>不显示分类目录模块，就删除：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php </span><span class="keyword">if</span><span> (get_option('swt_category_h') == 'Hide') { ?&gt; </span></span></li>
<li><span>&lt;?php { </span><span class="func">echo</span><span class="string">''</span><span>; } ?&gt; </span></li>
<li class="alt"><span>&lt;?php } </span><span class="keyword">else</span><span> { </span><span class="keyword">include</span><span>(TEMPLATEPATH . '/includes/category_h.php'); } ?&gt; </span></li>
</ol>
</div>
<p>以此类推，其它模块也可以增减或调整位置，具体各模块所调用的内容请参阅：</p>
<p><a title="热点新闻2.4版主题模版文件说明" href="http://zmingcx.com/hot-news-topic-template-2-4.html" target="_blank">热点新闻2.4版主题模版文件说明</a></p>
<p>同理，头部header.php、页脚footer.php、分类archive.php、正文single.php模版，也可以如此改造，HotNews Pro 2.4版部分页面模版已调用不同的header.php及footer.php。</p>
<p>当然还可以通过添加判断函数实现：</p>
<div class="dp-highlighter">
<ol class="dp-j">
<li class="alt"><span><span>&lt;?php </span><span class="keyword">if</span><span> (is_single() || is_page() || is_archive() || is_search()) { ?&gt;   </span></span></li>
<li><span>&lt;?php } ?&gt;  </span></li>
</ol>
</div>
<p>不过个人更喜欢用上面的方法</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/different-display-different-sidebar-page.html/feed</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>为WordPress主题添加顶部自定义图片功能</title>
		<link>http://zmingcx.com/the-theme-for-the-wordpress-custom-image-function-to-add-the-top.html</link>
		<comments>http://zmingcx.com/the-theme-for-the-wordpress-custom-image-function-to-add-the-top.html#comments</comments>
		<pubDate>Wed, 09 Mar 2011 16:35:33 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[Wordpress主题]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4281</guid>
		<description><![CDATA[在WordPress主题中，头部（header）的自定义一般来说就是能让用户在后台能够自行更改主题默认显示的图片或者标题的大小颜色这些功能。而为一个主题添加上这些后台选项并不难，在WordPress较新的版本中已经为我们定义好了模块（add_custom_image_header），我们只需要对主题的一些文件简单修改即可。 这里我以自己制作的免费主题Js O4w 为例简单说一下。首先我会建立一个新的文件并命名为banner.php，名字大家随便就可以了，把它放到主题的目录中去。而我放置的路径为 inc/banner.php。文件的代码简单如下： &#60;?php //* HEAD define('HEADER_IMAGE', '%s/images/banner-white.jpg'); // %s is theme dir uri define('HEADER_IMAGE_WIDTH', 930); define('HEADER_IMAGE_HEIGHT', 200); define('NO_HEADER_TEXT', true ); define('HEADER_TEXTCOLOR', ''); function admin_header_style() { ?&#62; &#60;style type="text/css"&#62; #headimg{ background: #fff url(&#60;?php header_image(); ?&#62;) no-repeat 0 0; color: #333; float: left; margin: 0; padding: 0; height: &#60;?php echo HEADER_IMAGE_HEIGHT; ?&#62;px; width: &#60;?php echo HEADER_IMAGE_WIDTH; ?&#62;px; clear:both; } #headimg h1,#desc { display: none; } .wrap { clear:both; } #uploadForm { margin:0!important; } &#60;/style&#62; &#60;?php } function header_style() { ?&#62; &#60;style type="text/css"&#62; #banner{ background: #fff url(&#60;?php header_image(); ?&#62;) no-repeat 0 0; color: #333; float: left; margin: 0; padding: 0; height: &#60;?php echo HEADER_IMAGE_HEIGHT; ?&#62;px; width: &#60;?php [...]]]></description>
			<content:encoded><![CDATA[<p>在WordPress主题中，头部（header）的自定义一般来说就是能让用户在后台能够自行更改主题默认显示的图片或者标题的大小颜色这些功能。而为一个主题添加上这些后台选项并不难，在WordPress较新的版本中已经为我们定义好了模块（add_custom_image_header），我们只需要对主题的一些文件简单修改即可。</p>
<p>这里我以自己制作的免费主题Js O4w 为例简单说一下。首先我会建立一个新的文件并命名为banner.php，名字大家随便就可以了，把它放到主题的目录中去。而我放置的路径为 inc/banner.php。文件的代码简单如下：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;?php </span></span></li>
<li><span> </span><span class="comment">//* HEAD </span><span> </span></li>
<li class="alt"><span>define('HEADER_IMAGE', '%s/images/banner-white.jpg'); </span><span class="comment">// %s is theme dir uri </span><span> </span></li>
<li><span>define('HEADER_IMAGE_WIDTH', 930); </span></li>
<li class="alt"><span>define('HEADER_IMAGE_HEIGHT', 200); </span></li>
<li><span>define('NO_HEADER_TEXT', true ); </span></li>
<li class="alt"><span>define('HEADER_TEXTCOLOR', </span><span class="string">''</span><span>); </span></li>
<li><span class="keyword">function</span><span> admin_header_style() { ?&gt; </span></li>
<li class="alt"><span>&lt;style type=</span><span class="string">"text/css"</span><span>&gt; </span></li>
<li><span>#headimg{ </span></li>
<li class="alt"><span>background: #fff url(&lt;?php header_image(); ?&gt;) no-repeat 0 0; </span></li>
<li><span>color: #333; </span></li>
<li class="alt"><span>float: left; </span></li>
<li><span>margin: 0; </span></li>
<li class="alt"><span>padding: 0; </span></li>
<li><span>height: &lt;?php </span><span class="func">echo</span><span> HEADER_IMAGE_HEIGHT; ?&gt;px; </span></li>
<li class="alt"><span>width: &lt;?php </span><span class="func">echo</span><span> HEADER_IMAGE_WIDTH; ?&gt;px; </span></li>
<li><span>clear:both; </span></li>
<li class="alt"><span>} </span></li>
<li><span>#headimg h1,#desc { </span></li>
<li class="alt"><span>display: none; </span></li>
<li><span>} </span></li>
<li class="alt"><span>.wrap { </span></li>
<li><span>clear:both; </span></li>
<li class="alt"><span>} </span></li>
<li><span>#uploadForm { </span></li>
<li class="alt"><span>margin:0!important; </span></li>
<li><span>} </span></li>
<li class="alt"><span>&lt;/style&gt; </span></li>
<li><span>&lt;?php } </span></li>
<li class="alt"><span class="keyword">function</span><span> header_style() { ?&gt; </span></li>
<li><span>&lt;style type=</span><span class="string">"text/css"</span><span>&gt; </span></li>
<li class="alt"><span>#banner{ </span></li>
<li><span>background: #fff url(&lt;?php header_image(); ?&gt;) no-repeat 0 0; </span></li>
<li class="alt"><span>color: #333; </span></li>
<li><span>float: left; </span></li>
<li class="alt"><span>margin: 0; </span></li>
<li><span>padding: 0; </span></li>
<li class="alt"><span>height: &lt;?php </span><span class="func">echo</span><span> HEADER_IMAGE_HEIGHT; ?&gt;px; </span></li>
<li><span>width: &lt;?php </span><span class="func">echo</span><span> HEADER_IMAGE_WIDTH; ?&gt;px; </span></li>
<li class="alt"><span>} </span></li>
<li><span>&lt;/style&gt; </span></li>
<li class="alt"><span>&lt;?php } </span></li>
<li><span class="keyword">if</span><span> ( function_exists('add_custom_image_header') ) { </span></li>
<li class="alt"><span>add_custom_image_header('header_style', 'admin_header_style'); </span></li>
<li><span>} </span></li>
<li class="alt"><span>?&gt; </span></li>
</ol>
</div>
<p>其中，</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>define('HEADER_IMAGE', '%s/images/banner-white.jpg'); </span><span class="comment">// %s is theme dir uri</span><span> </span></span></li>
</ol>
</div>
<p>这一句的路径是默认主题的图片路径。</p>
<p>而</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>define('HEADER_IMAGE_WIDTH', 930); </span></span></li>
<li><span>define('HEADER_IMAGE_HEIGHT', 200); </span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>上面的两句是确认主题头部中使用图片的长度和宽度值，这个根据主题的不同而不同。设定这个数值一来是为了让图片符合主题的显示效果，另一个是用来在更换图标时候，对较大图片进行裁剪功能时候的尺寸限制。</p>
<p>接着的两句</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>define('NO_HEADER_TEXT', true ); </span></span></li>
<li><span>define('HEADER_TEXTCOLOR', </span><span class="string">''</span><span>); </span></li>
</ol>
</div>
<p>这里需要说明一下，在我使用的主题中，图片上是没有网站标题和描述显示的，所以我是需要这样的写。如果，在你的主题中，网站标题和描述是在图标内显示的，而你又需要在后台为其添加样式定义的话，可以改成如下：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>define('HEADER_TEXTCOLOR', 'ffffff'); </span></span></li>
</ol>
</div>
<p>其中的ffffff是表示默认显示字样的颜色值，根据主题设计不同而不同。</p>
<p>然后我们需要为WordPress自带的这个模块定义两个样式，分别是在后台选项中头部的显示样式</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">function</span><span> admin_header_style() </span></span></li>
</ol>
</div>
<p>和主题前台中头部的显示样式</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">function</span><span> header_style() </span></span></li>
</ol>
</div>
<p>对于这两个样式的定义，大家在最文章开始的代码中能看到，当然也是需要根据主题不同而不同的了。对于我的情况，显示图标的区块定义是#banner 。另外，因为我们已经在这个文件中定义了主题前台的头部显示样式，我们就不再需要在传统的style.css文件中重复定义它了。</p>
<p>基本的设置代码就是如上，重点需要设置的还是上面提及到的两个样式而已，其它的都好理解。最后我们需要把这一个文件包括在主题的function.php文件中，在其内添加一句：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">include_once</span><span>(TEMPLATEPATH . '/inc/banner.php'); </span></span></li>
</ol>
</div>
<p>上面的路径什么的大家请根据自己的设置自行对上。这里补充要说的是，可能我这样多做一个文件有点多余，其实我们是可以直接把最初的一整段代码直接放入到主题的function.php文件中去的。但有一个情况，就是当你的function.php文件中已经有关于后台选项的代码存在了，那么为了避免不必要的出错修正，可以按我的方法加入，这样会方便点。</p>
<p>如上面的更改一切顺利，我们就能在后台的选项中看到自定义头部的选项了，因为这个模块是WordPress自带的，所以里面的翻译也是同步了。</p>
<p><a href="http://lh5.ggpht.com/_i4s3JEV_7rM/S44TqZ4lCDI/AAAAAAAAJxw/fKfFz_GOHzw/custom-header.jpg?imgmax=800" target="_blank"><img class="aligncenter" title="WordPress主题中头部图片自定义功能的实现" src="http://lh5.ggpht.com/_i4s3JEV_7rM/S44TqZ4lCDI/AAAAAAAAJxw/fKfFz_GOHzw/custom-header.jpg?imgmax=512" alt=" WordPress主题中头部图片自定义功能的实现" width="512" height="238" /></a></p>
<p>点击上传按钮，选择自己喜欢的图片，如果图片尺寸大于我们的设定值，我们也可以直接对上传的图片进行裁剪，很方便的。如图，</p>
<p><a href="http://lh4.ggpht.com/_i4s3JEV_7rM/S44Tq8Amk9I/AAAAAAAAJx0/vmjHzmN0GTw/custom-header-1.jpg?imgmax=800" target="_blank"><img class="aligncenter" title="WordPress主题中头部图片自定义功能的实现" src="http://lh4.ggpht.com/_i4s3JEV_7rM/S44Tq8Amk9I/AAAAAAAAJx0/vmjHzmN0GTw/custom-header-1.jpg?imgmax=512" alt=" WordPress主题中头部图片自定义功能的实现" width="512" height="224" /></a></p>
<p>指定裁剪位置后，点击“裁切头部”，OK, ALL DONE。（另外，当指定新图片后，后台是会多出一个恢复到默认图片的选项，我这里就不多说了。）</p>
<p>P.S. 目前这个功能在<a title="Js O4w" href="http://wordpress.org/extend/themes/js-o4w" target="_blank">Js O4w的最新版1.1.5</a>中已经内置，使用该主题的朋友直接在后台点升级则可。这样的话，大家想更换一下那个圈圈图片的话现在可以了，就象下图一样。希望这个功能能方便地让大家把主题弄得个性一点，尽管我一直觉得那个圈圈图案很好看，呵呵。</p>
<p><a href="http://lh5.ggpht.com/_i4s3JEV_7rM/S44TraDtlYI/AAAAAAAAJx4/Oi3aMhEA_9c/custom-header-2.jpg?imgmax=800" target="_blank"><img class="aligncenter" title="WordPress主题中头部图片自定义功能的实现" src="http://lh5.ggpht.com/_i4s3JEV_7rM/S44TraDtlYI/AAAAAAAAJx4/Oi3aMhEA_9c/custom-header-2.jpg?imgmax=512" alt=" WordPress主题中头部图片自定义功能的实现" width="512" height="206" /></a></p>
<p>原文：<a title="WordPress主题中头部图片自定义功能的实现" href="http://www.saywp.com/wordpress/wordpress-custom-header-function.html" target="_blank">WordPress主题中头部图片自定义功能的实现</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/the-theme-for-the-wordpress-custom-image-function-to-add-the-top.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>为导航多级菜单增加淡入动画特效</title>
		<link>http://zmingcx.com/increase-for-the-navigation-menu-fade-animation-effects.html</link>
		<comments>http://zmingcx.com/increase-for-the-navigation-menu-fade-animation-effects.html#comments</comments>
		<pubDate>Tue, 08 Mar 2011 15:15:39 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[HotNews Pro]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4188</guid>
		<description><![CDATA[　　是否看见有些主题的导航下拉菜单有一个淡入的缓冲动画，效果是不是很炫，愿意折腾的童鞋，就随我一起把它加到HotNews pro主题2.4版中。同样要用到jquery.js。
　　如果，你使用的不是HotNews pro 2.4版主题，并且主题已加载jquery.js，可参考上面的方法.
　　只需打开：Superfish v1.4.8.js，修改最后的“#topnav ul”为你的导航菜单ID选择器即可，比如：默认WP主题Twenty Ten是：.menu-header ul。]]></description>
			<content:encoded><![CDATA[<p>是否看见有些主题的导航下拉菜单有一个淡入的缓冲动画，效果是不是很炫，愿意折腾的童鞋，就随我一起把它加到<a title="HotNews pro主题2.4正式版" href="http://zmingcx.com/hotnews-pro-theme-24.html" target="_blank">HotNews pro主题2.4版</a>中。同样要用到jquery.js。</p>
<p>首先下载Superfish v1.4.8.js：</p>
<table border="0" width="120" align="center">
<tbody>
<tr>
<td width="120" height="25">
<div id="download"><a href="http://zmingcx.com/?dl_id=37">文件下载</a></div>
</td>
</tr>
</tbody>
</table>
<p>上传到HotNews pro主题js目录中。</p>
<p>分别打开：header.php、header_a.php、header_b.php、header_h.php模版文件，在：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span> src=</span><span class="string">"&lt;?php bloginfo('template_directory'); ?&gt;/js/custom.js"</span><span>&gt;&lt;/script&gt; </span></span></li>
</ol>
</div>
<p>下面加入：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;script type=</span><span class="string">"text/javascript"</span><span> src=</span><span class="string">"&lt;?php bloginfo('template_directory'); ?&gt;/js/superfish.js"</span><span>&gt;&lt;/script&gt; </span></span></li>
</ol>
</div>
<p>然后，找到并删除：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>sfEls[i].onmouseout=</span><span class="keyword">function</span><span>() { </span></span></li>
<li><span> </span><span class="keyword">this</span><span>.className=</span><span class="keyword">this</span><span>.className.replace(</span><span class="keyword">new</span><span> RegExp(</span><span class="string">" sfhover\\b"</span><span>), </span><span class="string">""</span><span>); </span></li>
<li class="alt"><span>} </span></li>
</ol>
</div>
<p><strong><span style="color: #800000;">注：共有两处，如果不删除在IE6下会有BUG。</span></strong></p>
<p>最后，在style.css中加入：</p>
<div class="dp-highlighter">
<ol class="dp-css">
<li class="alt"><span><span class="colors">#topnav</span><span> .sf-</span><span class="string">sub</span><span>-indicator { </span></span></li>
<li><span> </span><span class="keyword">display</span><span>: </span><span class="string">none</span><span>; </span></li>
<li class="alt"><span> } </span></li>
</ol>
</div>
<p><strong><span style="color: #800000;">注：如果不加入这句会在有二级菜单项目名称后面显示“»”。</span></strong></p>
<p>完成，具体效果看我的导航菜单。</p>
<p>如果，你使用的不是HotNews pro 2.4版主题，并且主题已加载jquery.js，可参考上面的方法.</p>
<p>只需打开：Superfish v1.4.8.js，修改最后的“<span style="color: #800000;">#topnav ul</span>”为你的导航菜单ID选择器即可，比如：默认WP主题Twenty Ten是：.menu-header ul。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/increase-for-the-navigation-menu-fade-animation-effects.html/feed</wfw:commentRss>
		<slash:comments>62</slash:comments>
		</item>
		<item>
		<title>为文章标题链接添加正在加载中提示</title>
		<link>http://zmingcx.com/add-the-link-for-the-title-of-the-article-prompted-loading.html</link>
		<comments>http://zmingcx.com/add-the-link-for-the-title-of-the-article-prompted-loading.html#comments</comments>
		<pubDate>Thu, 17 Feb 2011 13:08:36 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[jQuery教程]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4046</guid>
		<description><![CDATA[　　点击文章标题链接会提示正在加载中...看上去很好玩是不是。具体效果可以点击我博客日志标题链接。下面就教大家把这个特效加到你的主题模板中。
　　这个特效同样离不开jQuery。首先打开你所使用主题的header.php模板文件，在＜/head＞标签前添加代码。
　　其中"h2 a"是主题文章标题的标签选择器，可根据具体主题模板进行修改，如果改为：“a”,可实现全部链接都添加这一特效。后面的数字2011是这一特效的显示时间......]]></description>
			<content:encoded><![CDATA[<p>点击文章标题链接会提示正在加载中...看上去很好玩是不是。具体效果可以点击我博客日志标题链接。下面就教大家把这个特效加到你的主题模板中。</p>
<p>这个特效同样离不开JQuery。</p>
<p>首先打开你所使用主题的header.php模板文件，在＜/head＞标签前添加：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt">1. &lt;script type=<span class="string">"text/javascript"</span> src=<span class="string">"http://jqueryjs.googlecode.com/files/jquery-1.2.3.min.js"</span>&gt;&lt;/script&gt;</li>
</ol>
</div>
<p>如果你的主题已加载了JQuery，这步就免了。</p>
<p>再把下面这段代码同样加到＜/head＞标签前</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt">&lt;script type=<span class="string">"text/javascript"</span>&gt;</li>
<li> $(document).ready(<span class="keyword">function</span>() {</li>
<li class="alt"> $('h2 a').click(<span class="keyword">function</span>(){</li>
<li> myloadoriginal = <span class="keyword">this</span>.text;</li>
<li class="alt"> $(<span class="keyword">this</span>).text('正在给力加载中 ...');</li>
<li> <span class="keyword">var</span> myload = <span class="keyword">this</span>;</li>
<li class="alt"> setTimeout(<span class="keyword">function</span>() { $(myload).text(myloadoriginal); }, 2011);</li>
<li> });</li>
<li class="alt"> });</li>
<li> &lt;/script&gt;</li>
</ol>
</div>
<p>其中"h2 a"是主题文章标题的标签选择器，可根据具体主题模板进行修改，如果改为：“a”,可实现全部链接都添加这一特效。后面的数字2011是这一特效的显示时间（毫秒），可酌情修改。</p>
<p><strong>HotNews pro2.4版添加方法</strong></p>
<p>HotNews pro2.4版加载了多个header.php文件，所以直接写到已加载的js文件中更方便一些，直接把下面代码加到custom.js文件的最后面：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span class="comment">//加载中提示</span></li>
<li> $(document).ready(<span class="keyword">function</span>(){</li>
<li class="alt"> $('h3 a,.tab ul li ul a,.cat_post a').click(<span class="keyword">function</span>(){</li>
<li> myloadoriginal = <span class="keyword">this</span>.text;</li>
<li class="alt"> $(<span class="keyword">this</span>).text('正在给力加载中 ...');</li>
<li> <span class="keyword">var</span> myload = <span class="keyword">this</span>;</li>
<li class="alt"> setTimeout(<span class="keyword">function</span>() { $(myload).text(myloadoriginal); }, 2011);</li>
<li> });</li>
<li class="alt"> });</li>
</ol>
</div>
<p><strong><span style="color: #ff0000;">上面的JS代码，有童鞋提出在Opera浏览器下有BUG,那就换成：</span></strong></p>
<div class="dp-highlighter">
<ol class="dp-j">
<li class="alt"><span><span class="comment">//加载中提示 </span><span> </span></span></li>
<li><span>$(document).ready(function(){ </span></li>
<li class="alt"><span>$('h3 a,.tab ul li ul a,.cat_post a,.r_comments a').click(function(){ </span></li>
<li><span>$(</span><span class="keyword">this</span><span>).text('正在给力加载中...'); </span></li>
<li class="alt"><span>window.location = $(</span><span class="keyword">this</span><span>).attr('href'); </span></li>
<li><span>}); </span></li>
<li class="alt"><span>}); </span></li>
</ol>
</div>
<p>发现添加特效后，会影响一些多标签浏览器，在新标签中打开链接，当前标签会同时跳转到链接页面。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/add-the-link-for-the-title-of-the-article-prompted-loading.html/feed</wfw:commentRss>
		<slash:comments>70</slash:comments>
		</item>
		<item>
		<title>WordPress3.0菜单功能进阶</title>
		<link>http://zmingcx.com/wordpress3-0-advanced-menu-functions.html</link>
		<comments>http://zmingcx.com/wordpress3-0-advanced-menu-functions.html#comments</comments>
		<pubDate>Sun, 13 Feb 2011 07:57:48 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=3932</guid>
		<description><![CDATA[从WordPress3.0开始已集成菜单管理功能，使得创建和管理（导航）菜单变得轻而易举。现在，创建并显示一个菜单需要的无非就是一行代码（ wp_nav_menu ），似乎已经失去“手动”添加我们自己需要的东西空间。 例如，菜单功能默认没有“返回首页”的任何链接，虽然可以很容易地在自定义菜单功能中手动添加一个返回首页的链接，但返回首页链接基本是网站必须的功能，因此，自动添加此功能是很有必要的。有一个更简单的方法，使用WordPress filters. 利用导航菜单“ filters”功能，可以使我们能够加入特定菜单项。 举一反三，经过挖掘研究，将以下三段代码，添加到主题 functions.php 文件中，会实现自动增加一个登录/注销链接、添加一个搜索框和一个返回首页的链接到你的WordPress3.0导航菜单。 一、新增一个登录/注销链接到您的导航菜单 add_filter('wp_nav_menu_items', 'add_login_logout_link', 10, 2); function add_login_logout_link($items, $args) { ob_start(); wp_loginout('index.php'); $loginoutlink = ob_get_contents(); ob_end_clean(); $items .= '&#60;li&#62;'. $loginoutlink .'&#60;/li&#62;'; return $items; } 说明: First we add a function add_login_logout_link to the wp_nav_menu_items filter. Then, the ob_start, ob_get_contents and ob_end_clean (lines 4, 6 and 7) functions are “output Buffering” PHP functions [...]]]></description>
			<content:encoded><![CDATA[<p>从WordPress3.0开始已集成菜单管理功能，使得创建和管理（导航）菜单变得轻而易举。现在，创建并显示一个菜单需要的无非就是一行代码（ <a href="http://codex.wordpress.org/Function_Reference/wp_nav_menu" target="_blank">wp_nav_menu</a> ），似乎已经失去“手动”添加我们自己需要的东西空间。 例如，菜单功能默认没有“返回首页”的任何链接，虽然可以很容易地在自定义菜单功能中手动添加一个返回首页的链接，但返回首页链接基本是网站必须的功能，因此，自动添加此功能是很有必要的。有一个更简单的方法，使用<a href="http://codex.wordpress.org/Plugin_API#Filters">WordPress filters</a>.</p>
<p>利用导航菜单“<a href="http://codex.wordpress.org/Plugin_API#Filters"> filters</a>”功能，可以使我们能够加入特定菜单项。</p>
<p>举一反三，经过挖掘研究，将以下三段代码，添加到主题 functions.php 文件中，会实现自动增加一个登录/注销链接、添加一个搜索框和一个返回首页的链接到你的WordPress3.0导航菜单。</p>
<p><strong>一、新增一个登录/注销链接到您的导航菜单</strong></p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>add_filter('wp_nav_menu_items', 'add_login_logout_link', 10, 2); </span></span></li>
<li><span> </span><span class="keyword">function</span><span> add_login_logout_link(</span><span class="vars">$items</span><span>, </span><span class="vars">$args</span><span>) { </span></li>
<li class="alt"><span> </span></li>
<li><span> ob_start(); </span></li>
<li class="alt"><span> wp_loginout('index.php'); </span></li>
<li><span> </span><span class="vars">$loginoutlink</span><span> = ob_get_contents(); </span></li>
<li class="alt"><span> ob_end_clean(); </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="vars">$items</span><span> .= '&lt;li&gt;'. </span><span class="vars">$loginoutlink</span><span> .'&lt;/li&gt;'; </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="keyword">return</span><span> </span><span class="vars">$items</span><span>; </span></li>
<li><span>} </span></li>
</ol>
</div>
<p>说明:</p>
<p>First we add a function add_login_logout_link to the wp_nav_menu_items filter. Then, the ob_start, ob_get_contents and ob_end_clean (lines 4, 6 and 7) functions are “output Buffering” PHP functions that will “intercept” the information that would otherwise be sent to the browser. wp_loginout('index.php'); will add the logic and html code to login (if not logged in yet), or logout (if logged in). Since we don’t want to send that code to the browser yet, we “capture” the output (using ob_get_contents) in a variable ($searchform), and finally include that variable as a list item in the menu.<br />
<strong>二、为导航菜单自动添加搜索框</strong></p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>add_filter('wp_nav_menu_items','add_search_box', 10, 2); </span></span></li>
<li><span> </span><span class="keyword">function</span><span> add_search_box(</span><span class="vars">$items</span><span>, </span><span class="vars">$args</span><span>) { </span></li>
<li class="alt"><span> </span></li>
<li><span> ob_start(); </span></li>
<li class="alt"><span> get_search_form(); </span></li>
<li><span> </span><span class="vars">$searchform</span><span> = ob_get_contents(); </span></li>
<li class="alt"><span> ob_end_clean(); </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="vars">$items</span><span> .= '&lt;li&gt;' . </span><span class="vars">$searchform</span><span> . '&lt;/li&gt;'; </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="keyword">return</span><span> </span><span class="vars">$items</span><span>; </span></li>
<li><span>} </span></li>
</ol>
</div>
<p><strong>创建自己的搜索模板</strong><br />
add_search_box是利用默认的searchform菜单栏。但是这可能不是理想的布局(也许它包含前文本"搜索:”与“搜索”键),那么你就应该创建一个模板文件searchform.php在你的主题模板目录,加入下面代码: 该 add_search_box 功能是利用默认的searchform模板。 但这未必是理想的布局（也许它包含前面的文本“搜索：”和一个“搜索”按钮），所以你可创建一个自己的searchform.php模板文件 ，放到在你的主题模板目录中，并添加以下代码：</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>&lt;form method=</span><span class="string">"get"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"search-form"</span><span> id=</span><span class="string">"search-form"</span><span> action=</span><span class="string">"&lt;?php bloginfo( 'home' ); ?&gt;/"</span><span>&gt; </span></span></li>
<li><span> &lt;div </span><span class="keyword">class</span><span>=</span><span class="string">"formfield"</span><span>&gt; </span></li>
<li class="alt"><span> &lt;input </span><span class="keyword">class</span><span>=</span><span class="string">"formInputText"</span><span> type=</span><span class="string">"text"</span><span> name=</span><span class="string">"s"</span><span> id=</span><span class="string">"search-text"</span><span> value=</span><span class="string">"Search ..."</span><span> size=</span><span class="string">"12"</span><span> maxlength=</span><span class="string">"16"</span><span> tabindex=</span><span class="string">"1"</span><span> onfocus=</span><span class="string">"if (this.value == 'Search ...') {this.value = '';}"</span><span> onblur=</span><span class="string">"if (this.value == '') {this.value = 'Search ...';}"</span><span> /&gt; </span></li>
<li><span> &lt;/div&gt; </span></li>
<li class="alt"><span>&lt;/form&gt; </span></li>
</ol>
</div>
<p>或者，您可以添加表单样式以匹配您的导航风格，例如：</p>
<div class="dp-highlighter">
<ol class="dp-css">
<li class="alt"><span><span>input.formInputText { </span></span></li>
<li><span> </span><span class="keyword">margin-top</span><span>: </span><span class="string">7px</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">color</span><span>: </span><span class="colors">#666</span><span>; </span></li>
<li><span> </span><span class="keyword">padding</span><span>: </span><span class="string">3px</span><span>; </span></li>
<li class="alt"><span> </span><span class="keyword">background</span><span>: </span><span class="colors">#ccc</span><span>; </span></li>
<li><span>} </span></li>
<li class="alt"><span> </span></li>
<li><span>input.formInputText:hover { </span></li>
<li class="alt"><span> </span><span class="keyword">cursor</span><span>: </span><span class="string">help</span><span>; </span></li>
<li><span> </span><span class="keyword">color</span><span>: 555; </span></li>
<li class="alt"><span> </span><span class="keyword">background</span><span>: </span><span class="colors">#ccc</span><span>; </span></li>
<li><span>} </span></li>
</ol>
</div>
<p><strong>三、添加一个主页链接到您的导航菜单</strong></p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>add_filter( 'wp_nav_menu_items', 'add_home_link', 10, 2 ); </span></span></li>
<li><span> </span><span class="keyword">function</span><span> add_home_link(</span><span class="vars">$items</span><span>, </span><span class="vars">$args</span><span>) { </span></li>
<li class="alt"><span> </span><span class="keyword">if</span><span> (is_front_page()) </span></li>
<li><span> </span><span class="vars">$class</span><span> = '</span><span class="keyword">class</span><span>=</span><span class="string">"current_page_item"</span><span>'; </span></li>
<li class="alt"><span> </span><span class="keyword">else</span><span> </span></li>
<li><span> </span><span class="vars">$class</span><span> = </span><span class="string">''</span><span>; </span></li>
<li class="alt"><span> </span><span class="vars">$homeMenuItem</span><span> = </span></li>
<li><span> '&lt;li ' . </span><span class="vars">$class</span><span> . '&gt;' . </span></li>
<li class="alt"><span> </span><span class="vars">$args</span><span>-&gt;before . </span></li>
<li><span> '&lt;a href=</span><span class="string">"' . home_url( '/' ) . '"</span><span> title=</span><span class="string">"Home"</span><span>&gt;' . </span></li>
<li class="alt"><span> </span><span class="vars">$args</span><span>-&gt;link_before . 'Home' . </span><span class="vars">$args</span><span>-&gt;link_after . </span></li>
<li><span> '&lt;/a&gt;' . </span></li>
<li class="alt"><span> </span><span class="vars">$args</span><span>-&gt;after . </span></li>
<li><span> '&lt;/li&gt;'; </span></li>
<li class="alt"><span> </span><span class="vars">$items</span><span> = </span><span class="vars">$homeMenuItem</span><span> . </span><span class="vars">$items</span><span>; </span></li>
<li><span> </span><span class="keyword">return</span><span> </span><span class="vars">$items</span><span>; </span></li>
<li class="alt"><span>} </span></li>
</ol>
</div>
<p><strong>只在特定的位置添加上述新增项目</strong></p>
<p>新增项目默认将显示在所有自定义菜单中，这可能不是你所想要的，因此需要添加一个条件代码，让上述代码只执行在一个特定的菜单位置。</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span class="keyword">function</span><span> add_login_logout_link(</span><span class="vars">$items</span><span>, </span><span class="vars">$args</span><span>) { </span></span></li>
<li><span> </span><span class="keyword">if</span><span>(</span><span class="vars">$args</span><span>-&gt;theme_location == 'Primary') { </span></li>
<li class="alt"><span> ob_start(); </span></li>
<li><span> wp_loginout('index.php'); </span></li>
<li class="alt"><span> </span><span class="vars">$loginoutlink</span><span> = ob_get_contents(); </span></li>
<li><span> ob_end_clean(); </span></li>
<li class="alt"><span> </span><span class="vars">$items</span><span> .= '&lt;li&gt;'. </span><span class="vars">$loginoutlink</span><span> .'&lt;/li&gt;'; </span></li>
<li><span> } </span></li>
<li class="alt"><span> </span><span class="keyword">return</span><span> </span><span class="vars">$items</span><span>; </span></li>
<li><span>} </span></li>
</ol>
</div>
<p>翻译水平有限，有不准确之处，请见谅，上述代码经测试全部有效。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/wordpress3-0-advanced-menu-functions.html/feed</wfw:commentRss>
		<slash:comments>39</slash:comments>
		</item>
		<item>
		<title>删除WordPress评论中的自动链接</title>
		<link>http://zmingcx.com/remove-the-automatic-links-in-wordpress-comments.html</link>
		<comments>http://zmingcx.com/remove-the-automatic-links-in-wordpress-comments.html#comments</comments>
		<pubDate>Thu, 13 Jan 2011 08:13:01 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=3946</guid>
		<description><![CDATA[默认情况下，WordPress会自动把评论中的网址添加链接。 这可能是有用的，但由于有在互联网上有大量的垃圾评论，您可能要删除此功能。 要删除评论中的自动网址链接，只要打开你的functions.php文件并粘贴以下内容： remove_filter('comment_text', 'make_clickable', 9);]]></description>
			<content:encoded><![CDATA[<p>默认情况下，WordPress会自动把评论中的网址添加链接。 这可能是有用的，但由于有在互联网上有大量的垃圾评论，您可能要删除此功能。</p>
<p><span><span>要删除评论中的自动网址链接，只要打开你的functions.php文件并粘贴以下内容： </span></span></p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>remove_filter('comment_text', 'make_clickable', 9); </span></span></li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/remove-the-automatic-links-in-wordpress-comments.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>自动为导航菜单添加一个搜索框</title>
		<link>http://zmingcx.com/automatically-add-a-search-box-to-navigation-menu.html</link>
		<comments>http://zmingcx.com/automatically-add-a-search-box-to-navigation-menu.html#comments</comments>
		<pubDate>Thu, 13 Jan 2011 07:08:04 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=3928</guid>
		<description><![CDATA[如果你希望能够自动添加一个搜索框到WP 3.0 +导航菜单，下面这段代码相信你会喜欢它！ 打开你的functions.php文件，并粘贴以下代码，保存。之后当你启用WP 3.0 +自定义导航菜单后就会自动添加一个搜索框。 add_filter('wp_nav_menu_items','add_search_box', 10, 2); function add_search_box($items, $args) { ob_start(); get_search_form(); $searchform = ob_get_contents(); ob_end_clean(); $items .= '&#60;li&#62;' . $searchform . '&#60;/li&#62;'; return $items; }]]></description>
			<content:encoded><![CDATA[<p>如果你希望能够自动添加一个搜索框到WP 3.0 +导航菜单，下面这段代码相信你会喜欢它！<br />
打开你的functions.php文件，并粘贴以下代码，保存。之后当你启用WP 3.0 +自定义导航菜单后就会自动添加一个搜索框。</p>
<div class="dp-highlighter">
<ol class="dp-c">
<li class="alt"><span><span>add_filter('wp_nav_menu_items','add_search_box', 10, 2); </span></span></li>
<li><span> </span><span class="keyword">function</span><span> add_search_box(</span><span class="vars">$items</span><span>, </span><span class="vars">$args</span><span>) { </span></li>
<li class="alt"><span> </span></li>
<li><span> ob_start(); </span></li>
<li class="alt"><span> get_search_form(); </span></li>
<li><span> </span><span class="vars">$searchform</span><span> = ob_get_contents(); </span></li>
<li class="alt"><span> ob_end_clean(); </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="vars">$items</span><span> .= '&lt;li&gt;' . </span><span class="vars">$searchform</span><span> . '&lt;/li&gt;'; </span></li>
<li><span> </span></li>
<li class="alt"><span> </span><span class="keyword">return</span><span> </span><span class="vars">$items</span><span>; </span></li>
<li><span>} </span></li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/automatically-add-a-search-box-to-navigation-menu.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>10个.htaccess的WordPress应用技巧</title>
		<link>http://zmingcx.com/htaccess-wordpress-application-skills-10.html</link>
		<comments>http://zmingcx.com/htaccess-wordpress-application-skills-10.html#comments</comments>
		<pubDate>Wed, 07 Apr 2010 14:34:30 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.com/?p=4297</guid>
		<description><![CDATA[.htaccess是什么？ .htaccess是使用UNIX或Linux 搭建的服务器中的一个特殊的文件，这个文件只存在于Linux系统中，Win系列的主机是没有的。那 么.htaccess有什么功能呢？通俗点的讲，就是可以通过编写这个文件中的某些内容，进而实现.htaccess文件所在目录及其子目录的权限与功能 的设置，是自己的站点灵活多变，下面就介绍.htaccess文件关于WordPress的十个应用技巧，举一反三，这些应用技巧同样适用于其它站点程 序。 1. 重定向WordPress的RSS Feed链接地址到Feedburner地址： 除了修改WP的模板文件来定制其输出的RSS Feed链接地址外，还可以使用.htaccess文件来进行设置(替换yourrssfeedlink为自己的Feedburner地址)。 /* &#60;IfModule mod_rewrite.c&#62; RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC] RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds2.feedburner.com/catswhocode [R=302,NC,L] &#60;/IfModule&#62; */ 大家使用时别忘了把代码中的Feedburner地址替换为自己的 参考：How to redirect WordPress rss feeds to feedburner 2. 使用浏览器缓存： 可以修改.htaccess文件让访问者使用浏览器缓存来优化其访问速度。 /*FileETag MTime Size &#60;ifmodule mod_expires.c&#62; &#60;filesmatch “\.(jpg&#124;gif&#124;png&#124;css&#124;js)$”&#62; ExpiresActive on ExpiresDefault “access plus 1 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>.htaccess</strong><strong>是什么？</strong></p>
<p>.htaccess是使用UNIX或Linux 搭建的服务器中的一个特殊的文件，这个文件只存在于Linux系统中，Win系列的主机是没有的。那  么.htaccess有什么功能呢？通俗点的讲，就是可以通过编写这个文件中的某些内容，进而实现.htaccess文件所在目录及其子目录的权限与功能   的设置，是自己的站点灵活多变，下面就介绍.htaccess文件关于WordPress的十个应用技巧，举一反三，这些应用技巧同样适用于其它站点程 序。</p>
<p><strong>1.</strong> <strong>重定向WordPress</strong>的RSS Feed链接地址到Feedburner地址：<br />
除了修改WP的模板文件来定制其输出的RSS Feed链接地址外，还可以使用.htaccess文件来进行设置(替换yourrssfeedlink为自己的Feedburner地址)。</p>
<p>/*<br />
&lt;IfModule mod_rewrite.c&gt;<br />
RewriteEngine on<br />
RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]<br />
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]<br />
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds2.feedburner.com/catswhocode [R=302,NC,L]<br />
&lt;/IfModule&gt;<br />
*/</p>
<p>大家使用时别忘了把代码中的Feedburner地址替换为自己的<br />
参考：<a href="http://www.wprecipes.com/how-to-redirect-wordpress-rss-feeds-to-feedburner-with-htaccess">How to redirect WordPress rss feeds to feedburner<br />
</a><br />
<strong>2.</strong> <strong>使用浏览器缓存：</strong><br />
可以修改.htaccess文件让访问者使用浏览器缓存来优化其访问速度。</p>
<p>/*FileETag MTime Size<br />
&lt;ifmodule mod_expires.c&gt;<br />
&lt;filesmatch “\.(jpg|gif|png|css|js)$”&gt;<br />
ExpiresActive on<br />
ExpiresDefault “access plus 1 year”<br />
&lt;/filesmatch&gt;<br />
&lt;/ifmodule&gt;*/</p>
<p><strong>3.</strong> <strong>去除WordPress</strong>分类链接中的”/category/”：<br />
默认情况下，WordPress的分类链接显示的样式为：</p>
<p>http://e-spacy.com/blog/category/tech</p>
<p>其实其中的category部分没有任何意义，如果想去掉它可以修改.htaccess文件(替换yourblog为自己的网址)。</p>
<p>RewriteRule ^category/(.+)$ http://www.yourblog.com/$1 [R=301,L]</p>
<p>参考：<a href="http://www.wprecipes.com/how-to-remove-category-from-your-wordpress-url">How to remove category from your WordPress url</a></p>
<p><strong>4.</strong> <strong>阻止没有referrer</strong>来源链接的垃圾评论：<br />
设置.htaccess文件可以阻止大多数无Refferrer来源的垃圾评论机器人Bot Spammer。其会查询访问你网站的来源链接，然后阻止其通过wp-comments-post.php来进行垃圾评论。</p>
<p>RewriteEngine On<br />
RewriteCond %{REQUEST_METHOD} POST<br />
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*<br />
RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]<br />
RewriteCond %{HTTP_USER_AGENT} ^$<br />
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]</p>
<p>参考： <a href="http://www.wprecipes.com/how-to-deny-comment-posting-to-no-referrer-requests">How to deny comment posting to no referrer requests</a></p>
<p><strong>5.</strong> <strong>重定向日期格式的WP Permalink</strong>链接地址为Postname格式：<br />
如 果你目前的Permalink地址为/%year%/%monthnum%/%day%/%postname%/  的格式，那么我强烈推荐你直接使用/%postname%/  ，这样对搜索引擎要舒服得多。首先你需要在WordPress的后台设置输出的Permalinks格式为/%postname%/  。然后修改.htaccess文件来重定向旧的链接，不然别人以前收藏你的网址都会转成404哦！(替换yourdomain为自己的网址)</p>
<p>RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ http://www.yourdomain.com/$4</p>
<p>参考： <a href="http://www.wprecipes.com/redirect-day-and-name-permalinks-to-postname">Redirect day and name permalinks to postname</a></p>
<p><strong>6.</strong> <strong>压缩静态数据：</strong><br />
可以修改.htaccess文件来压缩需要访问的数据（传输后在访问端解压），从而可以减少访问流量和载入时间。</p>
<p>AddOutputFilterByType  DEFLATE text/html text/plain text/xml application/xml  application/xhtml+xml text/javascript text/css application/x-javascript<br />
BrowserMatch ^Mozilla/4 gzip-only-text/html<br />
BrowserMatch ^Mozilla/4.0[678] no-gzip<br />
BrowserMatch bMSIE !no-gzip !gzip-only-text/html</p>
<p><strong>7.</strong> <strong>阻止指定IP</strong>的访问：<br />
如果你想要阻止指定IP的访问，来防止其垃圾评论，那么你可以创建自己的Backlist黑名单。(替换xx.xx.xx.xx为指定的IP地址)</p>
<p>&lt;Limit GET POST&gt;<br />
order allow,deny<br />
deny from xx.xx.xx.xx<br />
allow from all<br />
&lt;/Limit&gt;</p>
<p>参考：<a href="http://lorelle.wordpress.com/2007/09/20/the-easiest-way-to-ban-a-wordpress-spammer/">The easiest way to ban a WordPress spammer</a></p>
<p><strong>8.</strong> <strong>只允许自己的IP</strong>访问wp-admin：<br />
如果你不是团队合作Blog，最好设置只有自己能够访问WP的后台。前提是你的IP不是像我一样动态的哦。（替换xx.xx.xx.xx为自己的IP地址）</p>
<p>AuthUserFile /dev/null<br />
AuthGroupFile /dev/null<br />
AuthName “Example Access Control”<br />
AuthType Basic<br />
&lt;LIMIT GET&gt;<br />
order deny,allow<br />
deny from all<br />
allow from xx.xx.xx.xx<br />
&lt;/LIMIT&gt;</p>
<p>参考：<a href="http://www.reubenyau.com/protecting-the-wordpress-wp-admin-folder/">Protecting the WordPress wp-admin folder</a></p>
<p><strong>9.</strong> <strong>设置你的WordPress</strong>防盗链：<br />
盗链是指其它网站直接使用你自己网站内的资源，从而浪费网站的流量和带宽，比如图片，上传的音乐，电影等文件。（替换mysite为自己的网址和/images/notlink.jpg为自己定制的防盗链声明图片）</p>
<p>RewriteEngine On<br />
#Replace ?mysite\.com/ with your blog url<br />
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]<br />
RewriteCond %{HTTP_REFERER} !^$<br />
#Replace /images/nohotlink.jpg with your “don’t hotlink” image url<br />
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]</p>
<p>参考：<a href="http://www.wprecipes.com/how-to-protect-your-wordpress-blog-from-hotlinking">How to protect your WordPress blog from hotlinking</a></p>
<p><strong>10.</strong> <strong>定制访问者跳转到维护页面：</strong><br />
当 你进行网站升级，模板修改调试等操作时，最好让访问者临时跳转到一个声明的维护页面(和404错误页面不同)，来通知网站暂时无法访问，而不是留下一片  空白或者什么http  bad错误。（替换maintenance.html为自己定制的维护页面网址，替换123.123.123.123为自己目前的IP地址，不然你自己访  问也跳转哦）</p>
<p>RewriteEngine on<br />
RewriteCond %{REQUEST_URI} !/maintenance.html$<br />
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123<br />
RewriteRule $ /maintenance.html [R=302,L]/</p>
<p>参考：<a href="http://www.woueb.net/2007/07/25/comment-faire-une-page-d-accueil-pour-les-internautes/">Comment faire une page d’accueil pour les internautes</a></p>
<p>英文原文: <a href="http://www.catswhocode.com/blog/10-awesome-htaccess-hacks-for-wordpress">10 awesome .htaccess hacks for WordPress</a></p>
<p><ins></ins><ins id="aswift_1_anchor"></ins></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/htaccess-wordpress-application-skills-10.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>不能忽视的404页面</title>
		<link>http://zmingcx.com/e5-a6-82-e4-bd-95-e8-87-aa-e5-ae-9a-e4-b9-89404-e9-a1-b5-e9-9d-a2.html</link>
		<comments>http://zmingcx.com/e5-a6-82-e4-bd-95-e8-87-aa-e5-ae-9a-e4-b9-89404-e9-a1-b5-e9-9d-a2.html#comments</comments>
		<pubDate>Sat, 31 May 2008 15:24:28 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.cn/?p=262</guid>
		<description><![CDATA[原文：http://www.happinesz.cn/archives/345/ 有时你会发现，当你用搜索引擎去到一个内容不存在的页面时，一个简单的错误页面总是让你失望，但一个漂亮却相反地让你想继续，并留下查看这个网站。这也许就是自定义404页面的重要性与必要性所在。然而，404错误页面的设置却在很多时候被忽视了。 你是否跟我一样呢？我认为博客设置一个404页面是非常必要的，特别是那些换过链接模式的Blogger。事实上设置并不困难，主要是经常被大家忽略了。在这里，让我从ASP和PHP两个方面来说说如何设置吧。还会主要介绍一下Wordpress的404页面的自定义。而如何找到所要的404页面并定义呢，主要有2种途径： 1、自建页面 现在一般的主机都有自定义404页面的功能，那么，你只要在主机后台管理那设置这个页面的显示内容就可以了；对于自建的页面，如何指向，这里就不多赘述了，你可以参考以下的两篇文章： ASP的或以参考这篇文章： 如果自定义404错误页面 PHP的可以参考这篇文章： 如何为网站设置自定义404错误页面 2、博客自带 比如Wordpress的模板里面通常会有一个404.php或者允许你建立一个这样的页面，来显示不存在的内容；在这里，我以Wordpress为例，说明如何实现。 1）你可以在theme的目录下，找到404.php或者相关错误页面的filename.php这样的文件，把&#60;?php if (have_posts()) : while (have_posts()) : the_post(); ?&#62;和&#60;?php endwhile; endif; ?&#62;之间的内容代换成你要显示的内容； 2）如果没有这样的页面的话，你可以新建一个新的php文件，命名为404.php，然后把page.php的内容复制进这个文件里面，把 &#60;?php if (have_posts()) : while (have_posts()) : the_post(); ?&#62;和&#60;?php endwhile; endif; ?&#62;之间的内容代换成你要显示的内容； 而具体需要什么样的内容，或者说怎样实现更实用或好看的效果，就要看你的创意如何了。如果你还没有什么头绪的话，可以参考一下我的404错误页面：http://www.happinesz.cn/404.php，相信你也会喜欢上这样的页面的。 然而，404页面也并不一定要在本页显示。虽然，上面介绍的方法都是在读者来到的页面显示，但你还可以设置其他的功能，来实现有效阅读。事实上，你可以选择当页面错误或无效的时候，让页面自动跳转到主页或分类的归档页面等。具体的方法在此：自定义404错误页面实现自动跳转，作者已经给出了完整的代码。 好吧，基本上就是这样，简单吧。那么，建一个即使错误也是精彩的页面吧，或许你的读者会因此而喜欢上你的博客呢。如果，你有更精彩的方法或更有效果的方式，希望你也能分享出来给大家，让大家来共同探讨。]]></description>
			<content:encoded><![CDATA[<p>原文：<a href="http://www.happinesz.cn/archives/345/">http://www.happinesz.cn/archives/345/</a></p>
<p>有时你会发现，当你用搜索引擎去到一个内容不存在的页面时，一个简单的错误页面总是让你失望，但一个漂亮却相反地让你想继续，并留下查看这个网站。这也许就是自定义404页面的重要性与必要性所在。然而，404错误页面的设置却在很多时候被忽视了。</p>
<p>你是否跟我一样呢？我认为博客设置一个404页面是非常必要的，特别是那些换过链接模式的Blogger。事实上设置并不困难，主要是经常被大家忽略了。在这里，让我从ASP和PHP两个方面来说说如何设置吧。还会主要介绍一下Wordpress的404页面的自定义。而如何找到所要的404页面并定义呢，主要有2种途径：</p>
<p><span id="more-100"></span><br />
1、自建页面<br />
现在一般的主机都有自定义404页面的功能，那么，你只要在主机后台管理那设置这个页面的显示内容就可以了；对于自建的页面，如何指向，这里就不多赘述了，你可以参考以下的两篇文章：</p>
<p>ASP的或以参考这篇文章： <a href="http://www.gxu.com.cn/edu/2005/2005-12-25/7545.html"><span style="color: #ff0000;">如果自定义404错误页面</span> </a><br />
PHP的可以参考这篇文章： <a href="http://www.lanka.cn/thread-2062.html"><span style="color: #ff0000;">如何为网站设置自定义404错误页面</span> </a></p>
<p>2、博客自带<br />
比如Wordpress的模板里面通常会有一个404.php或者允许你建立一个这样的页面，来显示不存在的内容；在这里，我以Wordpress为例，说明如何实现。</p>
<p>1）你可以在theme的目录下，找到404.php或者相关错误页面的filename.php这样的文件，把&lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;和&lt;?php endwhile; endif; ?&gt;之间的内容代换成你要显示的内容；</p>
<p>2）如果没有这样的页面的话，你可以新建一个新的php文件，命名为404.php，然后把page.php的内容复制进这个文件里面，把 &lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;和&lt;?php endwhile; endif; ?&gt;之间的内容代换成你要显示的内容；</p>
<p>而具体需要什么样的内容，或者说怎样实现更实用或好看的效果，就要看你的创意如何了。如果你还没有什么头绪的话，可以参考一下我的404错误页面：<a href="http://www.happinesz.cn/404.php">http://www.happinesz.cn/404.php</a>，相信你也会喜欢上这样的页面的。</p>
<p>然而，404页面也并不一定要在本页显示。虽然，上面介绍的方法都是在读者来到的页面显示，但你还可以设置其他的功能，来实现有效阅读。事实上，你可以选择当页面错误或无效的时候，让页面自动跳转到主页或分类的归档页面等。具体的方法在此：<a href="http://www.cnlei.org/blog/article.asp?id=479"><span style="color: #ff0000;">自定义404错误页面实现自动跳转</span></a>，作者已经给出了完整的代码。</p>
<p>好吧，基本上就是这样，简单吧。那么，建一个即使错误也是精彩的页面吧，或许你的读者会因此而喜欢上你的博客呢。如果，你有更精彩的方法或更有效果的方式，希望你也能分享出来给大家，让大家来共同探讨。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/e5-a6-82-e4-bd-95-e8-87-aa-e5-ae-9a-e4-b9-89404-e9-a1-b5-e9-9d-a2.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress主题制作新手必备品: Sandbox Theme</title>
		<link>http://zmingcx.com/wordpress-e4-b8-bb-e9-a2-98-e5-88-b6-e4-bd-9c-e6-96-b0-e6-89-8b-e5-bf-85-e5-a4-87-e5-93-81-sandbox-theme.html</link>
		<comments>http://zmingcx.com/wordpress-e4-b8-bb-e9-a2-98-e5-88-b6-e4-bd-9c-e6-96-b0-e6-89-8b-e5-bf-85-e5-a4-87-e5-93-81-sandbox-theme.html#comments</comments>
		<pubDate>Sat, 26 Apr 2008 23:35:11 +0000</pubDate>
		<dc:creator>知更鸟</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[WP教程]]></category>

		<guid isPermaLink="false">http://zmingcx.cn/?p=233</guid>
		<description><![CDATA[有一些朋友在问，你是怎么写那些WP的函数的呢？其实，需要自己写的很少，因为有 Sandbox theme 作为基础，制作一个主题，我所要做的大部分工作就是写CSS而已。而少量的工作是自己画图，并且去Codex那里找自己需要的WP函数。 你也想做WP主题吗？你也学了CSS，但却很难做出一人真正的主题？事实上，CSS很多需要实践，才能知道其真正的用处。比如，书中说得非常少，非常简单的定位，事实上有很多浮动代替不了的优点。你非常需要实践，以提高自己的技巧。作为WP的用户，我们会感觉非常幸运，因为有很多的插件和主题，特别是最优秀的社区。Sandbox theme就是类似于这种性质的东西，可以节省你很多做主题的时间。 下面是Sandbox Theme的基本结构，是由著名的Wordpress主题制作站Wpdesigner.com的small potato编写的。这个或许会对你了解这个空白主题有帮助。 div#wrapper [.hfeed] #header h1 div#blog-description div#access div.skip-link sandbox_globalnav() [div#menu] div#container div#content div#nav-above [.navigation] div.nav-previous div.nav-next div#post-the_ID() [sandbox_post_class()] h2.entry-title div.entry-date div.entry-content div.entry-meta span.author (.vcard) span.cat-links span.comments-link div#nav-above [.navigation] div.nav-previous div.nav-next div#primary [.sideabar] ul.xoxo li#pages li#categories li#archives div#secondary [.sidebar] ul.xoxo li#search li#rss-links li#meta div#footer span#generator-link span#theme-link 如果你也试着用sandbox来帮助你完成wordpress主题，那么，也欢迎你也交流。当然，或许会有更好的方法，或者方式，希望你也能跟大家分享一下。]]></description>
			<content:encoded><![CDATA[<p><a href="http://zmingcx.com/wp-content/uploads/2008/08/sandbox11.gif"><img class="alignleft size-medium wp-image-310" title="sandbox" src="http://zmingcx.cn/wp-content/uploads/2008/08/sandbox-300x66.gif" alt="" width="300" height="66" /></a>有一些朋友在问，你是怎么写那些WP的函数的呢？其实，需要自己写的很少，因为有 <a href="http://code.google.com/p/sandbox-theme/">Sandbox theme </a>作为基础，制作一个主题，我所要做的大部分工作就是写CSS而已。而少量的工作是自己画图，并且去<a href="http://codex.wordpress.org/Template_Tags">Codex</a>那里找自己需要的WP函数。<br />
你也想做WP主题吗？你也学了CSS，但却很难做出一人真正的主题？事实上，CSS很多需要实践，才能知道其真正的用处。比如，书中说得非常少，非常简单的定位，事实上有很多浮动代替不了的优点。你非常需要实践，以提高自己的技巧。作为WP的用户，我们会感觉非常幸运，因为有很多的插件和主题，特别是最优秀的社区。Sandbox theme就是类似于这种性质的东西，可以节省你很多做主题的时间。<br />
<span id="more-88"></span><br />
下面是Sandbox Theme的基本结构，是由著名的Wordpress主题制作站Wpdesigner.com的<a href="http://www.wpdesigner.com/about/">small potato</a>编写的。这个或许会对你了解这个空白主题有帮助。</p>
<p>div#wrapper [.hfeed]<br />
#header<br />
h1<br />
div#blog-description<br />
div#access<br />
div.skip-link<br />
sandbox_globalnav() [div#menu]<br />
div#container<br />
div#content<br />
div#nav-above [.navigation]<br />
div.nav-previous<br />
div.nav-next<br />
div#post-the_ID() [sandbox_post_class()]<br />
h2.entry-title<br />
div.entry-date<br />
div.entry-content<br />
div.entry-meta<br />
span.author (.vcard)<br />
span.cat-links<br />
span.comments-link<br />
div#nav-above [.navigation]<br />
div.nav-previous<br />
div.nav-next<br />
div#primary [.sideabar]<br />
ul.xoxo<br />
li#pages<br />
li#categories<br />
li#archives<br />
div#secondary [.sidebar]<br />
ul.xoxo<br />
li#search<br />
li#rss-links<br />
li#meta<br />
div#footer<br />
span#generator-link<br />
span#theme-link<br />
如果你也试着用sandbox来帮助你完成wordpress主题，那么，也欢迎你也交流。当然，或许会有更好的方法，或者方式，希望你也能跟大家分享一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://zmingcx.com/wordpress-e4-b8-bb-e9-a2-98-e5-88-b6-e4-bd-9c-e6-96-b0-e6-89-8b-e5-bf-85-e5-a4-87-e5-93-81-sandbox-theme.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

