>  기사  >  백엔드 개발  >  WordPress 개발의 get_post_custom() 함수는 parsing_php 기술을 사용합니다.

WordPress 개발의 get_post_custom() 함수는 parsing_php 기술을 사용합니다.

WBOY
WBOY원래의
2016-05-16 20:01:031042검색

get_post_meta()와 마찬가지로 게시물을 반환하는 데 사용되는 사용자 정의 필드에는 get_post_custom() 함수가 사용하기 더 간단하고 루프에서 사용되는 경우 매개변수를 설정할 필요조차 없다는 점을 제외하면 함수가 필요합니다.

사실 get_post_custom() 함수의 기본 구현은 get_post_meta()와 비슷합니다~

get_post_custom()은
을 사용합니다.

get_post_custom($postid);

하나의 매개변수만 허용됩니다
$postid 기사 ID

시연 예시

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

출력 결과는 다음과 같습니다. (다음 필드가 설정된 경우)

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

사용자 정의 필드는 키와 값으로 구분되어 있기 때문에 때때로 이 두 값을 별도로 가져와야 하므로 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;

대략 다음과 같은 결과가 반환됩니다

(사용자 정의 필드가 설정된 경우)

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

get_post_custom_keys는 현재 기사에 있는 모든 사용자 정의 필드의 키 값을 가져오는 데 사용됩니다.

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

대략 다음과 같은 결과를 얻게 됩니다.
(사용자 정의 필드가 설정된 경우)

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.