Palmback™菜园地

“我觉得我是挺浪漫的人,活在一个不太浪漫的时代。”黄耀明

Posts Tagged ‘WordPress’

主题Wishing Box

现在的主题已经使用快一个月了,还没正式介绍一下。

这是一个基于WordPress默认主题K2修改、移植Boxwish的主题,其设计出自Kyan之手;也是我使用WordPress一年多以来自己动手的第一款主题,就叫Wishing Box吧。期间有几个网友留言或发信问我能否分享这个主题,因Boxwish是商业网站,我也是未得到对方许可便私自移植了,所以不便传播,请见谅

以下可能是主题中大家比较感兴趣的地方:

  • 顶部滑动显隐的工具条。这是用jQuery实现,初接触jQuery,对jQuery的函数不太了解,代码写得很累赘,就不在这丢人现眼了。
  • 文章标题前作者头像的调用。这个比较适合多用户博客,单用户就没必要了,现在Gravatar在国内的载入速度还是很不理想。通过WordPress内置的get_avatar函数就可以实现:
    <?php echo get_avatar( get_the_author_id(), 48 , get_bloginfo('template_url').'/images/AvatarDefault.jpg' ); ?>
  • sidebar上最新评论头像的调用参考ThinkElegant WordPress Theme,应该还有其它类似的插件,参看G7v6
  • ……

应该就这些了吧。

WordPress 2.5.1

今天中午打开博客,提示升级WordPress 2.5.1。

官方介绍,WordPress 2.5.1主要是bug修复、性能改进及安全漏洞修复,推荐立即升级,特别是开放注册的博客。虽然安全漏斗不是公开的,但马上就会被黑客发现。

除了安全漏洞修复以外,WordPress 2.5.1包含许多bug修复,如果你只关心安全漏洞修复的话,你可以下载修正的拷 wp-includes/pluggable.phpwp-admin/includes/media.phpwp-admin/media.php,并替换现有的文件。

如果你下载完整的WordPress 2.5.1,将有 超过70个的bug被修复。WordPress 2.5.1 集中于修复令人讨厌的bug和提高性能,以下是一些亮点:

  • 状态面板(Dashboard)、撰写文章、编辑评论页面改进;
  • 许多类别的博客有更好的表现;
  • 多媒体上传工具修复;
  • 升级TinyMCE 3.0.7;
  • Widget管理修复;
  • 各种可用性改进;
  • IE布局修复。

博客的隐私生活(Secret lives of blogs)

从WordPress 2.5 开始,wp-config.php中允许一个新的常量叫 SECRET_KEY,主要用于引进一些持久的随机性到cookies加密函数中。你可以访问这个链接 为你的设置文件获取机密密钥。(对每个载入页面密钥是随机、唯一的。)在你的设置文件中添加此行有助于提高博客的安全性。

wordpress 2.5 brecker官方详细介绍

昨天下午刚刚安装测试了一下WordPress 2.5 RC3,晚上11点多打开WordPress官方主页——WordPress.org已经焕然一新,界面配色和2.5的后台完全匹配,更重要的是页面上赫然写着"Download WordPress 2.5",这离RC3仅几个小时。比起RC1的介绍和RC2的屏幕录像,2.5正式版的介绍可真相史诗那么长。本来我已经不打算翻译了,感觉意义不大;但今天起来又有点心情,经过几个小时的时间,你现在看到的译文产生了。

你现在看到的Palmback·菜园地并未升级到WordPress 2.5,考虑到近段时间可能会更换主机,所以暂不升级了。还是犹豫——国外虽然限制更少一些,不过速度上却有点滞后……对于新版的的WordPress,我也不想做任何评价。在我看来,新事物都是在进步,这种进步是不以开始的时候人们对她的态度而改变的。

以下为WordPress 2.5译文:

经过WordPress六个月的工作,终于迎来了WordPress 2.5。WordPress 2.5的改进数不胜数,而且几乎完全是以用户反馈为依据:文件批量上传、一键插件升级、内建相册、可定制面板、密码增强和cookie加密、媒体库、不会弄乱代码的所见即所得编辑器、并行编辑保护、全屏编辑以及包含文章和页面的搜索。

WordPress 2.5 新功能截图概览,请访问 WordPress 2.5 RC1 发布公告,或者查看四分钟的新界面操作屏幕录像 。如果你想直接使用正式版,你可以在这里找到 WordPress2.5升级和下载信息

如果你想详细了解WordPress2.5的功能,我需要一杯咖啡或者莫吉托,因为这篇介绍新功能的文章像史诗般冗长。

用户功能

简洁、快速、有序的状态面板 — 我们尽量根据用户反馈来确定状态面板中什么是最重要的,重新组织模块让用户以一种新的方式关注Blog的主要信息。从1.5版开始,WordPress团队与 Happy Cog合作,在WordPress界面上向前迈出了关键的第一步。

Dashboard Widgets(状态面板小工具) — 状态面板首页现在由一系列的widgets组成,包括显示博客发表状态、最新评论、来访链接、最新最受欢迎及更新的插件、WordPress新闻。用户可以自定义任一个状态面板的小工具,比如用用户本地新闻替代WordPress新闻。插件也可以嵌入到状态面板中,例如WordPress.com stats widget 添加一个双倍宽的状态栏。

wordpress-stats-widget

显示进度条的文件批量上传 — 以前用户上传大文件时只能等着,无从知道上传将持续多长时间。上传多张照片简直就是在考验用户耐心,因为你一次仅可以传一张。现在你可以一次性选择整个文件夹的图片、音乐或者视频,而且还会显示每个文件上传的进度。

惊喜:EXIF提取—如果你上传的JPEG文件包含EXIF(Exchangeable image file format-可交换图像文件)诸如相机厂商及型号、光圈、快门速度、ISO(感光度)等元数据,WordPress将提取所有信息到自定义域(custom fields),你可以在你的模板中使用。你使用的EXIF标题域及与之相似的将被存储到WordPress相同的域中。几乎全部现代的数码相机都生成EXIF数据。

搜索文章和页面 —搜索以前只涉及文章,现在也包含页面,这对用WordPress作CMS(内容管理系统)的用户带来极大的好处。新主题可以设计或排序不同的页面。

Tag管理 — 现在用户可以在WordPress中方便地管理Tag,添加、重命名、删除以及其他操作,不再需要任何插件。

密码强度测量 — 用户在个人资料中更改密码时,会显示密码强度以帮助用户获取一个更安全的密码。

并行编辑保护 — 对于多作者博客而言,你是否遇到打开一篇文章时有人已经在编辑它,而且自动保存持续覆盖彼此的内容,几个小时的工作无法挽回的情况?我敢打赌发生过这样的事情。现在如果你打开一篇其他用户正在编辑的文章,WordPress将锁定文章并阻止你保存,直到其他用户完成为止。你会看到如下消息。

write-currently-editing

点击升级插件 — 如果你使用插件库的插件,从2.3开始当有可用更新时WordPress便会通知你。现在我们顺理成章地采取了下一步——为你下载、安装更新。这有点依赖用户的主机设置,OS X可能要求用户输入FTP密码,Windows可能要求输入密码,但是在我们力所能及的主机测试中运行良好,你的主机可能正好,镜像里的插件可能比显示的要大。

更友善的可视编辑器 — 我不确定怎样确切地说明这一改进,只能说:它不会再弄乱你的代码。我们现在使用更好兼容Safari的3.0版TinyMCE, 而且我们特别关注这个版本与复杂的HTML的整合与互动。同时还具有把浏览器变成写作空间的全屏模式。

内建相册 — 当你充分利用批量文件上传来上传大量照片时,只要简单地输入即可让你在文章中嵌入相册。相册将显示缩略图和标题并链接到访客可以对单个照片发表评论的页面。我已经在我的blog中使用这个功能而且已经上传了超过 1200张图片到23个相册还有一些隐藏的选项,详情 查看这篇文档

开发人员功能

现在开始令人讨厌的工作。当我们为以上功能兴奋的同时,对其他开发者而言,每一个功能代表着能把他们带到另一个水平的一个新机会或API。(其中最优秀的特性将被整合到WordPress中。)

密码加密(Salted passwords) — 我们现在使用phpass库加密存储在数据库中的密码,以此使暴力破解失效。如果你使用类似 mod_auth_mysql的工具,我们开发了一个插件允许你使用原有的MD5散列。(散列法是完全可以插入的)用户下次登录时将自动切换到更安全的密码。

安全的cookies — cookies现在居于这个PDF文档中描述的方法加密,诸如 user name|expiration time|HMAC( user name|expiration time, k) k = HMAC(user name|expiration time, sk),其中sk是一个可以自定义设置的密钥。

简易分类和URL构造 — 例子也许是最好的说明:我可以调有几个参数的函数register_taxonomy()注册“people”分类,并且无论我什么时候编辑图片我将看到一个类似于tag的UI,通过照片来识别,用 /person/firstname-lastname/是URL可寻址的。这全部集中于单个函数调用。

内嵌文档 — 大多数WordPress加入的新代码包含内嵌文档,解释说明函数及参数。

数据库优化 — 这一版本中我们未改变数据表设计,这是如此多的插件在2.5中运行良好的原因之一。我们添加了一些新的指数,基于在已有207万用户的WordPress.com中发现的一些瓶颈,我们标记了一些默认域使其更灵活。这对应用程序是无形的,仅是数据库方面更快一点。

$wpdb->prepare() — 现在几乎所有WordPress中的SQL已经准备好,相同的函数在你的插件中可用。这能防止基本的SQL溢出问题。

多媒体按钮 — 编辑框上面的添加媒体按钮都是可扩展的,所以如果愿意你可以添加一个“Add Google Map”按钮。你可以拒绝这些按钮,如如果你觉得你可以把视频或者音频按钮做得比我们好,你可以替换默认的。

Shortcode API — 新的相册功能由新的shortcode API驱动。Shortcodes是括号描绘的(bracket-delineated)字符串,它能神奇地扩展成更有趣的东西,给用户带来简短、易于输入及拷贝/粘贴的字符,用户可以在文章中随意放置而不用担心弄乱复杂的HTML或者嵌入的代码。Shortcode API全文

现在你知道为什么WordPress 2.5 花费了那么多时间了吧。

升级指南

这个版本的升级说明和其他版本没什么大的区别。最重要的是检查你的插件,假如除新的上传页面外所有的东西运行良好,那么可能是原来的插件导致javascript错误破坏了它。如果遇到问题,最安全的做法是禁用所有的插件(我们已经提供一个按钮关闭所有插件),然后一个一个依次启用,以在这个过程中发现问题所在。这几乎解决了每个人在测试中遇到的问题,这也可以让你知道哪个插件的作者应该更新他们的插件了;如果他们已经更新了,你可以在你的blog中赞赏他们一番。

关于新的上传页面和插件升级功能的简短说明,一些过失的主机平台比如Lighttpd 1.5以前的版本或者过于严厉的安全规则可能破坏新功能。假如某些功能不像截图一样运行,询问你的主机商,以解决服务器方面存在的干扰。主机商如果有一个环境需要加入额外的代码才能工作,可以自由加入并发送到 WordPress测试者邮件列表 。我们很乐意在下一个更新中添加。

快速提示:在WordPress 2.5中你可以点击对象的名字进行编辑,比如点击你的用户名编辑你的个人资料,或者点击文章标题编辑文章。

WordPress团队在成长

(部分省略)

WordPress 2.5 的代号是 “Brecker”以纪念Michael Brecker,一个才华横溢的萨克斯演奏家,他自如地变换风格而且从未停止尝试,一生投身于萨克斯演奏直至去年去世。

焕然一新的WordPress.org

在我们的空闲时间,我们决定重新设计WordPress.org,使其在视觉风格上与新的状态面板相匹配,也使一些区域看起来更加时尚。站点的一些部分比如Codex还要以旧风格显示一两天——再给我们一点点时间。

下一步计划

一如既往的WordPress,我们不要求任何一个功能是完美的或者优于世界上的其他人,但是这些功能被开发出来并被用户所采用,我们的承诺:聆听用户反馈,竭尽全力改善WordPress。

2.5是WordPress的一个里程碑,不仅因为它增加了许多用户要求的功能,而且它重申:我们blogging的热情仍然和开始一样。我们的团队不会因为即已取得的荣耀而却步——和学者宣称的相反,blogging离“finished”还很远,每一个改进仅仅引起我们更多改进欲望的开胃品,更多的功能将会来临。

还好WordPress不限制文章的长度,不然这篇文章要遇到问题。今天到此为止,感谢你与我们分享一天的一段时光。我衷心希望新版本的WordPress能帮助做你喜欢做的事情。

via:WordPress 2.5

WordPress 2.5 SNEAK PEEK

WordPress官方发布了WordPress 2.5 SNEAK PEEK RC1,有许多令人期待的新功能。请看Matt的介绍(译文)吧。

可定制的Dashboard、批量文件上传、内置画廊、一键升级插件、tag管理、内置Gravatar、全文feed输出以及更快的载入速度,听起来很吸引人吧?WordPress 2.5将包含以上新功能。它已经烤制一段时间了,我们终于准备打开门让你尝尝鲜。

过去的几个月,我们一直与我们Happy Cog(一个网页设计工作室)的朋友—— Jeffrey ZeldmanJason Santa MariaLiz Danzico重新设计WordPress。WordPress新的交互方式将对有经验的用户保持亲切感,同时提高用户体验 。这不仅仅是一件光鲜的外衣,我们重新考虑WordPress的外观以及如何更加条理化,使你忘记软件、聚焦于你的创造性追求。

下面是一些即将来临版本的插图介绍:

Dashboard(状态面板)

dashboard-wide.png

Dashboard是WordPress最重要的角色之一,通过它可以快速了解博客状态、到达你想去的管理界面中。在访问用户的过程中,我们发现大多数用户完全忽略了Dashboard——因为有用的信息几乎被隐藏于过度复杂的设计中。新的Dashboard聚焦于用户手头最相关的任务:已发表文章和订阅主题的快速概览、最新评论及来访源链接 、博客状态以及WordPress更新和新闻。你还可以添加自己的RSS feeds并编辑其显示方式,以便新的Dashboard顺应你使用WordPress的方式。

Navigation(导航)

WordPress的导航曾经搞得用户很狼狈,即便有经验的用户。新的设计我们把导航选项减半,把主要功能(撰写、管理文章和页面、编辑博客设计、管理评论)从次要功能中分离出来,使信息以更舒服的格调呈现,仅显示必要的信息。你需要的所有东西都在这,只是更加条理化。(特别是对WP新手们)

Write

到目前为止,撰写日志页面是WordPress中访问最频繁的一部分。它可以完成工作,但是过多的选项足以让人感到沮丧。新的撰写页面只显示最常使用的信息,显示最常用领域的方式使发表难以置信的容易。不需要的时候附加选项都是隐藏的。新的撰写页面预期你自然的撰写方式,它可以聪明地记住你的使用偏好,使你钟情的撰写环境保持快速有效。新的可视化编辑器甚至有方便的全屏模式,帮助你排版最新发表文章。(我个人最喜欢的新功能)

Manage

新的管理页面已经重新设计并统一标准,管理页面、发表、多媒体、评论都是相似的、一致的界面。我们已经省略了冗余信息,使重要信息能更快的找到。我们相信这一改变将使你成为一个更快、更熟练的blogger。

你可能也注意到了一些新的色彩,Dashboard感觉更时尚、亮丽。如果你钟情把选项置于旧的外观,可以选择“classic”色彩以回到以前的颜色界面。(这也是可插入式的,人们可以方便地添加或者分享他们的配色方案。)

如果你经常备份,而且对帮助我们测试代码促进我们发展感兴趣,那就下载 安装 WordPress 2.5Release Candidate 1 ,并加入我们的测试者邮件列表以报告你发现的bug 吧。

我们对新界面的反馈也感兴趣,同时也乐意倾听你们的意见、建议、不满、愤怒以及相关的任何事,为此我们建立了一个新的电子邮件地址:2.5-feedback@wordpress.org

WordPress 2.5 基本上完成了而且很稳定,本来今天就可以发布,但是在发布给普通公众之前我们希望得到更广泛的反馈。反馈过后几天我们会确定一个最终发布日期。就个人而言,我也很迫不及待。

via:2.5 SNEAK PEEK

有用的WordPress插件

生化危机3上演了,疯狗也明显增多,这不,都咬到学校了。兹决定少谈政治、少谈国事,防止疯狗扑上来咬我一口。已经伸手不见五指了,再说黑那不是废话嘛,估计差不多也该指鹿为马了。

继续翻译文章。水平有点烂,连我自己都觉得像机器翻的。

WordPress community有成千上万的WordPress插件 而且每天都有新插件发布。但是并非所有插件都是有用的,事实上有些写得很烂的插件会使你的站点陷入困境或者对你的WordPress安装有害。所以,你如何了解哪个插件适合你呢?下面是我以前用过的插件列表,希望对你有所帮助。

WP Cache

为节省MySQL服务器资源, WP Cache缓存页面并存储为静态文件,当服务器请求时直接读取缓存文件,相比载入、解析所有PHP代码然后从数据库中生成页面,更胜一筹。这对流量较大或者服务器性能较差的站点是非常实用的。

WP eCommerce

想在博客中卖东西吗?你应该试试 Instinct编写的WP eCommerce 插件。这是一个Ajax驱动的购物车,非常易用。你可以在管理面板中用几分钟时间设置你的网店。

Intouch Ajax contact form

我已经用这个联系表一年多了。它运行得很好,而且过滤了所有的垃圾邮件。诚恳地说,根本没有垃圾邮件!你也可以自定义邮件信息、致谢信息和添加额外的表单。

Secure and Accessible Contact Form

Mike CherimMike Jolley写的另外一个联系表单。虽然我以前从来没用过这个联系表单,但我听到对他们的评价很好。所以,可以考虑一下它。

Sideblog

一个流行的WordPress插件, Sideblog是在侧边栏发布简短信息的最佳选择。我在 Best Web Gallery使用它。提供的选项有:定义 sideblog分类、显示条数、是否在RSS feeds中显示。

WP PageNavi

WP PageNavi在你的WordPress站点中添加一个更好的导航。这个插件对有很多文章的用户来说尤其方便,它可以让访客在页面之间切换。我在 N.Design StudioBest Web Gallery中使用它。

Sociable

Sociable在你的文章末尾添加一个社交书签(例如 Digg, Del.icio.us, Reddit),让你的访客可以添加书签。我以前用这个插件而且运行得很好。

Ajax Post Rating

WP Post Ratings在文章/页面中添加一个五星的ajax评级系统。它工作得如神。提示:很多CSS画廊站点用这个插件。

Ajax Comment

一个简单有效的Ajax评论插件,它检查所有填写的信息是否正确(所以访客再也看不到默认的错误提示),而且确保避免重复评论,and has flood protection capabilities as well。

Ajax Inline Comment

这个插件允许访客实时预览评论。它对需要在评论中插入HTML标签的访客是非常有用的,能够有效评论中的语法错误。

Ajax Polls

类似于Web Designer Wall,这个插件在你的站点中增加Ajax投票系统,有许多功能,非常灵活。版面完全可以通过管理面板自定义,而且允许你存档投票。强烈推荐!

Gravatar 2 Plugin

显示评论人的Gravatar(全球公认的avatar)。也许你还不知道, Automattic (WordPress开发者)刚刚 获得Gravatar ,将来Gravatar服务将更快更大(达 128px)。

Digg This

Digg this探测由 Digg.com链接引入wordpress文章的WordPress插件,自动显示一个回访到digg的链接, 让人们digg你的故事。当一个digg第一次通过验证时,将会发送邮件给站点管理员。

Subscribe to comment

Subscribe to Comments 2.1是一个有新评论是邮件通知评论人。你可能已经见过了,插件增加一个 "Notify me of followup comments via e-mail"的复选框。

Admin Drop Down Menu

我从我的第一个WordPress站点开始用这个插件,这对每个WordPress都是必备的。这个插件节省了我很多时间,减少点击次数。鼠标上移的时候激活二级菜单。例如,取代点击Write,然后再点Page,你可以把鼠标移到Write上点击 Page(这将减少一次点击和页面载入)。非常节省时间。

Adsense Deluxe

Adsense Deluxe可能是网络上可用的最好的Adsense插件。使用非常简单:首先通过管理选项广告代码,然后在你文章内容的任何地方插入一个HTML片断("<!–adsense–>") ,插件将自动使用广告代码替换。

Search Everything

默认的WordPress搜索引擎不搜索meta数据和静态页面等。这个插件允许你在数据库中搜索所有内容。当然,插件有选项,你可以设置你想搜索的内容。

Ajax Calendar

如果你在边栏中使用日历,考虑一下 Ajax Calendar。访客可以通过日历不用刷新浏览页面。

Breadcrumb Navigation XT

虽然现在不是很多网站使用breadcrumb导航,但如果你想用的话,这个里有一个 Breadcrumb Navigation XT,让你在你的网站中添加一个breabcrumb导航。

Google Sitemap Generator

如果你需要为搜索引擎生成一个XML站点地图,, Google Sitemap Generator 是最好的选择(支持最流行的搜索引擎:Google,Yahoo,Ask.com,MSN)

Simple Recent Comments

另外一个必备的插件。事实上,我在我所有的WordPress网站中使用它。插件输出一个最近评论摘要的列表。你可以作为插件安装或者简单地放在主题文件夹中(不需要激活)。简单吧!

Simple Tags

WordPress 2.3已经内建Tag系统,但功能非常有限。 Simple Tags 增加更多功能:head输出 / 自动tag提示,tag管理(修改、添加、删除…),批量编辑,动态tag云集颜色等!

WP Mailing List

自从RSS发明一来,不确定是否还有人注册新闻通知。但是新闻通知是有新产品和更新时通知订户的最好方式。我觉得如果使用 WP eCommerce 网店的话这个插件很有用。它不是免费的 (花费$14.99),但总的来说是值得的(查看功能)。

Category Tag Cloud

如果你想像我在Best Web Gallery中一样将分类伪装成tag云集,这有一个插件 Category Tag Cloud。安装和自定义非常简单。

Paged Comments

这个插件对评论很多的blog非常有用。它将评论分成许多页。想象一下如果你的blog超过1000条评论?你确实需要这个插件。

flickrRSS

这个插件能很容易地在blog中显示Flickr照片。支持 user、public 、group photostreams。这个插件相对来说容易通过选项面板安装和设置。 它还支持在服务器本地建立图片缓存。

Theme Switcher

Theme Switcher允许访客更换已经安装的主题。如果你提供WordPress主题并想让你的用户预览主题,那这个插件很有用。我用它展示免费 WordPress主题(demo here).

还不够吗?

如果你觉得这些还不够,有可以在下面找到更多:

via Useful WordPress Plugins

WordPress主题高级技巧

今天在Web Designer Wall上看到这篇文章,感觉对WordPress主题制作和修改比较有用,翻译了一下,个别地方不是特别准确,但应该不影响理解。对我个人来讲,看英文还更容易,因为WordPress本身就是英文的,许多东西也没法准确地译成中文或者说译法不同。

 WordPress 本来是作为一个blog或者blog平台开发的。但是现在WordPress变得越来越强大,你可以用它创建任何类型的网站,并把它当作内容管理系统(CMS)。 在本文中,我将与你分享一些制作更好的WordPress主题的技巧。我不是程序员也不是开发者,所以我更专注于前端的发展。噢,我忘了说WordPress如此易用,即使一个非程序员 (像我这样的设计师)也能建立精彩的网站。我的WordPress站点包括: N.Design StudioBest Web GalleryWeb Designer Wall,以及一些免费的 WordPress主题

WordPress条件标签(Conditional Tags)

条件标签(Conditional Tags) 在创建动态WordPress主题过程中非常有用。你可以用它来控制显示什么内容、如何显示。下面是条件标签的一些应用:

  • 突出动态菜单(Dynamic Highlight Menu)

    这是我在 Best Web Gallery中用来创建突出动态菜单的。在第一个列表项中,如果是Home或者Category或者Archive或者Search或者Single,则添加class="current" 到<li>标签, 这样将突出 "Gallery" 按钮。第二个列表项,如果是 名为 "about"的页,则添加class="current"。 <ul id="nav"> <li<?php if ( is_home() || is_category() || is_archive() || is_search() || is_single() || is_date() ) { echo ' class="current"'; } ?>><a href="#" mce_href="#">Gallery</a></li> <li<?php if ( is_page('about') ) { echo ' class="current"'; } ?>><a href="#" mce_href="#">About</a></li> <li<?php if ( is_page('submit') ) { echo ' class="current"'; } ?>><a href="#" mce_href="#">Submit</a></li> </ul>

  • 动态标题标签(Dynamic Title tag)

    我再次利用条件标签在 header.php中输出 <title> 标签。 <title> <?php if (is_home()) { echo bloginfo('name'); } elseif (is_404()) { echo '404 Not Found'; } elseif (is_category()) { echo 'Category:'; wp_title(''); } elseif (is_search()) { echo 'Search Results'; } elseif ( is_day() || is_month() || is_year() ) { echo 'Archives:'; wp_title(''); } else { echo wp_title(''); } ?> </title>

  • 动态内容(Dynamic Content)

    如过你只想在第一页包含一个文件,下面是代码: <?php if ( is_home() ) { include ('file.php'); } ?>

  • 突出某个分类的文章(Feature post highlighting)

    假设你想添加一个CSS到categoryID 2以突出这个分类的所有文章,你可以用下面的片断 。 <?php if ( in_category('2') ) { echo ('class="feature"'); } ?>

  • 独特的单模板(Unique Single template)

    假如你想使用独特的模板显示某个的分类的个别文章,你可以用 in_category 检查文章属于哪个分类然后使用独特的单模板。在你的默认单模板single.php中加入以下代码。如果文章在category 1,则用single1.php;如果在category 2则用 single2.php; 其它的用single_other.php。 <?php $post = $wp_query- >post; if ( in_category('1') ) { include(TEMPLATEPATH . '/single1.php'); } elseif ( in_category('2') ) { include(TEMPLATEPATH . '/single2.php'); } else { include(TEMPLATEPATH . '/single_other.php'); } ? >

独特类模板Unique Category template

如果你想用不同的分类模板展示特别的分类,将你的分类模板(Category template)另存为 category-2.php(文件名添加 “-” 和分类ID数 )。所以,category-2.php将用来显示categoryID 2,category-3.php将用来显示 categoryID 3, 等等。

在第一篇文章后显示Google AD

很多人问我如何在第一篇文章后面显示Google广告,其实很简单,只需要在循环中加一个变量 ($loopcounter) ,如果 $loopcounter小于或等于1,则加入 google-ad.php 代码。 <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); $loopcounter++; ?> // the loop stuffs <?php if ($loopcounter <= 1) { include (TEMPLATEPATH . '/ad.php'); } ?> <?php endwhile; ?> <?php else : ?> <?php endif; ?>

查询文章(Query Posts)

你可一用 query_posts 控制那些内容在循环中显示。它可以让你控制显示哪些内容、在哪显示、如何显示。你可以查询或者排除某些分类,你完全可以控制。下面我将介绍如何使用 query_posts 显示最新文章、特定文章以及如何排除特定分类。

  • 显示最新文章(Display Latest Posts)

    下面的代码将输出5篇最新文章的列表: <?php query_posts('showposts=5'); ?> <ul> <?php while (have_posts()) : the_post(); ?> <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> <?php endwhile;?> </ul>

  • 显示特定文章(Display Feature Posts)

    假设分类2(categoryID 2)是你的特定分类(Feature category),你想在边栏中显示五篇 Feature posts,把这些加入sidebar.php: <?php query_posts('cat=2&showposts=5'); ?> <ul> <?php while (have_posts()) : the_post(); ?> <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> <?php endwhile;?> </ul>

  • 排除特定分类(Exclude specific category)

    你可以用 query_posts 排除特定分类不让它显示,下面的代码将排除分类ID2的所有文章(注意:ID数前面有个减号-): <?php query_posts('cat=-2'); ?> <?php while (have_posts()) : the_post(); ?> //the loop here <?php endwhile;?> Tips: 你可一用 覆盖文章每页的设置 posts_per_page 即 ie. <?php query_posts('posts_per_page=6'); ?>

自定义域(Custom Fields)

自定义域(Custom field )是WordPress最强大的功能之一 。你可以连同文章和摘要附加额外的数据和文字。在自定义域,你可以逐字地把 WordPress变成CMS入口。在Web Designer Wall,,我用自定义域显示文章图片并把它链接到文章。 首先在文章中添加自定义域。 custom fields 把下面的代码加到循环中,以显示文章图片并附加文章链接。 <?php //get article_image (custom field) ?> <?php $image = get_post_meta($post->ID, 'article_image', true); ?> <a href="<?php the_permalink() ?>"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>" /></a> Tips: WordPress允许你创建/存储若干关键字(keys),关键字在文章中可多次使用。 我用同样的方法在 Best Web Gallery中创建了极具动态的模板,我用自定义域(Custom Fields)显示站点缩略图、工具图片 及URL。

WP页面列表(WP List Pages)

基于导航的目的,模板标签 wp_list_pages 一般用来在顶部(header)和侧边栏显示WP页面(Pages)列表 。下面我将介绍如何使用 wp_list_pages显示站点地图和子菜单。

  • 站点地图(Site map)

    把下面的代码放到你的站点地图页面模板(Page Template )中,为所有的页面生成一个站点地图(sample)(注意:我排除了pageID 12 ,因为page12 是我的站点地图页面,我不想让它显示): <ul> <?php wp_list_pages('exclude=12&title_li=' ); ?> </ul>

  • 动态二级页面菜单(Dynamic Subpage Menu)

    如果当前页面有二级页面,把下面的代码加入sidebar.php 将输出二级页面菜单: <?php $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0'); if ($children) { ?> <ul> <?php echo $children; ?> </ul> <?php } ?>

页面模板(Page Template)

如果你用WordPress作为基本的页面管理,你最好别遗漏页面模板( Page Template )功能。你可以自定义页面显示。
首先,你需要创建一个页面模板,然后你可以为页面指派特定模板。 下面是页面模板的结构 (ie. portfolio.php): <?php /* Template Name: Portfolio */ ?> <?php get_header(); ?> //the loop here <?php get_footer(); ?>
当你撰写或编辑一个页面,注意右边菜单 “Page Template” 你可以看到可用的模板。
page template

WordPress选项(WordPress Options)

管理面板中有许多内建的选项可以使你的站点更雅观,下面是一部分:

  • 定义第一页(Custom Frontpage)

    WordPress在第一页默认显示blog文章,如果你想用一个静态的页面 取代(ie. welcome or splash page) ,你可以在 Admin > Options > Reading设置。 frontpage setting

  • Permalinks

    WordPress默认用 www.yoursite.com/?p=123 f作为文章URLs, 这不是URL 对搜索引擎也不友好。你可以通过 Admin > Options > Permalinks更改 Permalinks 设置。我个人喜欢吧Permalinks设置为:/%category%/%postname%/ permalinks

  • 分类前缀(Category prefix)

    WordPress默认的分类前置是 "category" (ie. yoursite.com/category/cat-name/)。在Category base (Options > Permalinks)键入"article" ,你分类的URLs 将变成:yoursite.com/article/cat-name/ category prefix

想要更多?

WordPress Codex一直是学习WordPress相关知识的最好地方。 感谢WordPress,快乐地blogging吧! via WordPress Theme Hacks

Upgrade blog to WordPress 2.3

对于国内的WPer来说,WordPress Version 2.3 "Dexter" 应该算是最好的中秋节礼物了。经过一个月的等待,如期迎来了新版本;还能说什么呢?还要说什么呢?升级呗,也算给这黯淡的节日增添一点意思吧,据说国外的WPer们还开有开升级Party的……

直接覆盖升级,一切顺利!当然,我是根据官方提示先把插件都升级到兼容的版本,不兼容的暂时禁用了。Have fun! :-x