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

时间:2022-06-01 20:56:13

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

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

get_post_custom()使用

?
1
get_post_custom($postid);

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

实例演示

?
1
2
3
4
5
6
7
8
if (have_posts()) :
 
while (have_posts()) : the_post();
 var_dump(get_post_custom());
 
endwhile;
 
endif;

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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”
}
}

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用于获取当前文章的指定自定义字段的值,并以数组形式返回。

?
1
2
3
4
5
while (have_posts()) : the_post();
 var_dump(get_post_custom_values(‘xzmeta'));
endwhile;
 
endif;

大致会返回如下结果

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

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

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

?
1
2
3
4
5
if (have_posts()) :
while (have_posts()) : the_post();
 var_dump(get_post_custom_keys());
endwhile;
endif;

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

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