WordPress 自定义字段
August 5th, 2007 at 06:42pm 雪山飞猪 浏览: 2,995

很多 WordPress 用户写日志或者页面的时候,都会在编辑框下面看到自定义字段 ( custom fields ),但是它们到底是干什么用的呢?

通过自定义字段,我们可以很容易给日志或者页面增加额外的内容,这些你可能不想直接显示在日志内容中,但是和日期,标题,摘要,分类,或者分类等等相关的额外信息。
例子:
WordPress codex 文档中提到了4个非常好的例子:
- Mood: Happy
- Currently Reading: Cindarella
- Listening To: Rock Around the Clock
- Weather: Hot and humid
自定义字段是如何工作的
当你创建或者编辑日志/页面的时候,你可以增加一个自定义字段,一个自定义字段有两个显而易见的变量 --- 键 ( key ) 和值 ( value )。
键是数据的 "ID" --- 如果你想显示你写每篇日志当时的心情,你可以把键叫做 "mood",值就是,显而易见,这里你可以为 "高兴" 或者 "愤怒"。
当你为一篇日志/页面创建一个自定义字段的时候,你所写的信息将会存储到日志/页面中。换句话说,你写的数据属于当前的日志/页面,所以你能够显示你日志/页面相关的自定义字段信息。
我是如何在博客上显示自定义字段的数据
当你想显示日志/页面的数据的时候,有一些不同的选择。我将提供两种简单的方法和一些更高级的用法。
首先,你可以适用 the_meta() 这个模版函数,它会自动输出一个无序的列表,如下所示:
- Key1: Value of "Key1″
- Key2: Value of "Key2″
- Key3: Value of "Key3″
第二个我会提到的是函数:get_post_meta($post_id, $key, $single = true)。这个函数能够能让你按自己所需列出自定义字段。通过使用 get_post_meta($post->ID, "Key2″, $single = true); 可以返回自定义字段 "Key3" 的值,你可以输出它,如 "echo get_post_meta($post->ID, "Key2″, $single = true);"
一点高级用法
我将给你展示一些高级适用自定义字段的用法,但是我不会解释的非常的详细,这个需要一点 PHP 的基础。
所以,你可能想用一张表情图片显示你写日志时候的心情?那么就去制作这些表情图片,并把它们命名为 Sad.gif, Mad.gif and Happy.gif 。代码片段如下:
<img src="/smilies/<?php echo get_post_meta($post->ID, "mood", $single = true); ?>.gif" alt="mood" />
如果你在看书,可能你想写日志时候显示你正在看什么书 --- 这个很容易,但是一旦你读的不止一本书并想把他们全部一起显示出呢?
WordPress 允许你在不止一篇日志中使用相同的自定义字段健,你可以通过把 “$single = true” 改成 “$single = false” 来“群组”这些键。换句话说,它会返回一个数组,代码如下:
<?php $books = get_post_meta($post->ID,"books", $single = false); ?> <p>I am currently reading:</p> <ul> <?php foreach( $books as $book ) { echo "<li>".$book."</li>"; }?> </ul>
自定义字段可以让一切变得容易
很多时候,当你查找找 CMS 系统,其实你可以不用跳出 WordPress 去查找。通过使用自定义字段,你可以很快给日志和页面附上额外的信息,脚注等。还能很快改变信息显示方式,而不用编辑你所有的日志。
希望这篇日志能够帮助你。另外本站没有使用自定义字段。
翻译自:WordPress how-to: Custom Fields 约有删节,请注意。
Custom Fields 的更多参考资料:
- WordPress Codex 文档:Using_Custom_Fields
- One Way To Use Custom Fields
该文翻译:WordPress 自定义字段的一种用法 - Using WordPress as a CSS gallery
该文翻译:把 WordPress 作为 CSS Gallery
作者:雪山飞猪
原文链接:WordPress 自定义字段
我爱水煮鱼版权所有,转载时必须以链接形式注明作者和原始出处及本声明。



1. Jacky | August 5th, 2007 at 9:38 pm
很喜欢研究WP, 但是PHP十分马虎, 高级用法看得有点昏头了...呵呵~!
[回复该留言]
2. icaction | August 5th, 2007 at 10:36 pm
有例子吗?
[回复该留言]
3. 雪山飞猪 | August 5th, 2007 at 10:39 pm
暂时没有,有我会贴出来的。
[回复该留言]
4. 央街浪子 | August 5th, 2007 at 10:51 pm
GaMerZ的插件wp-postviews正是用到了此字段
[回复该留言]
5. sego | August 5th, 2007 at 10:55 pm
沒看懂,嘿嘿
[回复该留言]
6. 雪山飞猪 | August 5th, 2007 at 10:58 pm
央街浪子 ,研究很深啊,呵呵!
[回复该留言]
7. Andor | August 6th, 2007 at 8:55 am
一般很少用……
[回复该留言]
8. Giki | August 6th, 2007 at 3:51 pm
会有用的~Hoho,不过一般的blogger不懂用吧
[回复该留言]
9. i.am.Ben | August 6th, 2007 at 7:26 pm
O_o 专业人士一出手就是不一样~~~~ 嘿嘿~~~~
[回复该留言]
10. Gloridea | September 1st, 2007 at 11:48 pm
好象很有用啊!
“您是使用 IE 浏览器从 http://www.baidu.com 搜索 自定义字段 wordpress 来到这里。本站建议你 下载带有 Google 工具栏的 Firefox 浏览器,获得最佳浏览效果!”
这个东西是怎么做到啊?做这个有收入的吗?
[回复该留言]
11. Gloridea | September 1st, 2007 at 11:52 pm
好象很有用啊!那个我是从那里、通过什么关键词来到这里的东西是怎么做的啊?做这个有收入的吗?
[回复该留言]
12. 雪山飞猪 | September 1st, 2007 at 11:56 pm
没有收入,只是好玩!
[回复该留言]
13. ngpod | November 7th, 2007 at 9:34 am
如何使用自定义字段的演示!
the demo of how to use Csutom Fields!!
haha!
能否与贵站做个友情!
[回复该留言]
14. 雪山飞猪 | November 7th, 2007 at 10:20 am
@ngpod 添加你的链接了,你的站点做得非常不错!
[回复该留言]
15. Mo | November 20th, 2007 at 5:20 pm
怎么把它做到Keywords里面去,我死活做不出来。
[回复该留言]
16. 雪山飞猪 | November 20th, 2007 at 5:47 pm
@Mo 我也不会!
[回复该留言]
17. jason | January 27th, 2008 at 7:23 pm
还是没看懂,期待演示!
[回复该留言]
18. 汽车图片 | April 22nd, 2008 at 4:07 pm
最近两天也在研究自定义字段,打算改成CMS风格
[回复该留言]