http://www.hzynh.cn/html/wordpress-source-code-analysis-the_meta-function-and-get_post_meta-function.html
在这篇wordpress源代码分析里,我将介绍the_meta函数和 get_post_meta函数。
很多时候你除了wordpress默认的功能外,还有很多奇思妙想,但是又没有精力去修改代码,怎么办呢?在你编写帖子的时候会在edit下面看见 custom fields,就是自定义字段,你可以在这里很方便的增加你自己的新特性。
当你输入这些自定义字段的时候,这些字段会以名值对(key-value)的形式储存起来并发布到你的帖子中,然后用the_meta()函数去显 示这些数值。
the_meta是个模板函数,没有参数,直接调用就会把所有你的特性现实出来。
当然,如果你想控制的更细致一些,你可以用get_post_meta()来做。
get_post_meta的格式是:
get_post_meta($post_id, $key, $single = true)
其中post_id是帖子id,key就是meta的名,而single如果为true则只显示单个结果,否则可以显示一个数组的返回集合。
example:
如果你又一个类似discuz论坛那样的法帖心情字段,你可以这样:
get_post_meta($post->ID, “feeling″, $single = true);
而更进一步你有图片表示你的心情,可以这样
<img src=”/uploads/<?php echo get_post_meta($post->ID, “feeling”, $single = true); ?>.gif” alt=”feeling” />
如果你返回值是多个,那么将$single = false 就可以了
一个比较简单的使用实例就是:在首页提取文章的缩略图
当添加文章的时候,使用一个自定义字段如:thumbnail,同时给这个字段的value为一张图片,然后再在首页调用,就OK了.
<div class="thumbnail">
<?php if ( get_post_meta($post->ID, ‘thumbnail’, true) ) : ?>
<?$image = get_post_meta($post->ID, ‘thumbnail’, true); ?>
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>"/></a>
<?php else: ?>
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php bloginfo(‘template_directory’); ?>/images/random/tb<?php echo rand(1,15)?>.jpg" alt="<?php the_title(); ?>" /></a>
<?php endif; ?>
</div>
此文章就是添加了一个字段thumbnail,然后再给一张图片,就可以了.详细见首页或者分类页.
分享到:
相关推荐
wordpress可以设置自定义字段,方便扩展功能,wordpress利用巧妙的数据库表设计达到这一目的,posts表存放文章,页面和附件等,与之对应的postmeta表用来存储自定义的字段,采用post_id,key,value这样的设计来存放...
(字符)(必需)字符,字符中含有希望的meta值的名称。 默认值:None $single (布尔值)(可选)如果默认值设为true,函数返回单个字符形式的结果。如果为false或为设置,则函数返回自定义字段的数组。 默认值:...
若$unique参数设为true且已指定meta关键字,函数返回false,不作更改;否则返回true。【用法】 【参数】 $post_id (整数)(必需)将添加自定义字段的页面编号。 默认值:None meta_key (字符)(必需)将添加的...
主要介绍了WordPress中的post_class与get_post_class函数,包括post_class()的PHP源码的相应介绍,需要的朋友可以参考下
同get_post_meta()一样,用于返回文章的自定义字段值得一个函数,只不过get_post_custom()函数使用起来更简单,如果在循环中使用你甚至不需要设置任何参数。 其实get_post_custom()函数的基础实现与get_post_meta()...
Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码...
这个函数不显示任何内容 – 如果你想要直接地将这个函数放到网页上,你应该使用echo (get_the_tag_list())。另外,你可以通过使用$foo = get_the_tag_list(),将这个函数递交给一个变数,以便以后使用。 变数都是可...
主要介绍了WordPress开发中的get_post与get_posts函数使用,其中一般使用get_posts()函数来返回文章数组而较少使用get_post(),需要的朋友可以参考下
该函数为指定文章更新已有meta关键字(自定义)的值。 成功更新后函数返回true,若文章未指定meta关键字则返回false。 若$unique参数设为true且已指定meta关键字,函数返回false,不作更改;否则返回true。【用法】 ...
WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。
主要介绍了WordPress中加载模板的get_template_part函数,其中重点讲解了其函数钩子的使用,需要的朋友可以参考下
同get_post_meta()一样,用于返回文章的自定义字段值得一个函数,只不过get_post_custom()函数使用起来更简单,如果在循环中使用你甚至不需要设置任何参数。 【用法】 【参数】 $post_id (整数)(可选)将要检索...
[整站程序]打听网(wordpress打造cms)_wordpress_cms.zip源码PHP项目源代码下载[整站程序]打听网(wordpress打造cms)_wordpress_cms.zip源码PHP项目源代码下载 1.适合个人搭建网站项目参考 2.适合学生毕业设计搭建网站...
与 wp_insert_post()不同的是,这里只需要传递将更新的文章编号和元素。元素名称应与数据库中名称相匹配。 // 更新编号为37的文章 $my_post = array(); $my_post['ID'] = 37; $my_post['post_content'] = 'This ...
wordpress代码调用大全更新到_3.0版[定义].pdf
WordPress_The_Right_Way_多语版.pdf