<?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>NeoEase &#187; Theme</title>
	<atom:link href="http://www.neoease.com/tag/theme/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.neoease.com</link>
	<description>MG12&#039;s Blog - Just Another WordPress Blog</description>
	<lastBuildDate>Sun, 08 Jan 2012 03:00:27 +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 Mobile Themes</title>
		<link>http://www.neoease.com/wp-mobile-themes/</link>
		<comments>http://www.neoease.com/wp-mobile-themes/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 16:35:31 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Plugin]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Release]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=2091</guid>
		<description><![CDATA[允许用户为使用手机浏览的访客选择另一套主题. 该手机主题不会影响桌面 (默认) 主题的功能和效果, 但会在主流的手机浏览器 (Safari Mobile, Android 浏览器, UC 浏览器, ...) 上显示选择的手机主题. 适用版本 WordPress 3.0 或以上 插件下载 WordPress Mobile Themes 安装方法 将压缩包解压到 {WordPress 根目录}/wp-content/plugins/. 登录你的 WordPress 后台, 到 Plugins 页面激活插件 WordPress Mobile Themes. 到 Appearance->Mobile Themes 页面修改插件设置. 插件本地化 此版本支持英文和简体中文, 其中英文是默认设置. 若要使用简体中文, 请执行以下步骤: 1. 打开 WordPress 根目录的文件 wp-config.php. 2. 查找 define ('WPLANG', ''); 并修改为 define [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
允许用户为使用手机浏览的访客选择另一套主题. 该手机主题不会影响桌面 (默认) 主题的功能和效果, 但会在主流的手机浏览器 (Safari Mobile, Android 浏览器, UC 浏览器, ...) 上显示选择的手机主题.
</p>
<p>
<img class="sided" src="http://wordpress.org/extend/plugins/wp-mobile-themes/screenshot-1.png" alt="最新评论, Recent Comment, WordPress, WP, 插件" width="600" />
</p>
<p><span id="more-2091"></span></p>
<h3>适用版本</h3>
<p>
WordPress 3.0 或以上
</p>
<h3>插件下载</h3>
<p>
<a href="http://downloads.wordpress.org/plugin/wp-mobile-themes.zip">WordPress Mobile Themes</a>
</p>
<p><!--more--></p>
<h3>安装方法</h3>
<ul>
<li>将压缩包解压到 {WordPress 根目录}/wp-content/plugins/.</li>
<li>登录你的 WordPress 后台, 到 Plugins 页面激活插件 WordPress Mobile Themes.</li>
<li>到 Appearance->Mobile Themes 页面修改插件设置.</li>
</ul>
<h3>插件本地化</h3>
<p>
此版本支持英文和简体中文, 其中英文是默认设置. 若要使用简体中文, 请执行以下步骤:<br />
1. 打开 WordPress 根目录的文件 <code>wp-config.php</code>.<br />
2. 查找 <code>define ('WPLANG', '');</code> 并修改为 <code>define ('WPLANG', 'zh_CN');</code>.
</p>
<h3>更新日志</h3>
<p>
<a rel="nofollow" href="http://wordpress.org/extend/plugins/wp-mobile-themes/changelog/">Change Log</a></p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2091" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/wp-recentcomments/" rel="bookmark">最新评论插件 WP-RecentComments</a><!-- (23.9)--></li>
		<li><a href="http://www.neoease.com/wp-easyarchives/" rel="bookmark">文章存档插件 WP-EasyArchives</a><!-- (23.6)--></li>
		<li><a href="http://www.neoease.com/highslide4wp/" rel="bookmark">图片预览插件 Highslide4WP</a><!-- (21.3)--></li>
		<li><a href="http://www.neoease.com/feedsky-statistic/" rel="bookmark">WordPress 上的 Feedsky 统计插件</a><!-- (18.9)--></li>
		<li><a href="http://www.neoease.com/wp-multicollinks/" rel="bookmark">多栏友情链接插件 WP-MulticolLinks</a><!-- (18.3)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wp-mobile-themes/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>手机版 WordPress 界面插件 - WPtouch</title>
		<link>http://www.neoease.com/wordpress-mobile-ui-plugin-wptouch/</link>
		<comments>http://www.neoease.com/wordpress-mobile-ui-plugin-wptouch/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 16:54:33 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Plugin]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=1967</guid>
		<description><![CDATA[最近对触摸设备的浏览器做了功能兼容, 但在小尺寸的移动设备上效果还是不尽人意, 所以看了别人怎么做, 找来了一个叫 WPtouch 的 WordPress 插件制作手机浏览器版本. 随着智能手机和移动网络的广泛应用, 手机浏览器成了最常用的网页载体之一. 但因为受手机屏幕小所限, 很多网站对手机浏览进行了特殊处理, 让访客方便阅读... 使用动机 可能你也曾想过做一套针对手机用户的界面, 或是进行网页兼容 (比如: 不显示侧边栏). 无论是再做一套还是进行兼容, 工作量都不少. 然而, 如果你使用 WordPress, 一切并没有那么艰难, 你可以使用 WPtouch, 它为我们提供整套的浏览器兼容方案. 该插件简单易用, 安装激活即可. 功能特点 WPtouch 支持 iPod, iPhone, iPad, Android, 黑莓, Palm OS 等常用的触摸设备浏览器. 而且强大如一个网站管理工具, 免费版就可以进行一些常规的页面修改, 如选择是否显示文章 Tags, 分类, 作者信息, view more 链接, 菜单管理, 搜索, 分享按钮等常规的功能. WPtouch Pro 版貌似很犀利, [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
最近对触摸设备的浏览器做了功能兼容, 但在小尺寸的移动设备上效果还是不尽人意, 所以看了别人怎么做, 找来了一个叫 <strong><a rel="external" href="http://wordpress.org/extend/plugins/wptouch/">WPtouch</a></strong> 的 <strong><a href="http://www.neoease.com/plugins/">WordPress 插件</a></strong>制作手机浏览器版本.
</p>
<p>
随着智能手机和移动网络的广泛应用, 手机浏览器成了最常用的网页载体之一. 但因为受手机屏幕小所限, 很多网站对手机浏览进行了特殊处理, 让访客方便阅读...
</p>
<p><span id="more-1967"></span></p>
<h3>使用动机</h3>
<p>
可能你也曾想过做一套针对手机用户的界面, 或是进行网页兼容 (比如: 不显示侧边栏). 无论是再做一套还是进行兼容, 工作量都不少. 然而, 如果你使用 WordPress, 一切并没有那么艰难, 你可以使用 WPtouch, 它为我们提供整套的浏览器兼容方案. 该插件简单易用, 安装激活即可.
</p>
<h3>功能特点</h3>
<p>
WPtouch 支持 iPod, iPhone, iPad, Android, 黑莓, Palm OS 等常用的触摸设备浏览器. 而且强大如一个网站管理工具, 免费版就可以进行一些常规的页面修改, 如选择是否显示文章 Tags, 分类, 作者信息, view more 链接, 菜单管理, 搜索, 分享按钮等常规的功能. <a rel="external" href="http://www.bravenewcode.com/store/plugins/wptouch-pro/">WPtouch Pro</a> 版貌似很犀利, 可以自定义主题, 管理广告, 还支持平板电脑界面.
</p>
<h3>显示效果</h3>
<p>
如果有 iPhone 或者 Android 手机, 可以访问我的博客看看效果.
</p>
<p>
<img class="sided" src="http://photo.tuhigh.com/pics/1136/0830/187252t1314636123633_o.png" alt="WPtouch 插件生成页面在手机浏览器上的显示效果" />
</p>
<p>
免费版已经很强大, 没有必要使用付费版本. 如果要定义主题, 可以修改 default 主题达到效果. 插件提供的那些强大的自定义功能对个人博客来说没什么用, 而且平板设备屏幕大, 进行网页兼容即可兼容, 没有必要另起一套.
</p>
<h3>后话</h3>
<p>
插件提供默认主题功能很强大, 连 AJAX 加载文章的功能都有, 但页面结构并不好, 建议有时间爱折腾的同学自我修改和优化.
</p>
<p>
本来我是想自己多做一套针对手机设备的 WordPress 主题, 在 PHP 层判断浏览来源, 如果是手机设备则使用这套主题. 后来<a rel="nofollow external" href="http://wangyueblog.com/">望月</a>告诉我有这个叫 WPtouch 的插件, 就把玩了起来. 我不知道以后会不会一直用着, 但会研究一下这个插件, 这么强大一个插件有很多可以借鉴的内容.
</p>
<p>
<strong>2011年10月6日更新:</strong> 现在我已经开发了一个名叫 <a href="http://www.neoease.com/wp-mobile-themes/">WordPress Mobile Themes</a> 的插件, 可以为使用手机浏览的访客选择另一套主题, 作为手机主题. 也为该博客设计了一套手机主题, 用手机浏览器访问即可看到...</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1967" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/mobile-aps-for-job5156/" rel="bookmark">智通人才网手机客户端</a><!-- (9.6)--></li>
		<li><a href="http://www.neoease.com/wp-mobile-themes/" rel="bookmark">手机主题调度插件 WordPress Mobile Themes</a><!-- (8.3)--></li>
		<li><a href="http://www.neoease.com/add-web-icon-to-home-screen-on-iphone-or-ipad/" rel="bookmark">为 iPhone 和 iPad 自定义网站的主屏幕图标</a><!-- (5.7)--></li>
		<li><a href="http://www.neoease.com/meizu-m8-theme-iphone-style-suave/" rel="bookmark">魅族 M8 的 iPhone 风格主题 Suave</a><!-- (5.4)--></li>
		<li><a href="http://www.neoease.com/app-daily-push/" rel="bookmark">App 每日推送 - 挖掘免费 iPhone/iPad 应用</a><!-- (5.3)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-mobile-ui-plugin-wptouch/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>WordPress 主题审核</title>
		<link>http://www.neoease.com/wordpress-theme-review/</link>
		<comments>http://www.neoease.com/wordpress-theme-review/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 09:00:05 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=1557</guid>
		<description><![CDATA[最近我企图升级一下那几个 WordPress 主题, 但遇到很大的阻力, 阻力来自 WP 新的主题审核机制. 我恨 WordPress 的主题审核, 并打算不再向官方提交主题更新了 (可能找台服务器放自己的主题更新). 但我可以分享一下自己对这些审核条目的看法以及操作时需要注意的事项, 写这个文章目的有两个: 1. 让准备向官方提交主题的同学知道如何通过主题审核. 2. 回顾一下 WordPress 无理的审核事项, 说说我对其心灰的原因. 让我们一起来看看现在 WordPress 的主题审核 Review 文档吧. 看完你就知道审核团队对你的主题有些什么要求, 从而需要做些什么来让你的主题通过审核. 请打开 Theme Review of WordPress. 我说过一句话: 可有可无的说明可以没有, 所以不重要的我们统统跳过, 只挑那些通过审核的必要条件来讲. 代码质量 PHP 关闭所有插件, 并将 wp-config.php 中的 WP_DEBUG 设为 true 如下: define&#40;WP_DEBUG, true&#41;; 不允许出现任何提示, 警告, 错误和弃用的方法. 我很久之前就说过 WordPress 的方法命名和调用规则不一致, [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
最近我企图升级一下那几个 WordPress 主题, 但遇到很大的阻力, 阻力来自 WP 新的主题审核机制.
</p>
<p>
我恨 WordPress 的主题审核, 并打算不再向官方提交主题更新了 (可能找台服务器放自己的主题更新). 但我可以分享一下自己对这些审核条目的看法以及操作时需要注意的事项, 写这个文章目的有两个:<br />
1. 让准备向官方提交主题的同学知道如何通过主题审核.<br />
2. 回顾一下 WordPress 无理的审核事项, 说说我对其心灰的原因.
</p>
<p><span id="more-1557"></span></p>
<p>
让我们一起来看看现在 WordPress 的主题审核 Review 文档吧. 看完你就知道审核团队对你的主题有些什么要求, 从而需要做些什么来让你的主题通过审核. 请打开 <a rel="external" href="http://codex.wordpress.org/Theme_Review">Theme Review of WordPress</a>. 我说过一句话: 可有可无的说明可以没有, 所以不重要的我们统统跳过, 只挑那些通过审核的必要条件来讲.
</p>
<h3>代码质量</h3>
<p>
<strong>PHP</strong><br />
关闭所有插件, 并将 wp-config.php 中的 WP_DEBUG 设为 true 如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span>WP_DEBUG<span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>
不允许出现任何提示, 警告, 错误和弃用的方法. 我很久之前就说过 WordPress 的方法命名和调用规则不一致, 看来现在打算整治了. 但我有同时担心某天会有大批插件突然无法使用.
</p>
<p>
<strong>HTML 和 CSS</strong><br />
主题需要通过 (X)HTML 和 CSS 的 W3C 认证. 话说我的主题一直都能过 W3C, 甚至我的博客全部页面都能通过, 这个真不难.
</p>
<p>
<strong>JavaScript</strong><br />
页面上没有任何 JavaScript 脚本错误.
</p>
<h3>功能支持</h3>
<p>
<strong>Feed 链接</strong><br />
使用 add_theme_support('automatic-feed-links') 为浏览器增加网站的订阅链接. 这是个蛋疼的功能, 因为帮你都封装好了, 输出就是原生的 RSS. 本应该人为选择的 (如我主题中的 Feed 自定义功能), 要求这个功能很恶心, 但必须添加. 真想不使用, 又要通过审核? 嗯, 还是有办法的, 你可以通过以下语句添加功能并使它失效.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">add_theme_support<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'automatic-feed-links'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp_head'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'feed_links_extra'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>
<strong>Widgets</strong><br />
提供 Widgets 支持, 这个常谈, 不多言了.
</p>
<p>
<strong>评论</strong><br />
要求使用评论模板 comments_template() 调用 comment.php 的内容.<br />
使用评论列表 wp_list_comments(), 该方法可以通过定义 callback 来自定义评论样式.<br />
需要使用 comment_form() 来定义回复框的结构, 这个很扯淡, 任何美好的设计在它面前都会失色.<br />
还要求支持嵌套回复. 相当扯淡, 本来 WordPress 的嵌套回复设计就不是很好, 现在变成强行要求了.
</p>
<h3>模板标签及勾子</h3>
<p>
wp_head() 和 wp_footer() 分别在 head 和 footer 调用勾子, 对插件来说是必须的, 所以得有.
</p>
<p>
body_class() 和 post_class() 分别在 body 和文章的节点上, 用来输出一大串乱七八糟的 class. 评价: 扯淡的要求.
</p>
<p>
$content_width 用于向用户提供调整主题宽度的功能, 例子如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span> <span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$content_width</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #000088;">$content_width</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">640</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
用 wp_link_pages() 为文章添加分页导航.
</p>
<p>
用 paginate_comments_links() 或者 previous_comments_link()/next_comments_link() <a href="http://www.neoease.com/wordpress-27-comment-pages/">添加评论分页</a>.
</p>
<p>
用 posts_nav_link() 或者 previous_posts_link()/next_posts_link() 在文章内容显示上一篇和下一篇文章的链接. 我认为在文章内页显示前后的文章是不合理的, 因为文章间没有必然联系, 放置相关文章才靠谱.
</p>
<p>
get_header(), get_sidebar(), get_footer() 和 comments_template() 这几个模板标签必须使用, 分别用来调用 header.php, sidebar.php, footer.php 和 comment.php 这几个文件.
</p>
<h3>WordPress 的 CSS 框架代码</h3>
<p>
用作水平对齐的样式 .aligncenter, .alignleft 和 .alignright. 因为使用 WordPress 的富文本编辑器插入图片时可以选择对齐模式, 这几个样式是必须的.
</p>
<p>
添加图片外框和标题的样式 .wp-caption, .wp-caption-text 和 .gallery-caption. 同样是富文本编辑器的属性要求.
</p>
<p>
CSS 代码会在提交代码的时候由机器审核, 但上传成功后同样会有关于样式效果的人为审核.
</p>
<h3>主题模板</h3>
<p>
以下 4 个模板必须存在:<br />
index.php, 请参考 <a rel="external nofollow" href="http://codex.wordpress.org/Template_Hierarchy">Template Hierarchy of WordPress</a><br />
comments.php, 评论模板<br />
screenshot.png, 缩略图, 需要跟实际效果保持一致.<br />
style.css, 主题相关信息和样式
</p>
<h3>授权</h3>
<p>
主题中用到的 PHP, HTML, CSS, 图片, 字体和图标都必须在 GPL 授权框架下, 或者使用支持 GPL 的授权.
</p>
<p>
主题使用的授权需要通过以下两种方式之一来声明:<br />
1. 在 style.css 文件中添加 License 和 License URI 来制定授权信息.<br />
2. 在主题目录中添加 license.txt 文件为主题添加授权声明.
</p>
<h3>主题命名</h3>
<p>
主题命名里不能出现 WordPress 和 Theme 关键字, 但 WP 可以使用. 如 WordPress AwesomeSauce 和 AwesomeSauce Theme 不能使用, 但 WP AwesomeSauce 可以.
</p>
<p>
主题命名里不能出现有版本相关和审核相关的关键字, 如 Pure CSS3 就不行.
</p>
<p>
主题命名里不能出现作者和针对 SEO/spam 优化过的相关词语, 如 iNove by mg12 和 iNove Free WP Template 这样的名字都是不可以用的.
</p>
<p>
其他的都是可有可无的. 因为审核相当严格, 准备向 WordPress Theme Directory 提交主题的同学请对以上的内容逐条对照, 官方 Review 文档里面还有很多建议, 推荐一看.
</p>
<h3>为什么我不再提交主题审核了?</h3>
<p>
WordPress 为了推广一些可有可无的新特性, 强行要求主题对其进行支持. 让主题的个性化功能失色, 而且完全丧失了对老版本的兼容. 我觉得这些是得不偿失的, 与其为了他接受我的主题, 不如我将自己想做的东西提交到别的网页. 如果跟着这些条目来规约主题内容, 要通过这些审核并不困难, 但我只做我觉得靠谱的主题.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1557" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/inove-13-released/" rel="bookmark">iNove 1.3 发布</a><!-- (10.6)--></li>
		<li><a href="http://www.neoease.com/wordpress-rss-feed/" rel="bookmark">WP 技巧: WordPress 的 RSS feed</a><!-- (9.7)--></li>
		<li><a href="http://www.neoease.com/inove/" rel="bookmark">WordPress 主题 iNove</a><!-- (8.3)--></li>
		<li><a href="http://www.neoease.com/use-image-title-in-inove/" rel="bookmark">Use Image Title in iNove</a><!-- (8)--></li>
		<li><a href="http://www.neoease.com/upload-wordpress-theme/" rel="bookmark">WordPress 主题提交经历</a><!-- (7.9)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-theme-review/feed/</wfw:commentRss>
		<slash:comments>67</slash:comments>
		</item>
		<item>
		<title>WordPress 留言板</title>
		<link>http://www.neoease.com/wordpress-message-board/</link>
		<comments>http://www.neoease.com/wordpress-message-board/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 12:50:22 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[Message Board]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=1383</guid>
		<description><![CDATA[前段时间, 用 WordPress 为 UED 团队做了个招聘网页, 这说白了就是一留言板. 留言板包括两个部分, 即话题和评论. 话题部分可以是静态内容, 而评论需要借用 WordPress 的. 我们可以创建一个 page, 以 page 内容作为留言板话题, 并将该页面设为网站首页, 其他不可用链接全部转跳首页. 制作这个 WordPress 主题, 我们只需要 3 个文件: style.css, index.php, comments.php. 当 page.php 文件不存在时, page 会调用 index.php 作为它的模板. 以下是我的 index.php 文件内容. &#60;?php get_header&#40;&#41;; ?&#62; &#160; 留言板的话题和相关内容写在这里... &#160; &#60;?php if&#40;have_posts&#40;&#41;&#41; &#123; the_post&#40;&#41;; comments_template&#40;'', true&#41;; &#125; &#160; get_footer&#40;&#41;; ?&#62; [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
前段时间, 用 WordPress 为 UED 团队做了个<a rel="nofollow external" href="http://2010.aliued.com/">招聘网页</a>, 这说白了就是一<strong>留言板</strong>.
</p>
<p>
留言板包括两个部分, 即话题和评论. 话题部分可以是静态内容, 而评论需要借用 WordPress 的. 我们可以创建一个 page, 以 page 内容作为留言板话题, 并将该页面设为网站首页, 其他不可用链接全部转跳首页.
</p>
<p><span id="more-1383"></span></p>
<p>
制作这个 WordPress 主题, 我们只需要 3 个文件: style.css, index.php, comments.php. 当 page.php 文件不存在时, page 会调用 index.php 作为它的模板. 以下是我的 index.php 文件内容.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> get_header<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
留言板的话题和相关内容写在这里...
&nbsp;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> 
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		comments_template<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	get_footer<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
可以看出, 还是要判断一下文章是否存在的, 倒不是为了显示文章内容, 这是为了给评论提供 $post 变量, 以便显示对应的评论. 留言板主题的其余部分与一般主题无异, 按需修改即可.
</p>
<p>
最后我们还需要为 WordPress 设置一下首页的映射, 进入后台 Setting -&gt; Reading, Front page displays 选择 A static page, 并将 Front page 设为之前创建的 page. 如下图:
</p>
<p>
<img class="sided" src="http://photo.tuhigh.com/pics/1033/0811/187252t1281530097243_o.png" alt="Wordpress 留言板" />
</p>
<p>
Okay, 大功告成! 是不是很简单? 下次再说说如何对这种页面做 SEO 吧.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1383" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/ajax-load-wordpress-post-response/" rel="bookmark">WordPress AJAX 加载文章内容 - 后台处理</a><!-- (6.2)--></li>
		<li><a href="http://www.neoease.com/wordpress-seo-tips/" rel="bookmark">WordPress SEO 技巧</a><!-- (5.8)--></li>
		<li><a href="http://www.neoease.com/wordpress-plugin-breadcrumb-navxt/" rel="bookmark">WordPress 面包屑插件 Breadcrumb NavXT</a><!-- (5.7)--></li>
		<li><a href="http://www.neoease.com/update-wordpress-manually/" rel="bookmark">手动升级 WordPress 的步骤</a><!-- (5.5)--></li>
		<li><a href="http://www.neoease.com/add-options-to-your-wordpress-theme/" rel="bookmark">为 WordPress 主题添加管理选项</a><!-- (5.5)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-message-board/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>魅族 M8 的 iPhone 风格主题 Suave</title>
		<link>http://www.neoease.com/meizu-m8-theme-iphone-style-suave/</link>
		<comments>http://www.neoease.com/meizu-m8-theme-iphone-style-suave/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 13:46:53 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[Skin]]></category>
		<category><![CDATA[Customization]]></category>
		<category><![CDATA[Icon]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[M8]]></category>
		<category><![CDATA[Suave]]></category>
		<category><![CDATA[Theme]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=1159</guid>
		<description><![CDATA[眨眼间, 手中 M8 手机已经买了一年. 自买了魅族的 M8 之后, 很多朋友问我这款手机好不好用, 值不值得买. 遇到这样的问题我真不知道如何回答, 毕竟人与人的需求和偏好各有不同. 我只能说, M8 性价比不错, 视频音频很好, 但是响应速度慢, 软件和第三方支持极少, 我个人并不满意. 无论如何, 既然买了, 我不能对不住自己的 2380 大元, 还是会用出它应有的价值, 也会偶尔美化一下. 今天看到一套 iPhone 风格的叫 Suave 的图标, 很是喜欢. 做了一套 M8 主题, 分享一下, 希望用 M8 的朋友会喜欢. 主题只支持 0.9.x 的 M8 固件, 预览图如下, 下载请到 Box.net 最后, 赞一下魅族的 M8SE 换机活动, 我在广州买的机, 用了刚 10 个月, 触摸屏被我搓坏了, [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
眨眼间, 手中 M8 手机已经买了一年. 自买了魅族的 M8 之后, 很多朋友问我这款手机好不好用, 值不值得买. 遇到这样的问题我真不知道如何回答, 毕竟人与人的需求和偏好各有不同. 我只能说, M8 性价比不错, 视频音频很好, 但是响应速度慢, 软件和第三方支持极少, 我个人并不满意.
</p>
<p>
无论如何, 既然买了, 我不能对不住自己的 2380 大元, 还是会用出它应有的价值, 也会偶尔美化一下. 今天看到一套 iPhone 风格的叫 <a rel="nofollow external" href="http://thyraz.deviantart.com/art/Suave-134190336">Suave</a> 的图标, 很是喜欢. 做了一套 M8 主题, 分享一下, 希望用 M8 的朋友会喜欢.
</p>
<p><span id="more-1159"></span></p>
<p>
主题只支持 0.9.x 的 M8 固件, 预览图如下, 下载请到 <a rel="nofollow external" href="http://www.boxcn.net/shared/149jo7uu0i">Box.net</a>
</p>
<p>
<img class="sided" src="http://farm5.static.flickr.com/4032/4299755197_d2f31b593b_o.jpg" alt="meizu, m8, iphone, skin, theme, suave" />
</p>
<p>
最后, 赞一下魅族的 M8SE 换机活动, 我在广州买的机, 用了刚 10 个月, 触摸屏被我搓坏了, 在杭州没花一分钱就换了个新机. 不过好像所有 09 年初买的机器都有这触摸屏问题, 换机人数超多, 魅族现在已经不敢玩了...</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1159" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/add-web-icon-to-home-screen-on-iphone-or-ipad/" rel="bookmark">为 iPhone 和 iPad 自定义网站的主屏幕图标</a><!-- (6.5)--></li>
		<li><a href="http://www.neoease.com/app-daily-push/" rel="bookmark">App 每日推送 - 挖掘免费 iPhone/iPad 应用</a><!-- (5.4)--></li>
		<li><a href="http://www.neoease.com/gnome-buuf-deuce/" rel="bookmark">Gnome-Buuf-Deuce</a><!-- (3)--></li>
		<li><a href="http://www.neoease.com/shiftie-pastel/" rel="bookmark">Shiftie Pastel</a><!-- (2)--></li>
		<li><a href="http://www.neoease.com/pidgin-status-icons/" rel="bookmark">Pidgin 状态图标</a><!-- (2)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/meizu-m8-theme-iphone-style-suave/feed/</wfw:commentRss>
		<slash:comments>62</slash:comments>
		</item>
		<item>
		<title>jQuery 导航菜单</title>
		<link>http://www.neoease.com/wordpress-menubar-6/</link>
		<comments>http://www.neoease.com/wordpress-menubar-6/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 10:00:59 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Menu]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=1062</guid>
		<description><![CDATA[已经写了好几个关于网页导航菜单的教程了, 我都是用原生 JavaScript 敲的代码, 一方面是为了读者更好地去理解其中的原理, 另一方面是让程序可以在不加载任何 framework 的情况下正常运行. 但是时间长了, 我发现越来越多人问我如何将这些效果集成到一些 JS 框架上, 尤其是 jQuery. 所以, 本节我们不探讨更多的效果, 而是将之前的一些菜单效果用 jQuery 来实现出来. 这次要用 jQuery 实现二级导航菜单, 淡出淡入导航菜单, 滚动导航菜单. 借助 jQuery 的强大动画, 我们需要的代码量非常少. 效果演示 二级导航菜单 淡出淡入导航菜单 滚动导航菜单 相关话题: WordPress 导航菜单 二级导航菜单 淡出淡入导航菜单 滚动导航菜单 多级导航菜单 jQuery 导航菜单 点选式导航菜单 (待定话题) 二级导航菜单 鼠标划过显示菜单, 离开隐藏菜单, 没有能比这个跟简单的了. jQuery&#40;document&#41;.ready&#40;function&#40;&#41;&#123; // 找到所有菜单, 并添加显示和隐藏菜单事件 jQuery&#40;'#menus &#62; li'&#41;.each&#40;function&#40;&#41;&#123; jQuery&#40;this&#41;.hover&#40; [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
已经写了好几个关于网页导航菜单的教程了, 我都是用原生 JavaScript 敲的代码, 一方面是为了读者更好地去理解其中的原理, 另一方面是让程序可以在不加载任何 framework 的情况下正常运行. 但是时间长了, 我发现越来越多人问我如何将这些效果集成到一些 JS 框架上, 尤其是 jQuery. 所以, 本节我们不探讨更多的效果, 而是将之前的一些菜单效果用 jQuery 来实现出来.
</p>
<p>
这次要用 jQuery 实现二级导航菜单, 淡出淡入导航菜单, 滚动导航菜单. 借助 jQuery 的强大动画, 我们需要的代码量非常少.
</p>
<p>
<strong>效果演示</strong><br />
<a href="http://www.neoease.com/tutorials/wordpress-menubar/wordpress-menubar-6.1/">二级导航菜单</a><br />
<a href="http://www.neoease.com/tutorials/wordpress-menubar/wordpress-menubar-6.2/">淡出淡入导航菜单</a><br />
<a href="http://www.neoease.com/tutorials/wordpress-menubar/wordpress-menubar-6.3/">滚动导航菜单</a>
</p>
<p><span id="more-1062"></span></p>
<h3>相关话题:</h3>
<p>
<a href="http://www.neoease.com/wordpress-menubar/">WordPress 导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-2/">二级导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-3/">淡出淡入导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-4/">滚动导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-5/">多级导航菜单</a><br />
<strong>jQuery 导航菜单</strong><br />
<em>点选式导航菜单</em> (待定话题)
</p>
<h3>二级导航菜单</h3>
<p>
鼠标划过显示菜单, 离开隐藏菜单, 没有能比这个跟简单的了.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">jQuery<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	<span style="color: #006600; font-style: italic;">// 找到所有菜单, 并添加显示和隐藏菜单事件</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#menus &gt; li'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hover</span><span style="color: #009900;">&#40;</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 显示菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">show</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 隐藏菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hide</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<h3>淡出淡入导航菜单</h3>
<p>
鼠标悬停显示淡入显示菜单, 离开淡出隐藏菜单. 需要加上延迟处理, 原因请参考请参考如下文章.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 线程 IDs</span>
<span style="color: #003366; font-weight: bold;">var</span> mouseover_tid <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> mouseout_tid <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
jQuery<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#menus &gt; li'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>index<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hover</span><span style="color: #009900;">&#40;</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 取消淡出菜单的线程, 延时淡入菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> _self <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">;</span>
				clearTimeout<span style="color: #009900;">&#40;</span>mouseout_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				mouseover_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> setTimeout<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					jQuery<span style="color: #009900;">&#40;</span>_self<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fadeIn</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">400</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 取消淡入菜单的线程, 延时淡出菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> _self <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">;</span>
				clearTimeout<span style="color: #009900;">&#40;</span>mouseover_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				mouseout_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> setTimeout<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					jQuery<span style="color: #009900;">&#40;</span>_self<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">400</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<h3>滚动导航菜单</h3>
<p>
鼠标悬停显示滚动展开菜单, 离开滚动卷起菜单. 需要加上延迟处理, 原因同淡出淡入导航菜单的处理.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 线程 IDs</span>
<span style="color: #003366; font-weight: bold;">var</span> mouseover_tid <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> mouseout_tid <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
jQuery<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#menus &gt; li'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>index<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hover</span><span style="color: #009900;">&#40;</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 取消卷起菜单的线程, 延时展开菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> _self <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">;</span>
				clearTimeout<span style="color: #009900;">&#40;</span>mouseout_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				mouseover_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> setTimeout<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					jQuery<span style="color: #009900;">&#40;</span>_self<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">slideDown</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">400</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
&nbsp;
			<span style="color: #006600; font-style: italic;">// 取消展开菜单的线程, 延时卷起菜单</span>
			<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
				<span style="color: #003366; font-weight: bold;">var</span> _self <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">;</span>
				clearTimeout<span style="color: #009900;">&#40;</span>mouseover_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				mouseout_tid<span style="color: #009900;">&#91;</span>index<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> setTimeout<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					jQuery<span style="color: #009900;">&#40;</span>_self<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul:eq(0)'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">slideUp</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">400</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<h3>演示主题:</h3>
<p>
以 WordPress 自带主题 default 为基础, 仅做学习参考使用, 修改过的文件有 <strong>header.php</strong> 和 <strong>style.css</strong>, 添加了文件 <strong>js/menu.js</strong>
</p>
<p>
<strong>下载主题:</strong> <a href="http://www.neoease.com/tutorials/wordpress-menubar/default_with_menubar_6.zip">default_with_menubar_6.zip</a></p>
<p>
jQuery 的确好用, 这么简便地就把效果做出来了. 撇开别的不错, 这时间就节省不少. 但这绝对是用来忽悠入门者的, 如果想知道其原理, 还是建议看一下之前的文章, 自己敲几个代码, 那样你会收获更多.
</p>
<p><h3>下回预告:</h3>
<p>
下次要不要谢谢 YUI 的实现方法呢? (Prototype 就算了, 我自己实现的代码结构就是模范 Prototype 的.)</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1062" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/jquery-slideup-and-slidedown/" rel="bookmark">jQuery 的 slideUp 和 slideDown 动画</a><!-- (33.7)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-3/" rel="bookmark">WordPress 淡出淡入导航菜单</a><!-- (16)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-4/" rel="bookmark">WordPress 滚动导航菜单</a><!-- (13)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar/" rel="bookmark">WordPress 导航菜单</a><!-- (11.8)--></li>
		<li><a href="http://www.neoease.com/lazy-load-jquery-plugin-delay-load-image/" rel="bookmark">Lazy Load, 延迟加载图片的 jQuery 插件</a><!-- (10.8)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-menubar-6/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>整合 Google 自定义搜索 CSE</title>
		<link>http://www.neoease.com/integrate-google-custom-search-into-wordpress/</link>
		<comments>http://www.neoease.com/integrate-google-custom-search-into-wordpress/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 10:51:37 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Search]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Trick]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=928</guid>
		<description><![CDATA[我发布的几款主题都可以在后台选择使用 Google Custom Search Engine (CSE), 但是并不提供内页处理, 搜索后会转跳到 Google.com. 包括我自己的博客, 一直也是如此. 今天折腾了一下, 把 Google 自定义搜索整合到了 WordPress 主题里面, 做成了内页显示. 其实很简单, 这就和大家分享一下. 为什么要使用 Google 自定义搜索 CSE? 1. WordPress 自带的搜索功能跟 Google 比起来实在太弱, 太弱, 太弱了. (当你的网站被 Google 收录良好, 这是很好的选择) 2. CSE 上可以显示 Google Adsense 为你带来一些广告收益. 为什么要将 CSE 整合到主题中? 1. 看起来整齐且舒服. 2. 不用转跳至 Google.com, 用户在本站的持续浏览. CSE 页面的工作原理. 1. 创建一个可访问的页面. (不搜索也可直接访问) [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://www.google.com/intl/en/images/logos/custom_search_logo_beta.gif" alt="Google Custom Search Engine" />
</p>
<p>
我发布的几款主题都可以在后台选择使用 <strong>Google Custom Search Engine</strong> (CSE), 但是并不提供内页处理, 搜索后会转跳到 Google.com. 包括我自己的博客, 一直也是如此.  今天折腾了一下, 把 <strong>Google 自定义搜索</strong>整合到了 WordPress 主题里面, 做成了内页显示. 其实很简单, 这就和大家分享一下.
</p>
<p><span id="more-928"></span></p>
<p>
<strong>为什么要使用 Google 自定义搜索 CSE?</strong><br />
1. WordPress 自带的搜索功能跟 Google 比起来实在太弱, 太弱, 太弱了. (当你的网站被 Google 收录良好, 这是很好的选择)<br />
2. CSE 上可以显示 Google Adsense 为你带来一些广告收益.
</p>
<p>
<strong>为什么要将 CSE 整合到主题中?</strong><br />
1. 看起来整齐且舒服.<br />
2. 不用转跳至 Google.com, 用户在本站的持续浏览.
</p>
<p>
<strong>CSE 页面的工作原理.</strong><br />
1. 创建一个可访问的页面. (不搜索也可直接访问)<br />
2. 搜索的时候带参转跳至该页面.<br />
3. 通过 JavaScript 对参数进行处理, 从 Google 获取数据并返回搜索结果.
</p>
<p>
<strong>如何把 Google CSE 集成到 WordPress 中?</strong><br />
你可以在我爱水煮鱼中找到答案:<br />
<a href="http://fairyfish.net/2008/04/29/integrate-google-custom-search-into-wordpress/">http://fairyfish.net/2008/04/29/integrate-google-custom-search-into-wordpress/</a><br />
如果你是 iNove 用户, 可以看看 whisperer 的教程:<br />
<a href="http://www.whisperer.name/2009/09/improve-the-google-custom-search-results-of-inove/">http://www.whisperer.name/2009/09/improve-the-google-custom-search-results-of-inove/</a>
</p>
<p>
<strong>为什么我不将这集成到发布的主题中?</strong><br />
这个功能需要后台添加页面和评论菜单项. 因为不是每个人都会折腾这玩意儿, 为免产生误解, 宁可不搞.
</p>
<p>
PS. iNove 主题可以将 googleSearchFrameWidth 设置为 605.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=928" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/google-analytics-new-version-2011/" rel="bookmark">新版 Google Analytics</a><!-- (9.1)--></li>
		<li><a href="http://www.neoease.com/wordpress-searchbox-tip/" rel="bookmark">WordPress 搜索框添加文字提示</a><!-- (8.1)--></li>
		<li><a href="http://www.neoease.com/googlecn-toolbar/" rel="bookmark">Google.cn 的首页工具栏</a><!-- (8)--></li>
		<li><a href="http://www.neoease.com/google-10th-birthday/" rel="bookmark">Google 10周年时间轴</a><!-- (7.9)--></li>
		<li><a href="http://www.neoease.com/google-blog-converters-appengine/" rel="bookmark">Google 帮你的博客搬家</a><!-- (7.6)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/integrate-google-custom-search-into-wordpress/feed/</wfw:commentRss>
		<slash:comments>55</slash:comments>
		</item>
		<item>
		<title>WordPress 动态加载文章内容</title>
		<link>http://www.neoease.com/load-posts-dynamically/</link>
		<comments>http://www.neoease.com/load-posts-dynamically/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 14:25:23 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=881</guid>
		<description><![CDATA[所谓的动态加载文章内容就是像 NeoEase 首页一样, 在点击展开按钮之后, 才去加载相应的文章. 其实这个效果是模仿 163 UED Team 的, 我没看过他们的 JavaScript 代码, 可能实现方法不一样, 但是原理应该是相似的. 下面我会就其优缺点和设计思路, 和实现方法说说我的理解. 为什么要动态加载文章? 1. 快速向访客展示页面 文章很容是包含大量文字和多媒体资源 (如: 图片, 视频, 音乐), 加载这些内容需要占用很多的时间. 如果你的页面上存在大量文章, 当访客发现页面久久没有加载完成就感到不耐烦. 这是动态加载文章的主要目的. 2. 让文章列表化 使页面上的文章成为一个列表, 减少页面的空间占用, 访客可以方便的移动到页面下方, 提高旧文章被点击的几率. 并且你可以在页面上放置更多的文章而不用担心页面过长. 为什么不动态加载文章? 1. 对搜索引擎不友好 搜索引擎优化的目的是将有价值的东西尽量多的向搜索爬虫展示, 包括最新的文章内容. 只有标题的文章让爬虫只知道这个文章而不知其文章侧重, 使用 JavaScript 输出的文章内容未必可以被抓取和分析. 这些对 SEO 来说都是不好的. 后来发现, 如果你的网站有固定的文章类型, 没有毕业在文章列表页显示太多文章内容, 表示影响不大. 2. 增加了请求次数 虽然将文章折叠起来, [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
所谓的动态加载文章内容就是像 <a href="http://www.neoease.com/">NeoEase 首页</a>一样, 在点击展开按钮之后, 才去加载相应的文章. 其实这个效果是模仿 <a rel="nofollow external" href="http://www.ued163.com/">163 UED Team</a> 的, 我没看过他们的 JavaScript 代码, 可能实现方法不一样, 但是原理应该是相似的. 下面我会就其优缺点和设计思路, 和实现方法说说我的理解.
</p>
<p><span id="more-881"></span></p>
<h3>为什么要动态加载文章?</h3>
<p>
<strong>1. 快速向访客展示页面</strong><br />
文章很容是包含大量文字和多媒体资源 (如: 图片, 视频, 音乐), 加载这些内容需要占用很多的时间. 如果你的页面上存在大量文章, 当访客发现页面久久没有加载完成就感到不耐烦. 这是动态加载文章的主要目的.
</p>
<p>
<strong>2. 让文章列表化</strong><br />
使页面上的文章成为一个列表, 减少页面的空间占用, 访客可以方便的移动到页面下方, 提高旧文章被点击的几率. 并且你可以在页面上放置更多的文章而不用担心页面过长.
</p>
<h3>为什么不动态加载文章?</h3>
<p>
<strong>1. 对搜索引擎不友好</strong><br />
搜索引擎优化的目的是将有价值的东西尽量多的向搜索爬虫展示, 包括最新的文章内容. 只有标题的文章让爬虫只知道这个文章而不知其文章侧重, 使用 JavaScript 输出的文章内容未必可以被抓取和分析. 这些对 SEO 来说都是不好的.<br />
后来发现, 如果你的网站有固定的文章类型, 没有毕业在文章列表页显示太多文章内容, 表示影响不大.
</p>
<p>
<strong>2. 增加了请求次数</strong><br />
虽然将文章折叠起来, 我们一般还是会想办法向访客显示前面的几篇文章. <del datetime="2011-01-18T17:26:17+00:00">这样对用户是友好的, 但是要增加请求的次数和数据库访问的次数.</del><br />
后来我有选择地显示部分文章内容, 而且不是通过异步加载的方式, 也就是说, 这个问题是可以通过简单的修改解决掉的.
</p>
<p>
<strong>3. 一些插件失效</strong><br />
因为需要自定义方法抓取文章, 如果不添加特殊处理, 很可能令部分 WordPress 插件失效.<br />
可以通过特殊处理解决掉, 以后文章中会提及.
</p>
<h3>动态加载文章的设计思路</h3>
<p>
<strong>1. 找到页面上所有文章</strong><br />
为每个文章添加一个展开/折叠按钮
</p>
<p>
<strong>2. 向文章添加展开/折叠按钮</strong><br />
点击按钮, 如果文章内容没有加载, 加载并展开文章内容.<br />
点击按钮, 如果文章内容已经加载, 则展开/折叠文章内容.
</p>
<p>
<strong>3. 加载文章内容</strong><br />
将文章的 id 发往后台, 在数据库中找到相应的文章内容并进行格式化, 返回响应显示在页面上.
</p>
<h3>JavaScript 处理代码分析</h3>
<p>
<strong>1. 找到页面上所有文章</strong>
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 在文档加载完毕的时候遍历所有匹配文章的元素</span>
jQuery<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'div.post'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #006600; font-style: italic;">// 如果元素相应位置是文章 ID</span>
		<span style="color: #003366; font-weight: bold;">var</span> id <span style="color: #339933;">=</span> jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'id'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009966; font-style: italic;">/^post\-[0-9]+$/</span>.<span style="color: #660066;">test</span><span style="color: #009900;">&#40;</span>id<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #006600; font-style: italic;">// 则为每个文章添加一个展开/折叠按钮</span>
			...
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>
<strong>2. 向文章添加展开/折叠按钮</strong>
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">toggle.<span style="color: #660066;">toggle</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #006600; font-style: italic;">// 展开</span>
	<span style="color: #006600; font-style: italic;">// 如果文章内容为空, 加载文章内容</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">' .content'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #3366CC;">''</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		...
	<span style="color: #009900;">&#125;</span>
	<span style="color: #006600; font-style: italic;">// 显示文章内容, 并切换按钮样式</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">' .content'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">slideDown</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">removeClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'collapse'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">addClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'expand'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
<span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #006600; font-style: italic;">// 折叠</span>
	<span style="color: #006600; font-style: italic;">// 隐藏文章内容, 并切换按钮样式</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">' .content'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">slideUp</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	jQuery<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">removeClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'expand'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">addClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'collapse'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #006600; font-style: italic;">// 将按钮追加到文章标题前方</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">prependTo</span><span style="color: #009900;">&#40;</span>jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">' h2'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>
<strong>3. 加载文章内容</strong>
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 取得文章 ID</span>
<span style="color: #003366; font-weight: bold;">var</span> postId <span style="color: #339933;">=</span> id.<span style="color: #660066;">slice</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #006600; font-style: italic;">// 使用 AJAX 获取并处理文章内容</span>
jQuery.<span style="color: #660066;">ajax</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
	type<span style="color: #339933;">:</span>         <span style="color: #3366CC;">'GET'</span>
	<span style="color: #339933;">,</span>url<span style="color: #339933;">:</span>         <span style="color: #3366CC;">'?action=load_post&amp;id='</span> <span style="color: #339933;">+</span> postId
	<span style="color: #339933;">,</span>cache<span style="color: #339933;">:</span>       <span style="color: #003366; font-weight: bold;">false</span>
	<span style="color: #339933;">,</span>dataType<span style="color: #339933;">:</span>    <span style="color: #3366CC;">'html'</span>
	<span style="color: #339933;">,</span>contentType<span style="color: #339933;">:</span> <span style="color: #3366CC;">'application/json; charset=utf-8'</span>
	<span style="color: #006600; font-style: italic;">// 取得返回内容之前显示加载信息</span>
	<span style="color: #339933;">,</span>beforeSend<span style="color: #339933;">:</span>  <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>loadPostContent<span style="color: #009900;">&#40;</span>id<span style="color: #339933;">,</span> <span style="color: #3366CC;">'&lt;p class=&quot;ajax-loader&quot;&gt;Loading...&lt;/p&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span>
	<span style="color: #006600; font-style: italic;">// 获取文章内容成功, 更新文章内容</span>
	<span style="color: #339933;">,</span>success<span style="color: #339933;">:</span>     <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>loadPostContent<span style="color: #009900;">&#40;</span>id<span style="color: #339933;">,</span> data<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span>
	<span style="color: #006600; font-style: italic;">// 获取文章内容失败, 显示出错提示</span>
	<span style="color: #339933;">,</span>error<span style="color: #339933;">:</span>       <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>loadPostContent<span style="color: #009900;">&#40;</span>id<span style="color: #339933;">,</span> <span style="color: #3366CC;">'&lt;p&gt;Oops, failed to load data.&lt;/p&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<h3>后台代码处理</h3>
<p>
这个功能的难点是前台的 JavaScript 处理, 以 ID 获取文章内容的代码可以参考 wp-includes/post-template.php 的 get_the_content 方法. 后来我写了个文章, 专门讲解如何处理后台响应, 可以参考这篇文章: <a href="http://www.neoease.com/ajax-load-wordpress-post-response/">《WordPress AJAX 加载文章内容 - 后台处理》</a>
</p>
<h3>备注</h3>
<p>
这是一篇不完整的教程, 因为我觉得这个功能还没完成. 在我的计划中, 还有针对搜索引擎优化部分和其他的一些页面效果, 但由于最近比较忙没有时间完善起来.
</p>
<p>
出此文的用意是提供一种解题思路, 引导各位去思考如何实现类似的效果. (这也是为什么我没有详细的说明 get_the_content 如何修改的原因)
</p>
<p>
最近发现已经有几个人实现了这样的效果, 并在给了网友们很多帮助, 我很高兴. 但某人的一些留言过于煽情 (广告成分太高), 我屏蔽掉了, 特此说明.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=881" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/ajax-load-wordpress-post-response/" rel="bookmark">WordPress AJAX 加载文章内容 - 后台处理</a><!-- (12)--></li>
		<li><a href="http://www.neoease.com/add-nofollow-to-read-more-link-on-wordpress/" rel="bookmark">为 WordPress 的 Read more 加上 nofollow</a><!-- (10.7)--></li>
		<li><a href="http://www.neoease.com/at-reply-tip-from-diff-page-works-2/" rel="bookmark">跨页悬浮显示 @ 评论 (代码篇)</a><!-- (10.7)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-6/" rel="bookmark">jQuery 导航菜单</a><!-- (9.7)--></li>
		<li><a href="http://www.neoease.com/wordpress-searchbox-tip/" rel="bookmark">WordPress 搜索框添加文字提示</a><!-- (8.9)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/load-posts-dynamically/feed/</wfw:commentRss>
		<slash:comments>92</slash:comments>
		</item>
		<item>
		<title>WordPress 嵌套回复</title>
		<link>http://www.neoease.com/wordpress-thread-comments/</link>
		<comments>http://www.neoease.com/wordpress-thread-comments/#comments</comments>
		<pubDate>Sat, 18 Jul 2009 12:00:09 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[Comment]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Thread Comments]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=876</guid>
		<description><![CDATA[WordPress 2.7 开始引入了原生的嵌套回复功能. 这是一个有争议的功能, 也是制作主题中一个难度较高的模块, 所以大家对它一直讨论不断. 要不要使用嵌套回复? (优缺点对照) 一部分人对这个功能垂涎已久, 在 WordPress 原生支持嵌套回复之前就尝试使用一些插件来支持该功能. 嵌套回复有很多优点: 1. 它可以提高用户体验, 调动访客回复的积极性, 从而增加评论的数量, 能让博客变得像社区一样活跃. 2. 博客的回复邮件通知功能越来越被重视, 因为它可以为你挽留一些游客. 另外评论者发表评论后也不用经常回来查看是否被答复, 可以在一定程度上提高互动性. 嵌套回复可以有针对性的对评论进行答复, 评论者只要收到邮件便可知其所答. 另一部分人不使用嵌套回复, 我就是其中之一. 为什么呢? 且听我慢慢道来. 任何事物都有其利弊, 嵌套回复也存在一些缺点: 1. 嵌套回复是一种依赖程序的显示结构, 也就是说, 只要你使用了一次, 以后必须使用, 否则评论的顺序就乱了. 假设现在有 A, B, C 三人, 他们都进行了一次评论, 操作如下: A 添加了一条评论. B 也添加了一条评论. C 回复了 A 的评论. 如果主题支持嵌套回复, 会得到以下的显示结构: A [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
WordPress 2.7 开始引入了原生的<strong>嵌套回复</strong>功能. 这是一个有争议的功能, 也是制作主题中一个难度较高的模块, 所以大家对它一直讨论不断.
</p>
<p>
<img class="sided" src="http://farm3.static.flickr.com/2590/3730973653_bcda6cfe6b.jpg?v=0" alt="WordPress 嵌套回复" />
</p>
<p><span id="more-876"></span></p>
<h3>要不要使用嵌套回复? (优缺点对照)</h3>
<p>
一部分人对这个功能垂涎已久, 在 WordPress 原生支持嵌套回复之前就尝试使用一些插件来支持该功能. 嵌套回复有很多优点:
</p>
<p>
1. 它可以提高用户体验, 调动访客回复的积极性, 从而增加评论的数量, 能让博客变得像社区一样活跃.
</p>
<p>
2. 博客的回复邮件通知功能越来越被重视, 因为它可以为你挽留一些游客. 另外评论者发表评论后也不用经常回来查看是否被答复, 可以在一定程度上提高互动性. 嵌套回复可以有针对性的对评论进行答复, 评论者只要收到邮件便可知其所答.
</p>
<p>
另一部分人不使用嵌套回复, 我就是其中之一. 为什么呢? 且听我慢慢道来. 任何事物都有其利弊, 嵌套回复也存在一些缺点:
</p>
<p>
1. 嵌套回复是一种依赖程序的显示结构, 也就是说, 只要你使用了一次, 以后必须使用, 否则评论的顺序就乱了. 假设现在有 A, B, C 三人, 他们都进行了一次评论, 操作如下:<br />
A 添加了一条评论.<br />
B 也添加了一条评论.<br />
C 回复了 A 的评论.
</p>
<p>
如果主题支持嵌套回复, 会得到以下的显示结构:
</p>
<blockquote><p>
A</p>
<blockquote><p>C</p></blockquote>
</blockquote>
<blockquote><p>B</p></blockquote>
<p>
但如果主题不支持嵌套, 则会显示如下:
</p>
<blockquote><p>A</p></blockquote>
<blockquote><p>B</p></blockquote>
<blockquote><p>C</p></blockquote>
<p>
也就是说, 页面结构将变得无比的混乱, 你不得不让当前主题支持嵌套回复, 或者使用插件对其进行支持. 这就是对程序的依赖, 除非精通其制作原理, 否则它会限制你对主题和插件的选择.
</p>
<p>
2. 嵌套回复有针对性的回复功能 (针对某条评论进行回复) 是它的优势, 同时也是他的劣势. 如果有 100 个人在你的一篇文章中发表了评论, 并且你习惯对大部分评论都进行回复, 那是不是你也需要回复差不多 100 次? 如果这样的话, @ 回复比嵌套回复更适合你.
</p>
<p>
3. 嵌套回复依赖浏览器对 JavaScript 的支持.
</p>
<p>
我不使用嵌套回复也是因为前两个原因, 我不敢确定自己以后会一直使用嵌套回复, 并且在我的回复者中, 经常出现几个人提问同一个问题. 使用 @reply 是一个折中的选择, 我可以在一个回复中回答网友的评论, 并且我无需对相同的提问进行多次回答; 另外, 通过一些插件, 我同样可以实现回复邮件通知的功能, 仅是邮件内容稍为复杂罢了.
</p>
<h3>怎样将嵌套回复功能集成到主题中?</h3>
<p>
在主题中实现嵌套回复的方法有二, 包括 WordPress 提供的默认方法和自定义的回调方法. 下面我会讲解一下如何实现起嵌套结构, CSS 部分请自行研究.
</p>
<p>
<strong>默认方法:</strong><br />
WordPress 提供的基本的嵌套风格, default 主题用的就是这种模式.<br />
优点: 方便使用, 减少代码量.<br />
缺点: 代码结构不好, 不可能适合所有的主题.<br />
实现步骤如下:
</p>
<p>
1. 在 header.php 的 <em>&lt;?php wp_head(); ?&gt;</em> 前方添加以下代码.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>is_singular<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> wp_enqueue_script<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'comment-reply'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
其作用是加载嵌套回复所需的 JavaScript 代码. (也就是说, 如果浏览器不支持 JavaScript, 嵌套回复就没法实现)
</p>
<p>
2. 在 comments.php 文件的顶部添加以下代码.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">empty</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'SCRIPT_FILENAME'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #0000ff;">'comments.php'</span> <span style="color: #339933;">==</span> <span style="color: #990000;">basename</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'SCRIPT_FILENAME'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #990000;">die</span> <span style="color: #009900;">&#40;</span>__<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Please do not load this page directly. Thanks!'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
3. 在 comments.php 文件的评论列表元素中添加以下代码调用所有相关评论.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_comments<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
4. 在 comments.php 的 id="commentform" 元素内部添加以下代码.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> comment_id_fields<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
和表单的适当取消回复按钮, 代码如下.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> cancel_comment_reply_link<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
5. 将所有调用评论部分的代码由
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> comments_template<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
修改为一下代码
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> comments_template<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
<strong>回调方法:</strong><br />
在基本嵌套的基础上, 定义 callback 方法以重新定义评论的内容和布局.<br />
优点: 灵活多变<br />
缺点: 增加大量代码
</p>
<blockquote><p>
关于自定义嵌套回复, 我在之前的文章 <a href="">"更新至 WordPress 2.7 正式版"</a> 中误报了一个 bug. 在此, 我向所有读过此文的读者道歉.
</p></blockquote>
<p>
1. 在默认方法的基础上, 添加一个回调函数, 以取代 WordPress 默认的评论布局. 我在 function.php 中添加了一个名为 <code>custom_comments</code> 的方法. 这里需要注意, 请不要加上结束的 <code>&lt;/li&gt;</code> 标签, 我会在后续文章中说明具体为何不能加上.
</p>
<p>
2. 在 comments.php 中将
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_comments<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
修改为以下代码以调用自定义的 <code>custom_comments</code> 方法
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_comments<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'callback=custom_comments'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
详细代码可以参考本人制作的 <a href="http://www.neoease.com/blocks/">Blocks 主题</a>.
</p>
<h3>什么主题适合添加嵌套回复?</h3>
<p>
在主题中添加嵌套回复是个麻烦事, 它很折腾人, 而且会打乱整个主题结构, 直到现在我还在怀疑官方是否应该原生地支持嵌套回复. 但既然支持了很应该尝试一下, 那是不是所有的主题都适合添加嵌套回复功能? 我觉得不是.
</p>
<p>
对于一些图片较多的, 或者评论页面结构复杂的主题, 显然是不适合的, 这就是为什么我一直不在 <a href="http://www.neoease.com/inove/">iNove</a> 添加嵌套回复功能的原因. 但是对于一些不依赖图片的主题, 如 <a href="http://www.neoease.com/blocks/">Blocks</a> 就很适合添加.
</p>
<p>
另外, 还需要根据你的需求判断是否支持嵌套回复, 支持多少层的回复? 最深层次是 10, 但我们可以只支持到第二或者第三层, 以降低开发成本.
</p>
<h3>后记</h3>
<p>
不知为何, 没有使用嵌套回复的我被多次问及相关的问题. 因为嵌套回复实现复杂, 难以维护, 和其他一些原因, 很多主题没有支持嵌套回复, 但很多人却是对它情有独钟, 我觉得可以将我的理解和大家分享一下.
</p>
<p>
接下来, 我还会另起文章讲解一下 "<a href="http://www.neoease.com/wordpress-walker-comments/">嵌套回复的工作原理</a>" 和 "如何在兼容多个 WordPress 版本的前提下实现嵌套回复", 如果你有更好的建议或者任何意见, 请在此留言.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=876" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/blocks/" rel="bookmark">WordPress 主题 Blocks</a><!-- (7.8)--></li>
		<li><a href="http://www.neoease.com/wordpress-27-comment-pages/" rel="bookmark">主题技巧: WordPress 2.7 的评论分页</a><!-- (7.4)--></li>
		<li><a href="http://www.neoease.com/wordpress-comment-pages-bug/" rel="bookmark">WordPress 评论分页的一个 bug 与解决办法</a><!-- (7.3)--></li>
		<li><a href="http://www.neoease.com/blocks-for-yo2/" rel="bookmark">WordPress 主题 Blocks (YO2 版本)</a><!-- (7.1)--></li>
		<li><a href="http://www.neoease.com/wordpress-guest-post/" rel="bookmark">提高 WordPress 访客评论时的用户体验</a><!-- (7)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-thread-comments/feed/</wfw:commentRss>
		<slash:comments>96</slash:comments>
		</item>
		<item>
		<title>WordPress 按分类显示友情链接</title>
		<link>http://www.neoease.com/show-wordpress-links-order-by-category/</link>
		<comments>http://www.neoease.com/show-wordpress-links-order-by-category/#comments</comments>
		<pubDate>Sun, 28 Jun 2009 07:45:03 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=872</guid>
		<description><![CDATA[友情链接仍是网站推广的一个重要手段, 网站之间频繁的链接交换活动使得Links 页面似乎已经成为了每个博客的必须的组成部分. WordPress 系统的 default 主题也自带了这个页面模板 (links.php). 我的主题同样带有页面模板, 但为了界面美观和简化处理, 我并没有将这些链接按分类来进行显示. 后来我觉得按分类处理还是有必要的, 不久前我开始在自己博客上做了些相关实验, 貌似网友们也比较喜欢将链接按分类进行显示. 那怎样才能按分类来显示友情链接呢? 咱们先了解一下获取链接列表的方法. 请打开 default 主题的 links.php 文件, 它的内容很简单, 调用链接列表的代码如下: &#60;?php wp_list_bookmarks&#40;&#41;; ?&#62; 这句代码将调出所有链接, 并按分类显示出来, 是一个嵌套的列表结构. 关于 wp_list_bookmarks 方法可以参看 wp-includes/bookmark-template.php 的源代码和 Codex 的使用说明. 既然实现如此简单方便, 为什么不使用这个代码来做呢? 因为代码结构不易进行加工, 所以我将所有链接不分类进行处理, 代码如下: &#60;?php wp_list_bookmarks&#40;'title_li=&#38;categorize=0&#38;orderby=rand'&#41;; ?&#62; 这段代码的意思是: 没有标题, 不进行分类, 链接位置随机安排. 在 iNove 中整个链接框的实现代码如下: &#60;div class=&#34;boxcaption&#34;&#62;&#60;h3&#62;&#60;?php _e&#40;'Blogroll', 'inove'&#41;; [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
友情链接仍是网站推广的一个重要手段, 网站之间频繁的链接交换活动使得<strong>Links 页面</strong>似乎已经成为了每个博客的必须的组成部分. WordPress 系统的 default 主题也自带了这个页面模板 (links.php).
</p>
<p>
我的主题同样带有页面模板, 但为了界面美观和简化处理, 我并没有将这些链接按分类来进行显示. 后来我觉得按分类处理还是有必要的, 不久前我开始在自己博客上做了些相关实验, 貌似网友们也比较喜欢将链接按分类进行显示.
</p>
<p><span id="more-872"></span></p>
<h3>那怎样才能按分类来显示友情链接呢?</h3>
<p>
咱们先了解一下获取链接列表的方法.<br />
请打开 default 主题的 links.php 文件, 它的内容很简单, 调用链接列表的代码如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
这句代码将调出所有链接, 并按分类显示出来, 是一个嵌套的列表结构. 关于 wp_list_bookmarks 方法可以参看 wp-includes/bookmark-template.php 的源代码和 <a href="http://codex.wordpress.org/Template_Tags/wp_list_bookmarks">Codex 的使用说明</a>.
</p>
<h3>既然实现如此简单方便, 为什么不使用这个代码来做呢?</h3>
<p>
因为代码结构不易进行加工, 所以我将所有链接不分类进行处理, 代码如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'title_li=&amp;categorize=0&amp;orderby=rand'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
这段代码的意思是: 没有标题, 不进行分类, 链接位置随机安排.<br />
在 iNove 中整个链接框的实现代码如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div class=&quot;boxcaption&quot;&gt;&lt;h3&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Blogroll'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'inove'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/h3&gt;&lt;/div&gt;
&lt;div class=&quot;box linkcat&quot;&gt;
	&lt;ul&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'title_li=&amp;categorize=0&amp;orderby=rand'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/ul&gt;
	&lt;div class=&quot;fixed&quot;&gt;&lt;/div&gt;
&lt;/div&gt;</pre></div></div>

<h3>那是否可以按照自己的意愿来显示其中一个分类呢?</h3>
<p>
是可以的! 我们可以通过以下代码只获取属于名字为 'firend' 的分类的所有链接:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #000088;">$bookmarks</span> <span style="color: #339933;">=</span> get_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'category_name=firend'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
关于 get_bookmarks 方法可以参看 wp-includes/bookmark.php 的源代码和 <a href="http://codex.wordpress.org/Function_Reference/get_bookmarks">Codex 的使用说明</a>.
</p>
<p>那么我们可以通过下面的代码来显示名字为 'firend' 的分类的链接, 取代显示所有链接.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div class=&quot;boxcaption&quot;&gt;&lt;h3&gt;firend&lt;/h3&gt;&lt;/div&gt;
&lt;div class=&quot;box linkcat&quot;&gt;
	&lt;ul&gt;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span>
		<span style="color: #000088;">$bookmarks</span> <span style="color: #339933;">=</span> get_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'category_name=firend'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #990000;">empty</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$bookmarks</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$bookmarks</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$bookmark</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;li&gt;&lt;a href=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_url</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot; title=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_description</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot;&gt;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_name</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&lt;/a&gt;&lt;/li&gt;'</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">?&gt;</span>
	&lt;/ul&gt;
	&lt;div class=&quot;fixed&quot;&gt;&lt;/div&gt;
&lt;/div&gt;</pre></div></div>

<h3>既然一个可以显示, 是不是所有分类都可以这样显示出来?</h3>
<p>
当然可以, 现在要想办法把所有链接分类找出来. 为此, 我们可以先看一下数据库中分类的存储结构:
</p>
<p>
<img class="sided" src="http://farm4.static.flickr.com/3565/3667626650_581539007d_o.png" alt="WordPress Taxonomy" />
</p>
<p>
可以看出, 我们只需要在 terms 表中出去相应数据元组对应的 name 属性就 OK 了. 所以这里需要通过 term_id 和 terms_taxonomy 表联一下, 并且将 taxonomy 的值限定为 'link_category'. SQL 如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> T1<span style="color: #66cc66;">.</span>name <span style="color: #993333; font-weight: bold;">AS</span> name
<span style="color: #993333; font-weight: bold;">FROM</span>   $wpdb<span style="color: #66cc66;">-&gt;</span>terms T1<span style="color: #66cc66;">,</span>
       $wpdb<span style="color: #66cc66;">-&gt;</span>term_taxonomy T2
<span style="color: #993333; font-weight: bold;">WHERE</span>  T1<span style="color: #66cc66;">.</span>term_id <span style="color: #66cc66;">=</span> T2<span style="color: #66cc66;">.</span>term_id
<span style="color: #993333; font-weight: bold;">AND</span>    T2<span style="color: #66cc66;">.</span>taxonomy <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'link_category'</span></pre></div></div>

<p>
通过以上 SQL 我们可以将所有链接分类的名字找出来, 然后做一个循环处理, 把链接按照分类查找出来, 并置于页面中.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000088;">$linkcats</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">get_results</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SELECT T1.name AS name FROM <span style="color: #006699; font-weight: bold;">$wpdb-&gt;terms</span> T1, <span style="color: #006699; font-weight: bold;">$wpdb-&gt;term_taxonomy</span> T2 WHERE T1.term_id = T2.term_id AND T2.taxonomy = 'link_category'&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$linkcats</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$linkcats</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$linkcat</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
	&lt;div class=&quot;boxcaption&quot;&gt;&lt;h3&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$linkcat</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">name</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/h3&gt;&lt;/div&gt;
	&lt;div class=&quot;box linkcat&quot;&gt;
		&lt;ul&gt;
			<span style="color: #000000; font-weight: bold;">&lt;?php</span>
				<span style="color: #000088;">$bookmarks</span> <span style="color: #339933;">=</span> get_bookmarks<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'orderby=rand&amp;category_name='</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$linkcat</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">name</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #990000;">empty</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$bookmarks</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$bookmarks</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$bookmark</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
						<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;li&gt;&lt;a href=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_url</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot; title=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_description</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot;&gt;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$bookmark</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link_name</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&lt;/a&gt;&lt;/li&gt;'</span><span style="color: #339933;">;</span>
					<span style="color: #009900;">&#125;</span>
				<span style="color: #009900;">&#125;</span>
			<span style="color: #000000; font-weight: bold;">?&gt;</span>
		&lt;/ul&gt;
		&lt;div class=&quot;fixed&quot;&gt;&lt;/div&gt;
	&lt;/div&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endforeach</span><span style="color: #339933;">;</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
使用 default 主题的处理方法的好处是简单, 方便, 但缺乏灵活性. 对于后一种方法, 需要有些许代码能力才能实现, 但并不是很难. 在决定要使用什么方法前请权衡时间, 能力, 需求等多方面的因素, 不可能尽善尽美, 适合自己就是最好的. 请不要发信请求我帮你修改, 我会在所有主题的下个版本中加入这个功能.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=872" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/wordpress-comment-pages-bug/" rel="bookmark">WordPress 评论分页的一个 bug 与解决办法</a><!-- (8.8)--></li>
		<li><a href="http://www.neoease.com/show-different-widgets-in-wordpress-sidebar/" rel="bookmark">WordPress 不同页面显示不一样的侧边栏</a><!-- (7.3)--></li>
		<li><a href="http://www.neoease.com/wordpress-bogus-users/" rel="bookmark">WordPress 防止冒充留言</a><!-- (6.6)--></li>
		<li><a href="http://www.neoease.com/spliting-blogroll-to-2-columns-02/" rel="bookmark">将 Blogroll 分为两栏 (2)</a><!-- (6.5)--></li>
		<li><a href="http://www.neoease.com/ajax-load-wordpress-post-response/" rel="bookmark">WordPress AJAX 加载文章内容 - 后台处理</a><!-- (6.5)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/show-wordpress-links-order-by-category/feed/</wfw:commentRss>
		<slash:comments>42</slash:comments>
		</item>
		<item>
		<title>Blocks 3.0 主题需求调查</title>
		<link>http://www.neoease.com/blocks-3-requirements/</link>
		<comments>http://www.neoease.com/blocks-3-requirements/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 15:37:52 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[Blocks]]></category>
		<category><![CDATA[Feedback]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=871</guid>
		<description><![CDATA[Blocks 是一个清雅的, 零图片的 WordPress 主题, 移植自本人在 Opera 的博客界面. 在 WordPress 上得到更大的开发自由度, 不断优化至今. 3.0 版本预计会在今年 7 月发布, 离上次更新已有半年之久. 既然要更新, 我想做得可以彻底一点, 所以希望能够得到大家的建议和测试反馈. 正在开发的版本可以在以下测试站点试用: http://demo.neoease.com/index.php?wptheme=Blocks 对于本次更新, 我已经做了以下一些修改: 新增: 兼容 IE8 兼容 WordPress 2.8 支持多级菜单 添加日历 Widget 的样式 支持 'Mail To Commenter' 插件 在链接页面新增 '添加链接' 的按钮 (方便一点) 在文章中添加文章作者的链接和头像, 作为后台选项 (适合 Group Blog) 添加 'Ctrl+Enter' 快捷键提交评论 添加横幅广告位置及其后台选项 添加网页分析工具后台选项 更改: 更正 [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://www.neoease.com/blocks/">Blocks</a> 是一个清雅的, 零图片的 WordPress 主题, 移植自本人在 Opera 的博客界面. 在 WordPress 上得到更大的开发自由度, 不断优化至今. 3.0 版本预计会在今年 7 月发布, 离上次更新已有半年之久. 既然要更新, 我想做得可以彻底一点, 所以希望能够得到大家的建议和测试反馈.
</p>
<p>
正在开发的版本可以在以下测试站点试用:<br />
<a href="http://demo.neoease.com/index.php?wptheme=Blocks">http://demo.neoease.com/index.php?wptheme=Blocks</a>
</p>
<p><span id="more-871"></span></p>
<p>
对于本次更新, 我已经做了以下一些修改:
</p>
<p>
<strong>新增:</strong><br />
兼容 IE8<br />
兼容 WordPress 2.8<br />
支持多级菜单<br />
添加日历 Widget 的样式<br />
支持 'Mail To Commenter' 插件<br />
在链接页面新增 '添加链接' 的按钮 (方便一点)<br />
在文章中添加文章作者的链接和头像, 作为后台选项 (适合 Group Blog)<br />
添加 'Ctrl+Enter' 快捷键提交评论<br />
添加横幅广告位置及其后台选项<br />
添加网页分析工具后台选项
</p>
<p>
<strong>更改:</strong><br />
更正 W3C 验证链接 (原本的 CSS 验证链接没加上 referer 参数)<br />
将所有的 '&lt;?' 标记改为 '&lt;?php' (因为某些服务器的 PHP 禁止使用 '&lt;?')<br />
修改表格的样式 (美观一点)<br />
优化获取 copyright 时间的 SQL (提高效率)<br />
更改文章信息的布局 (简化布局, 也免得标签过多时错位)<br />
更改作者存档的提示信息 (本来只显示 Author Archive, 现在显示为 Archive by {作者昵称})
</p>
<p>
<strong>修复:</strong><br />
修复当留言超多时 (10万条以上) 发生的后台留言页面显示错误<br />
防止侧边栏在 IE6 中被挤到内容下方<br />
解决 IE 中和其他浏览器嵌套回复风格不一的问题<br />
修复 'New post' 按钮的链接<br />
修复图片 captions 左对齐和右对齐错位的问题
</p>
<p>
<strong>移除:</strong><br />
移除 'description' 和 'keywords' 选项 (因为和很多 SEO 插件发生冲突)<br />
移除图片转换功能 (除了我几乎没有人在用, 留着浪费资源)<br />
移除侧边栏宽度调整的选项.<br />
不再支持 WordPress 2.3.x.
</p>
<p>
对于该主题, 无论是否与本次修改相关, 都欢迎你可以在此提出意见和建议. 如果有任何疑问, 也可在此提问, 我会尽我所能来解答 (不保证能为你提供完整的解决步骤, 但可以说出我的思路).</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=871" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/navigation-on-blocks-them/" rel="bookmark">在 Blocks 上实现分页导航</a><!-- (10.2)--></li>
		<li><a href="http://www.neoease.com/blocks/" rel="bookmark">WordPress 主题 Blocks</a><!-- (9.3)--></li>
		<li><a href="http://www.neoease.com/blocks-for-yo2/" rel="bookmark">WordPress 主题 Blocks (YO2 版本)</a><!-- (8.3)--></li>
		<li><a href="http://www.neoease.com/blocks2-theme-upload/" rel="bookmark">Blocks2 主题提交记</a><!-- (4.5)--></li>
		<li><a href="http://www.neoease.com/wp-recentcomments-16-problem/" rel="bookmark">WP-RecentComments 升级 1.6 后可能出现的问题</a><!-- (4.5)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/blocks-3-requirements/feed/</wfw:commentRss>
		<slash:comments>88</slash:comments>
		</item>
		<item>
		<title>WordPress 多级导航菜单</title>
		<link>http://www.neoease.com/wordpress-menubar-5/</link>
		<comments>http://www.neoease.com/wordpress-menubar-5/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 16:00:26 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Trick]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Menu]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=867</guid>
		<description><![CDATA[多级导航菜单, 是指菜单存在多个层次, 层层嵌套, 当鼠标移动到某个菜单时, 如果其包含子菜单则将相应的子菜单显示出来. 本文将提供此功能在 WordPress 的实现方法, 一般的 HTML 页面和其他程序也可以加工套用. 时隔 9 个多月, 关于导航菜单的话题又回来了. 上次写到三级菜单就不写了是因为我发现自己根本用不上, 就没去研究. 最近我在做一个小玩意儿用到了这个, 所以把它给做了出来并集成到 iNove 主题上. 因为内容繁多, 所以还是以之前的文章和代码作为基础来展开讲解, 希望这个文章会对大家有所帮助. 为了简化处理, 明确目标, 这次我们会以二级导航菜单作为原型进行扩展. 本文只对多级菜单相关处理进行讨论, 其他内容请参考以前的几篇关于菜单导航的文章, 文章链接你可以在本文相关话题中找到. 这是效果演示 相关话题: WordPress 导航菜单 二级导航菜单 淡出淡入导航菜单 滚动导航菜单 jQuery 导航菜单 多级导航菜单 点选式导航菜单 (待定话题) 作业分析: 因为菜单由本来的二级菜单变成了多级菜单, 所以菜单结构会有些变化 (会有新的更深层的子菜单加入). 另外, 页面的样式和脚本都会有相应的变更, 重点在于对 JavaScript 的加工. 主要操作如下: 1. 鼠标移动到一级菜单的菜单项时, 如果该菜单项包含了二级菜单, [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
<strong>多级导航菜单</strong>, 是指菜单存在多个层次, 层层嵌套, 当鼠标移动到某个菜单时, 如果其包含子菜单则将相应的子菜单显示出来. 本文将提供此功能在 WordPress 的实现方法, 一般的 HTML 页面和其他程序也可以加工套用.
</p>
<p>
<img class="sided" src="http://farm4.static.flickr.com/3319/3619925294_15399c9e4b_o.png" alt="Multi Level Menus" />
</p>
<p>
时隔 9 个多月, 关于导航菜单的话题又回来了. 上次写到三级菜单就不写了是因为我发现自己根本用不上, 就没去研究. 最近我在做一个小玩意儿用到了这个, 所以把它给做了出来并集成到 <a href="http://www.neoease.com/inove/">iNove</a> 主题上. 因为内容繁多, 所以还是以之前的文章和代码作为基础来展开讲解, 希望这个文章会对大家有所帮助.
</p>
<p><span id="more-867"></span></p>
<p>
为了简化处理, 明确目标, 这次我们会以二级导航菜单作为原型进行扩展. 本文只对多级菜单相关处理进行讨论, 其他内容请参考以前的几篇关于菜单导航的文章, 文章链接你可以在本文相关话题中找到.
</p>
<p>
<a href="http://www.neoease.com/tutorials/wordpress-menubar/wordpress-menubar-5/">这是效果演示</a>
</p>
<h3>相关话题:</h3>
<p>
<a href="http://www.neoease.com/wordpress-menubar/">WordPress 导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-2/">二级导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-3/">淡出淡入导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-4/">滚动导航菜单</a><br />
<a href="http://www.neoease.com/wordpress-menubar-6/">jQuery 导航菜单</a><br />
<strong>多级导航菜单</strong><br />
点选式导航菜单 (待定话题)
</p>
<h3>作业分析:</h3>
<p>
因为菜单由本来的二级菜单变成了多级菜单, 所以菜单结构会有些变化 (会有新的更深层的子菜单加入). 另外, 页面的样式和脚本都会有相应的变更, 重点在于对 JavaScript 的加工.
</p>
<p>主要操作如下:<br />
1. 鼠标移动到一级菜单的菜单项时, 如果该菜单项包含了二级菜单, 那么在下方显示其子菜单.<br />
2. 鼠标移动到 N (N >= 2) 级菜单的菜单项时, 如果该菜单项包含了 N+1 级菜单, 那么在右侧显示其子菜单.
</p>
<h3>预想结构:</h3>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;div id=&quot;menubar&quot;&gt;
	&lt;ul class=&quot;menus&quot;&gt;
		&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;
		&lt;li class=&quot;...&quot;&gt;
			&lt;a href=&quot;http://.../&quot;&gt;菜单1&lt;/a&gt;
			&lt;ul class=&quot;children&quot;&gt;
				&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单11&lt;/a&gt;&lt;/li&gt;
				&lt;li class=&quot;...&quot;&gt;
					&lt;a href=&quot;http://.../&quot;&gt;菜单12&lt;/a&gt;
					&lt;ul class=&quot;children&quot;&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单121&lt;/a&gt;&lt;/li&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单122&lt;/a&gt;&lt;/li&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单123&lt;/a&gt;&lt;/li&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单124&lt;/a&gt;&lt;/li&gt;
					&lt;/ul&gt;
				&lt;/li&gt;
				&lt;li class=&quot;...&quot;&gt;
					&lt;a href=&quot;http://.../&quot;&gt;菜单13&lt;/a&gt;
					&lt;ul class=&quot;children&quot;&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单131&lt;/a&gt;&lt;/li&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单132&lt;/a&gt;&lt;/li&gt;
					&lt;/ul&gt;
				&lt;/li&gt;
			&lt;/ul&gt;
		&lt;/li&gt;
		&lt;li class=&quot;...&quot;&gt;
			&lt;a href=&quot;http://.../&quot;&gt;菜单2&lt;/a&gt;
			&lt;ul class=&quot;children&quot;&gt;
				&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单21&lt;/a&gt;&lt;/li&gt;
			&lt;/ul&gt;
		&lt;/li&gt;
		&lt;li class=&quot;...&quot;&gt;
			&lt;a href=&quot;http://.../&quot;&gt;菜单3&lt;/a&gt;
			&lt;ul class=&quot;children&quot;&gt;
				&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单31&lt;/a&gt;&lt;/li&gt;
				&lt;li class=&quot;...&quot;&gt;
					&lt;a href=&quot;http://.../&quot;&gt;菜单32&lt;/a&gt;
					&lt;ul class=&quot;children&quot;&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单321&lt;/a&gt;&lt;/li&gt;
						&lt;li class=&quot;...&quot;&gt;&lt;a href=&quot;http://.../&quot;&gt;菜单322&lt;/a&gt;&lt;/li&gt;
					&lt;/ul&gt;
				&lt;/li&gt;
			&lt;/ul&gt;
		&lt;/li&gt;
		...
	&lt;/ul&gt;
&lt;/div&gt;</pre></div></div>

<h3>实施操作:</h3>
<p>
<strong>1. 调出无限级菜单 (子分类)</strong><br />
是否还记得如何设定列表的深度? 可以通过参数 depth 来进行设定. 当我们将深度设为 1 时不显示子分类, 将深度设为 2 时显示二级菜单. 现在我们要无限制层数的菜单, 所以可以去除这个参数, 系统会自动返回所有菜单. 所以显示菜单的代码如下:
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_list_pages<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'depth=2&amp;title_li=0&amp;sort_column=menu_order'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>
<strong>2. 修改菜单的样式</strong><br />
在子菜单项添加 <code>display:inline;</code> 以免在 IE (IE6/IE7/IE8) 中发生错位.
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/* 子菜单的菜单项 */</span>
<span style="color: #cc00cc;">#menubar</span> ul<span style="color: #6666ff;">.children</span> li <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* 垂直排列 */</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #808080; font-style: italic;">/* multi 2009/06/11 ADD START */</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* 对 IE 来说十分很重要 */</span>
	<span style="color: #808080; font-style: italic;">/* multi 2009/06/11 ADD END */</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
追加包含子菜单的菜单项的样式
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#menubar</span> ul<span style="color: #6666ff;">.children</span> li a<span style="color: #6666ff;">.subtitle</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border-right</span><span style="color: #00AA00;">:</span><span style="color: #933;">3px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#4281B7</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">97px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
添加当前菜单的效果, 以明确当前路径.
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#menubar</span> ul<span style="color: #6666ff;">.menus</span> li a<span style="color: #3333ff;">:hover</span><span style="color: #00AA00;">,</span> 
<span style="color: #808080; font-style: italic;">/* multi 2009/06/11 ADD START */</span>
<span style="color: #cc00cc;">#menubar</span> ul<span style="color: #6666ff;">.menus</span> li a<span style="color: #6666ff;">.current</span> <span style="color: #00AA00;">&#123;</span>
<span style="color: #808080; font-style: italic;">/* multi 2009/06/11 ADD END */</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#4281B7</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* 背景颜色 */</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
<strong>3. 加载菜单</strong><br />
加载菜单是应该分开处理, 对于对层次的菜单, 菜单显示有两种状态. (1) 作为二级菜单显示在上一级菜单的下方; (2) 而三级和以上层次的菜单则会显示在上一级菜单的右侧.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 找到所有的菜单</span>
<span style="color: #003366; font-weight: bold;">var</span> menus <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span>.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'ul'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> i <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> menus.<span style="color: #660066;">length</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #006600; font-style: italic;">// 找到菜单的父节点 (包括标题链接部分)</span>
	<span style="color: #003366; font-weight: bold;">var</span> menu <span style="color: #339933;">=</span> menus<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">parentNode</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 如果菜单的父节点就是根菜单, 显示一般的菜单</span>
	<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>menu.<span style="color: #660066;">parentNode</span> <span style="color: #339933;">===</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">new</span> Menu<span style="color: #009900;">&#40;</span>menu<span style="color: #339933;">,</span> opacity<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 如果菜单的父节点不是根菜单, 说明当前菜单是子菜单</span>
	<span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">new</span> Menu<span style="color: #009900;">&#40;</span>menu<span style="color: #339933;">,</span> opacity<span style="color: #339933;">,</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #006600; font-style: italic;">// 在子菜单的标题链接上加上 class 名, 以便定义样式</span>
		menu.<span style="color: #660066;">firstChild</span>.<span style="color: #660066;">className</span> <span style="color: #339933;">+=</span> <span style="color: #3366CC;">' subtitle'</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>
<strong>4. 菜单的初始化</strong><br />
添加一个参数, 以识别是否为子菜单 (三级以上的菜单); 去除 overflow:hidden; 的设置, 否则子菜单无法显示出来.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">initialize<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>target<span style="color: #339933;">,</span> opacity<span style="color: #339933;">,</span> sub<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> MenuUtil<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 获取目标菜单 (没多余元素)</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">cleanWhitespace</span><span style="color: #009900;">&#40;</span>target<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 定义透明度, 默认透明</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">opacity</span> <span style="color: #339933;">=</span> opacity <span style="color: #339933;">||</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">/* multi 2009/06/11 ADD START */</span>
	<span style="color: #006600; font-style: italic;">// 是否为子菜单</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">sub</span> <span style="color: #339933;">=</span> sub <span style="color: #339933;">||</span> <span style="color: #339933;">-</span><span style="color: #CC0000;">1</span><span style="color: #339933;">;</span>
	<span style="color: #006600; font-style: italic;">/* multi 2009/06/11 ADD START */</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 获取菜单</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">menu</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span>.<span style="color: #660066;">childNodes</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 重要! 如果菜单不包含菜单项, 则不进行处理</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">menu</span>.<span style="color: #660066;">length</span> <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #000066; font-weight: bold;">return</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 菜单标题和菜单体</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">menu</span><span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">menu</span><span style="color: #009900;">&#91;</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 定义初始样式</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">setStyle</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'visibility'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'hidden'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">setStyle</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'position'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'absolute'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #006600; font-style: italic;">/* multi 2009/06/11 DELETE START */</span>
	<span style="color: #006600; font-style: italic;">//this.util.setStyle(this.body, 'overflow', 'hidden');</span>
	<span style="color: #006600; font-style: italic;">/* multi 2009/06/11 DELETE END */</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">setStyle</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'display'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'block'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// 添加监听器</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">addListener</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'mouseover'</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">bind</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">activate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">addListener</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">obj</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'mouseout'</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">bind</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">deactivate</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span></pre></div></div>

<p>
<strong>5. 对菜单和子菜单分开处理</strong><br />
菜单 (二级菜单) 的位置是相对于窗口的, 而子菜单 (三级或以上菜单) 是的位置是相对于上一级菜单的, 所以必须判断是哪种菜单类型, 并以不同的方法来确定位置. 另外, 两者要显示的位置也不相同, 所以在激活方法内还需要以不同的方式将 top 和 left 位置计算出来.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 获取当前菜单体的位置 (子菜单)</span>
<span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">sub</span> <span style="color: #339933;">==</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> pos <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">currentOffset</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> left <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">getWidth</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> top <span style="color: #339933;">=</span> pos<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #006600; font-style: italic;">// 获取当前菜单体的位置 (菜单)</span>
<span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> pos <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">cumulativeOffset</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> left <span style="color: #339933;">=</span> pos<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> top <span style="color: #339933;">=</span> pos<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">getHeight</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #006600; font-style: italic;">// 子菜单不需要设置不透明度, 否则会形成多重透明, 效果不好.</span>
	<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">util</span>.<span style="color: #660066;">setStyle</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">body</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'opacity'</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">opacity</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>
<strong>6. 添加当前菜单的 className</strong><br />
为了更好的表示当前菜单的上级菜单, 在激活菜单的时候为当前菜单加上 className.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 当前选中菜单加上 class 名为, 以便定义样式</span>
<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span>.<span style="color: #660066;">className</span> <span style="color: #339933;">+=</span> <span style="color: #3366CC;">' current'</span><span style="color: #339933;">;</span></pre></div></div>

<p>
并且在解除菜单的时候移除菜单上的 className.
</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// 离开菜单时取消当前菜单上的 class 名, 恢复原本的样式</span>
<span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span>.<span style="color: #660066;">className</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span>.<span style="color: #660066;">className</span>.<span style="color: #660066;">replace</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'current'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<h3>演示主题:</h3>
<p>
以 WordPress 自带主题 default 为基础, 仅做学习参考使用, 修改过的文件有 <em>header.php</em> 和 <em>style.css</em>, 添加了文件 <em>js/menu.js</em>
</p>
<p>
<strong>下载主题:</strong> <a href="http://www.neoease.com/tutorials/wordpress-menubar/default_with_menubar_5.zip">default_with_menubar_5.zip</a>
</p>
<h3>下回预告:</h3>
<p>
下次讨论点选式菜单, 或者 CSS 实现的菜单, 或者 jQuery 实现的各类菜单.</p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=867" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/wordpress-menubar-3/" rel="bookmark">WordPress 淡出淡入导航菜单</a><!-- (29.3)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-2/" rel="bookmark">WordPress 二级导航菜单</a><!-- (23.1)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-4/" rel="bookmark">WordPress 滚动导航菜单</a><!-- (22.4)--></li>
		<li><a href="http://www.neoease.com/lavalamp-for-wordpress-users/" rel="bookmark">在主题中添加 LavaLamp 菜单效果</a><!-- (18.2)--></li>
		<li><a href="http://www.neoease.com/wordpress-menubar-6/" rel="bookmark">jQuery 导航菜单</a><!-- (12.2)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/wordpress-menubar-5/feed/</wfw:commentRss>
		<slash:comments>74</slash:comments>
		</item>
		<item>
		<title>iNove 1.3 发布</title>
		<link>http://www.neoease.com/inove-13-released/</link>
		<comments>http://www.neoease.com/inove-13-released/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 08:05:31 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Release]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=849</guid>
		<description><![CDATA[iNove 1.3 发布了, 离上次发布足足三个月, 是我有意推迟发布的. 因为一直被一些小问题困扰着; 我也在考虑要不要将 jQuery 集成到主题中, 或者增加更多页面效果; 需要兼容 IE8, 在等它发布; 另外就是多事缠身有点小忙, 人嘛, 总得吃饭啊. 之前我发过篇题为 "iNove 需求调查" 的文章, 意在向广大网友征集意见. 通过网友的投票, 我最终还是打消了合并侧边栏为一个的念头. 为主题添加了 Ctrl+Enter 提交评论的组合键. 不过我并没有添加 footer 可以添加代码的部分, 因为我发现很多插件可以做这事情. 在这里向提出建议和投票的各位表示感谢. 为了避免不必要的发问, 我在这里描述一下更新内容. 1. 兼容 IE8, 因为 IE7 用户群多, 我又不想出现太多的 Hack 代码, 所以我只是选用了 IE7 模式来进行显示. 当 IE7 用户很少的时候 (或许要等 Windows 7 普及的时候), 我将会完全放弃兼容 IE7. 2. [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
iNove 1.3 发布了, 离上次发布足足三个月, 是我有意推迟发布的. 因为一直被一些小问题困扰着; 我也在考虑要不要将 jQuery 集成到主题中, 或者增加更多页面效果; 需要兼容 IE8, 在等它发布; 另外就是多事缠身有点小忙, 人嘛, 总得吃饭啊.
</p>
<p>
之前我发过篇题为 <a href="http://www.neoease.com/inove-requirements/">"iNove 需求调查"</a> 的文章, 意在向广大网友征集意见. 通过网友的投票, 我最终还是打消了合并侧边栏为一个的念头. 为主题添加了 Ctrl+Enter 提交评论的组合键. 不过我并没有添加 footer 可以添加代码的部分, 因为我发现很多插件可以做这事情. 在这里向提出建议和投票的各位表示感谢.
</p>
<p><span id="more-849"></span></p>
<p>
为了避免不必要的发问, 我在这里描述一下更新内容.
</p>
<p>
1. 兼容 IE8, 因为 IE7 用户群多, 我又不想出现太多的 Hack 代码, 所以我只是选用了 IE7 模式来进行显示. 当 IE7 用户很少的时候 (或许要等 Windows 7 普及的时候), 我将会完全放弃兼容 IE7.<br />
2. 支持 <a href="http://www.neoease.com/plugins/">AJAX Comment Pager</a> 插件, 因为这不是一个 click-click 插件, 需要改些代码, 所以很多朋友问我如何使用. 这次我干脆就把它给支持了, 只要激活插件, 修改后台参数就可以用了.<br />
3. 支持 Denis 的 <a href="http://fairyfish.net/2009/01/16/thread-twitter/">Thread Twitter</a> 插件, 为此添加了一个 twitter.php 模板文件.<br />
4. 支持 <a href="http://wordpress.org/extend/plugins/wp-polls/">WP-Poll</a> 插件, 其实只是为它重新定义了样式.<br />
5. 增加日历 Widget 的样式.<br />
6. 在主题设置页面增加一个选项, 控制是否显示 Feed 阅读器的列表.<br />
7. 在主题设置页面增加向横幅添加 HTML 的选项, 可以在这个位置放个广告或者个人介绍, 推荐放置高度为 60px 的广告.<br />
8. 增加几个地区的语言, 并更新简体中文和繁体中文的语言包.<br />
9. 添加了 Ctrl+Enter 提交评论的组合键.<br />
10. 更改表格的样式.<br />
11. 更改图标 caption 的样式.<br />
12. 更换搜索栏.<br />
13. 将所有 '&lt;?' 更改为 '&lt;?php', 因为有些 PHP 容器没开通对前者的支持.<br />
14. 修复多行 tag 不能显示的问题.<br />
15. 当鼠标不在菜单上, 让鼠标变成回一般状态.<br />
16. 修复显示评论数量不正确的问题, 本来连没同意显示的评论数量都算上了.<br />
17. 修复显示 'this.menu is undefined' 错误信息并且不能显示 Feed 订阅器列表的问题.<br />
18. 修复一些文本输出问题, 包括没被翻译到的字符串.<br />
19. 移除 description 和 keywords 选项, 因为这与一些 SEO 插件冲突. (建议想弄 SEO 的朋友还是自己搞吧, 别信插件)<br />
20. 移除图片切换功能, 因为这个只是我自己在用, 放在发布的代码里面有点不厚道.
</p>
<p>
我只能详细到这种程度了, 如果你还想知道哪些代码发生了变化, 建议你安装一个代码对比工具查看.
</p>
<p>
对于与一些插件不兼容的问题, 我还是那句话 "不可能兼容所有插件的". 如果你知道冲突问题怎么解决, 那么请可以告诉我, 我会尝试在新版中将这个问题解决掉. 关于 WP-PageNavi 插件, 我建议使用 2.3x 版本, 2.40 版本在 IE 上显示十分丑陋 (无论是什么主题).
</p>
<p>
主题何去何从? 这个主题将不会集成 jQuery, 不会发布其他配色, 更不会有三栏版本, 这些都是为了保持尽量的简洁, 毕竟它不是一个定制主题, 需要预留一定的修改空间. 以后我会将重点放在解决 bug 和提高兼容性方面, 外观不会有太大变化.
</p>
<p>
<a href="http://wordpress.org/extend/themes/inove/">下载 iNove</a> | <a href="http://www.neoease.com/inove/">相关说明</a>
</p>
<p>
最后 YY 一下, 目前 iNove 的总下载量达到十七万多了, 同时也将 NeoEase.com 推到了 PR7. <img src='http://www.neoease.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':grin:' class='wp-smiley' /></p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=849" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/inove/" rel="bookmark">WordPress 主题 iNove</a><!-- (11.2)--></li>
		<li><a href="http://www.neoease.com/new-wordpress-theme-inove/" rel="bookmark">WordPress 新主题 iNove</a><!-- (11)--></li>
		<li><a href="http://www.neoease.com/change-header-color-of-inove/" rel="bookmark">Change Header Color of iNove</a><!-- (9.7)--></li>
		<li><a href="http://www.neoease.com/thread-twitter-05/" rel="bookmark">Thread Twitter 0.5</a><!-- (8.9)--></li>
		<li><a href="http://www.neoease.com/use-image-title-in-inove/" rel="bookmark">Use Image Title in iNove</a><!-- (8.5)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/inove-13-released/feed/</wfw:commentRss>
		<slash:comments>258</slash:comments>
		</item>
		<item>
		<title>Use Image Title in iNove</title>
		<link>http://www.neoease.com/use-image-title-in-inove/</link>
		<comments>http://www.neoease.com/use-image-title-in-inove/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 15:03:08 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[iNove]]></category>
		<category><![CDATA[Photoshop]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=834</guid>
		<description><![CDATA[The most frequently asked question about iNove is 'How can I change the title to an image?' Some people using the iNove theme and they want to remove the text title and show an image/logo instead. Now I'll show you how to change the title to an image. 关于 iNove 主题, 被问得最频繁的莫过于 "怎样将博客的标题换成图片?" 这个问题. 一些朋友使用了 [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
The most frequently asked question about iNove is 'How can I change the title to an image?' Some people using the iNove theme and they want to remove the text title and show an image/logo instead. Now I'll show you <strong>how to change the title to an image</strong>.
</p>
<p>
关于 iNove 主题, 被问得最频繁的莫过于 "怎样将博客的标题换成图片?" 这个问题. 一些朋友使用了 iNove 主题, 而他们希望能将文字标题换成他们的个性图片. 那么, 现在我将为你演示<strong>如何将标题换成图片</strong>.
</p>
<p><span id="more-834"></span></p>
<p>
Step 1 - Create your image title. In fact, I supply a PSD file (title_psd/title.psd) in iNove package, you can edit it for your blog.<br />
步骤 1 - 创建一个标题图片. 其实我已经在主题包中提供了一个 PSD 文件 (title_psd/title.psd), 你可以编辑一下以适应你的博客使用.
</p>
<p>
If you have created an image yourself, then you can ignore 1.1~1.3 and jump to 1.4.<br />
如果你已经自己创建了一个个性标题图片, 那么你可以忽略 1.1~1.3, 直接跳到 1.4.
</p>
<p>
1.1 - Open title_psd/title.psd in Photoshop, change the text on 'NeoEase' layout. (If the canvas is not long enough, please change the width of canvas.)<br />
1.1 - 在 Photoshop 中打开 title_psd/title.psd, 修改 'NeoEase' 图层的文字. (如果画布长度不够, 请修改一下画布宽度.)
</p>
<p>
<img class="sided" src="http://www.tuhigh.com/pics/910/0306/187252-1411194402_o.jpg" alt="" />
</p>
<p>
1.2 - Hide 'Background' layout.<br />
1.2 - 隐藏 'Background' 图层.
</p>
<p>
<img class="sided" src="http://www.tuhigh.com/pics/910/0306/187252198344058_o.jpg" alt="" />
</p>
<p>
1.3 - Save as title.gif (GIF file), and set 'Matte' to black color.<br />
1.3 - 保存为 title.gif (GIF 图片), 并且将 '杂边' 设置为黑色.
</p>
<p>
<img class="sided" src="http://www.tuhigh.com/pics/910/0306/187252-211173747_o.jpg" alt="" />
</p>
<p>
1.4 - Move title.gif file to 'img' directory. (If you have an GIF image, please rename the image to 'title.gif'.)<br />
1.4 - 将 title.gif 文件移动到 'img' 目录(文件夹). (如果你已有一个 GIF 文件准备作为标题图片的, 也请移动到这里.)
</p>
<p>
Step 2 - Now, your image is ready and you have to edit 'style.css' file to change the title.<br />
步骤 2 - 现在你的图片已经准备就绪了, 但你还需要编辑一下 'style.css' 文件以更换标题.
</p>
<p>
2.1 - Open the style.css and find '#title a'.<br />
2.1 - 打开 style.css 文件, 并在文件中找到 '#title a'.
</p>
<p>2.2 - Close or remove the following lines.<br />
2.2 - 屏蔽或者移除以下代码.
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#title</span> a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FFF</span><span style="color: #00AA00;">;</span>
	<span style="color: #808080; font-style: italic;">/*width:250px;*/</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">30px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">font-family</span><span style="color: #00AA00;">:</span><span style="color: #ff0000;">&quot;Trajan Pro&quot;</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">letter-spacing</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
2.2 - Open the following lines. (remove the beginning /* and the ending */)<br />
2.2 - 激活下面的代码. (移除掉开始位置的 /* 和 结束位置的 */ 即可)
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#title</span> a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">img/title.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FFF</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">250px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* change '250' to the width of you title.gif file */</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">30px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-indent</span><span style="color: #00AA00;">:</span><span style="color: #933;">-999em</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
If you want to remove the tagline and increase the height of the title, follow the next steps.<br />
除此之外, 如果你还想移除掉副标题部分和增加标题的高度, 你可以跟着做下面的一些步骤.
</p>
<p>
Step 3 - Remove the following line in templates/header.php file.<br />
步骤 3 - 在 templates/header.php 文件中移除下面的代码.
</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div id=&quot;tagline&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'description'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;</pre></div></div>

<p>
Step 4 - Find '#title a' in style.css and change 'height:30px;' to 'height:44px;'.<br />
步骤 4 - 在 style.css 文件中找到 '#title a', 将 'height:30px;' 改为 'height:44px;'.
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#title</span> a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">img/title.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FFF</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">250px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">44px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* change 30px to 44px */</span>
	<span style="color: #000000; font-weight: bold;">text-indent</span><span style="color: #00AA00;">:</span><span style="color: #933;">-999em</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>
Step 5 - If you need higher title, please modify the attributes of '#caption' and '#title a', for example:<br />
步骤 5 - 如果你需要更高的标题, 可以修改一下 '#caption' 和 '#title a' 的相关属性, 下面是一个例子. 如果你使用中文语言 (将 WPLANG 改成了 zh_CN 或者 zh_TW), 那请打开 chinese.css 文件修改一下 '#caption' 的属性.
</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#caption</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">65px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* change 44px to 65px (44 + 21 = 65) */</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">25px</span> <span style="color: #933;">30px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* change 21px to 0 */</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#title</span> a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">img/title.gif</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FFF</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">250px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">65px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* change 44px to 65px */</span>
	<span style="color: #000000; font-weight: bold;">text-indent</span><span style="color: #00AA00;">:</span><span style="color: #933;">-999em</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=834" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/change-header-color-of-inove/" rel="bookmark">Change Header Color of iNove</a><!-- (22.1)--></li>
		<li><a href="http://www.neoease.com/lavalamp-for-wordpress-users/" rel="bookmark">在主题中添加 LavaLamp 菜单效果</a><!-- (12.5)--></li>
		<li><a href="http://www.neoease.com/change-home-icon-to-text-on-inove/" rel="bookmark">将 iNove 菜单上的小屋图标换成文字</a><!-- (10.3)--></li>
		<li><a href="http://www.neoease.com/inove-mouseover-to-show-comment-no/" rel="bookmark">iNove 中鼠标悬浮显示 @ 评论</a><!-- (8.9)--></li>
		<li><a href="http://www.neoease.com/image-instead-of-title-text/" rel="bookmark">用图片代替文字标题</a><!-- (8.7)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/use-image-title-in-inove/feed/</wfw:commentRss>
		<slash:comments>63</slash:comments>
		</item>
		<item>
		<title>Change Header Color of iNove</title>
		<link>http://www.neoease.com/change-header-color-of-inove/</link>
		<comments>http://www.neoease.com/change-header-color-of-inove/#comments</comments>
		<pubDate>Sun, 01 Mar 2009 03:11:44 +0000</pubDate>
		<dc:creator>mg12</dc:creator>
				<category><![CDATA[WP Theme]]></category>
		<category><![CDATA[iNove]]></category>
		<category><![CDATA[Photoshop]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.neoease.com/?p=832</guid>
		<description><![CDATA[Now I'll show you how to change the header color of my iNove theme. 现在我将向您展示如何修改 iNove 主题的顶部图片的颜色. Step 1 - Start up your Photoshop, open the header_footer.jpg file. 步骤 1 - 启动 Photoshop, 打开 header_footer.jpg 文件. Step 2 - Select the dark section of header. 步骤 2 - 选择图片中顶部的暗色部分. Step 3 - Create a new [...]<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></description>
			<content:encoded><![CDATA[<p>
Now I'll show you <strong>how to change the header color of my iNove theme</strong>.<br />
现在我将向您展示<strong>如何修改 iNove 主题的顶部图片的颜色</strong>.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252465944167_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252465944167_c.jpg" alt="image" title="Click to enlarge" /></a><br />
<span id="more-832"></span></p>
<p>
Step 1 - Start up your Photoshop, open the header_footer.jpg file.<br />
步骤 1 - 启动 Photoshop, 打开 header_footer.jpg 文件.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252-1335599013_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252-1335599013_c.jpg" alt="image" title="Click to enlarge" /></a></p>
<p>
Step 2 - Select the dark section of header.<br />
步骤 2 - 选择图片中顶部的暗色部分.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252-859513443_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252-859513443_c.jpg" alt="image" title="Click to enlarge" /></a></p>
<p>
Step 3 - Create a new layout named 'Layout 1' and fill any color you like.<br />
步骤 3 - 创建一个命名为 "图层 1" 的新图层, 并涂上你喜欢的颜色.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252-1838743267_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252-1838743267_c.jpg" alt="image" title="Click to enlarge" /></a></p>
<p>
Step 4 - Set the blend mode to 'Overlay' and change the fill opacity on 'Layout 1'.<br />
步骤 4 - 将图层模式设置为 "叠加", 并调整一下 "图层 1" 的填充不透明度.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/1872521000295878_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/1872521000295878_c.jpg" alt="image" title="Click to enlarge" /></a></p>
<p>
Step 5 - Remove unwanted color of the two corners on 'Layout 1'.<br />
步骤 5 - 在 "图层 1" 中清除两处转角中不必要的颜色.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252-726202399_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252-726202399_c.jpg" alt="image" title="Click to enlarge" /></a></p>
<p>
Step 6 - Save as JPG file and change the image in your iNove theme.<br />
步骤 6 - 将图片保存为 JPG 格式, 并将主题中的原图替换掉.
</p>
<p><a href="http://www.tuhigh.com/pics/910/0301/187252-669569503_d.jpg" onclick="return hs.expand(this);" class="highslide-image"><img class="sided" src="http://www.tuhigh.com/pics/910/0301/187252-669569503_c.jpg" alt="image" title="Click to enlarge" /></a></p>
 <img src="http://www.neoease.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=832" width="1" height="1" style="display: none;" /><ul>
		<li><a href="http://www.neoease.com/use-image-title-in-inove/" rel="bookmark">Use Image Title in iNove</a><!-- (27.3)--></li>
		<li><a href="http://www.neoease.com/new-wordpress-theme-inove/" rel="bookmark">WordPress 新主题 iNove</a><!-- (11)--></li>
		<li><a href="http://www.neoease.com/change-home-icon-to-text-on-inove/" rel="bookmark">将 iNove 菜单上的小屋图标换成文字</a><!-- (10.3)--></li>
		<li><a href="http://www.neoease.com/inove-13-released/" rel="bookmark">iNove 1.3 发布</a><!-- (9.6)--></li>
		<li><a href="http://www.neoease.com/inove-requirements/" rel="bookmark">iNove 需求调查</a><!-- (9.6)--></li>
	</ul>
<p><hr color="#E0E0E0" />
<div>
Copyright &copy; 2007-2010 NeoEase. All rights reserved.<br />
<a href="http://www.neoease.com" target="_blank">NeoEase.com</a> | <a target="_blank" href="http://twitter.com/mg12" rel="nofollow">Twitter</a> | <a target="_blank" href="http://weibo.com/mg12" rel="nofollow">新浪微博</a> | <a target="_blank" href="http://www.douban.com/people/mg12" rel="nofollow">豆瓣</a> | <a target="_blank" href="http://www.zhihu.com/people/mg12" rel="nofollow">知乎</a>
</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neoease.com/change-header-color-of-inove/feed/</wfw:commentRss>
		<slash:comments>81</slash:comments>
		</item>
	</channel>
</rss>

