wordpress获取自定义字段get_post_meta函数使用介绍

时间:2022-04-08 07:46:33

wordpress可以设置自定义字段,方便扩展功能,wordpress利用巧妙的数据库表设计达到这一目的,posts表存放文章,页面和附件等,与之对应的postmeta表用来存储自定义的字段,采用post_id,key,value这样的设计来存放自定义字段的值。 
get_post_meta函数用法: 
get_post_meta($post_id, $key, $single); 
该函数有3个基本参数: 
$post_id —— 所检索数据的文章的ID,使用 $post->ID 来获取文章的ID。 
$key —— 要检索的自定义字段名称 
$single —— 这是一个布尔值,如果设置为 true ,将直接以字符串的形式返回字段的值;一个自定义字段可以填写多个值,如果设置为 false,将返回一个数组 array 来显示这多个值。 
此函数定义在wordpress的post.php中: 

复制代码

代码如下:


function get_post_meta($post_id, $key = '', $single = false) { 
return get_metadata('post', $post_id, $key, $single); 


来看一个使用了wp_cache_set,wp_cache_get和get_post_meta函数的示例: 

复制代码

代码如下:


<?php 
$post_id = $post->ID; 
$post_views = wp_cache_get($post_id,'views'); 
if($post_views === false){ 
$post_views = get_post_meta($post_id, "views",true); 
if(!$post_views) $post_views = 0; 

$post_views = $post_views + 1; 
wp_cache_set($post_id,$post_views,'views'); 
if($post_views%10 == 0){ 
update_post_meta($post_id, 'views', $post_views); 

echo $post_views; 
?>