同get_post_meta()一樣,用于返回文章的自定義字段值得一個(gè)函數(shù),只不過(guò)get_post_custom()函數(shù)使用起來(lái)更簡(jiǎn)單,如果在循環(huán)中使用你甚至不需要設(shè)置任何參數(shù)。
其實(shí)get_post_custom()函數(shù)的基礎(chǔ)實(shí)現(xiàn)與get_post_meta()大同小異~
get_post_custom()使用
get_post_custom($postid);
只接受一個(gè)參數(shù)
$postid文章id;
實(shí)例演示
if (have_posts()) : while (have_posts()) : the_post(); var_dump(get_post_custom()); endwhile; endif;
輸出的結(jié)果如下:(如果如下字段有設(shè)置的話)
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
因?yàn)樽远x字段分為,鍵值(keys) 和 自定義字段值(values),有些時(shí)候我們需要單獨(dú)獲取這兩個(gè)值,所以 WordPress 中就派生出了get_post_custom_values和get_post_custom_keys兩個(gè)函數(shù),至于意義嘛,我還真沒(méi)有發(fā)現(xiàn)出有多大意義,除了在批量刪除自定義字段的時(shí)候有一定用除外,我還真沒(méi)想出什么地方能用到,也許在一個(gè)浩瀚的 CMS主題中會(huì)有著非常劇組輕重的意義。
之前寫(xiě)到了get_post_custom函數(shù)和get_post_meta函數(shù),私下里想著,反正自定義字段的相關(guān)函數(shù)也不多,所以就順手整理了一下,索性把自定義字段相關(guān)的函數(shù)都寫(xiě)一下,當(dāng)然不包括函數(shù)的一些基礎(chǔ)實(shí)現(xiàn)代碼。
get_post_custom_values用于獲取當(dāng)前文章的指定自定義字段的值,并以數(shù)組形式返回。
while (have_posts()) : the_post(); var_dump(get_post_custom_values(‘xzmeta')); endwhile; endif;
大致會(huì)返回如下結(jié)果
(如果自定義字段有設(shè)置)
array(2) {[0]=>string(3) “xz1”[1]=>string(3) “xz2”}
get_post_custom_keys用于獲取當(dāng)前文章所有的自定義字段的鍵值。
if (have_posts()) : while (have_posts()) : the_post(); var_dump(get_post_custom_keys()); endwhile; endif;
大致會(huì)獲得 以下結(jié)果:
(如果自定義字段有設(shè)置)
array(4) {[0]=>string(10) “_edit_last”[1]=>string(10) “_edit_lock”[2]=>string(13) “_thumbnail_id”[3]=>string(6) “xzmeta”}