WordPress开发中的get_post_custom()函数使用解析_php技巧

WBOY
Release: 2016-05-16 20:01:03
Original
1079 people have browsed it

同get_post_meta()一样,用于返回文章的自定义字段值得一个函数,只不过get_post_custom()函数使用起来更简单,如果在循环中使用你甚至不需要设置任何参数。

其实get_post_custom()函数的基础实现与get_post_meta()大同小异~

get_post_custom()使用

get_post_custom($postid);
Copy after login

只接受一个参数
$postid文章id;

实例演示

 if (have_posts()) :
 
 while (have_posts()) : the_post(); 
  var_dump(get_post_custom());
 
 endwhile; 
 
 endif;
Copy after login

输出的结果如下:(如果如下字段有设置的话)

array(4) {
[“_edit_last”]=>
array(1) {
[0]=>
string(1) “1”
}
[“_edit_lock”]=>
array(1) {
[0]=>
string(12) “1342451729:1”
}
[“_thumbnail_id”]=>
array(1) {
[0]=>
string(3) “228”
}
[“xzmeta”]=>
array(2) {
[0]=>
string(3) “xz1”
[1]=>
string(3) “xz2”
}
}

Copy after login

get_post_custom_values和get_post_custom_keys

因为自定义字段分为,键值(keys) 和 自定义字段值(values),有些时候我们需要单独获取这两个值,所以 WordPress 中就派生出了get_post_custom_values和get_post_custom_keys两个函数,至于意义嘛,我还真没有发现出有多大意义,除了在批量删除自定义字段的时候有一定用除外,我还真没想出什么地方能用到,也许在一个浩瀚的 CMS主题中会有着非常剧组轻重的意义。

之前写到了get_post_custom函数和get_post_meta函数,私下里想着,反正自定义字段的相关函数也不多,所以就顺手整理了一下,索性把自定义字段相关的函数都写一下,当然不包括函数的一些基础实现代码。
get_post_custom_values用于获取当前文章的指定自定义字段的值,并以数组形式返回。

 while (have_posts()) : the_post(); 
  var_dump(get_post_custom_values(‘xzmeta'));
 endwhile; 
 
 endif;
Copy after login

大致会返回如下结果

(如果自定义字段有设置)

array(2) {
[0]=>
string(3) “xz1”
[1]=>
string(3) “xz2”
}

Copy after login

get_post_custom_keys用于获取当前文章所有的自定义字段的键值。

 if (have_posts()) :
 while (have_posts()) : the_post(); 
  var_dump(get_post_custom_keys());
 endwhile; 
 endif;
Copy after login

大致会获得 以下结果:
(如果自定义字段有设置)

array(4) {
[0]=>
string(10) “_edit_last”
[1]=>
string(10) “_edit_lock”
[2]=>
string(13) “_thumbnail_id”
[3]=>
string(6) “xzmeta”
}

Copy after login

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template