>  기사  >  백엔드 개발  >  WordPress development_php 기술에서 get_post 및 get_posts 함수 사용에 대한 자세한 설명

WordPress development_php 기술에서 get_post 및 get_posts 함수 사용에 대한 자세한 설명

WBOY
WBOY원래의
2016-05-16 20:00:591026검색

get_post()
일반적인 테마 제작에서는 get_post() 함수를 거의 사용하지 않지만 get_posts()에 대해서는 나중에 이야기하기 때문에 이 단수형에 대해 먼저 이야기해야 합니다. 이 함수의 주요 기능은 나중에 사용할 수 있도록 지정된 항목을 개체 또는 배열 형식으로 반환하는 것입니다. 사용법을 간단히 알아볼까요?

get_post() 함수 설명
WordPress의 함수 이름은 항상 이해하기 쉽습니다. get_post() 함수는 기사를 가져오고 나중에 사용할 수 있도록 지정된 기사를 개체 또는 배열 형식으로 반환하는 함수입니다.

기능 사용법

<&#63;php
 get_post($post_id, $output); 
&#63;>

$post_id 변수는 가져올 기사의 ID를 설정하는 데 사용됩니다. 이 변수에 실제 값을 직접 제공할 수는 없으며, 그렇지 않으면 오류가 보고될 수 있습니다. 다음 형태.

$pid = 158;
get_post($pid);
//如果像get_post(158);这样调用则会报错

$post_id, 기본값은 none입니다. 테스트 후 이 변수를 설정하지 않으면 오류가 보고됩니다. 개인적으로 이 변수에는 기본값이 없다고 생각합니다.

$output 변수는 반환되는 데이터의 유형을 설정하는 데 사용됩니다. 객체, 연관 배열, 숫자 배열의 세 가지 유형이 있습니다.
개체: OBJECT
연관 배열: ARRAY_A
숫자 배열: ARRAY_N
기본값: OBJECT

사용예

<&#63;php
$mypost_id = 158;
$post_id_158 = get_post($mypost_id, ARRAY_A);
$title = $post_id_158['post_title'];
&#63;>

get_posts
get_posts 함수는 단순히 get_post의 새로운 복수형이지만, 여러 기사를 추출하기 때문에 추출해야 할 기사를 선택하기 위해 사용 방법이 약간 다릅니다. CMS에서 자주 사용됩니다. 물론 WordPress에 대한 이해가 더 깊다면 WP_Query를 사용하여 이 기능을 대체할 수도 있습니다. 오늘은 get_posts 기능을 주로 소개하겠습니다.

get_posts 기능에 대한 자세한 설명
이 기능은 WordPress에 내장된 기능으로 WordPress에서 지정된 여러 기사 또는 임의의 기사를 추출하는 데 사용됩니다.
간단한 기능을 많이 설명할수록 사용하기가 더 복잡해집니다. 다음 내용을 주의 깊게 읽어야 합니다.

사용방법

<&#63;php 
$args = array(
  'numberposts'   => 5,
  'offset'     => 0,
  'category'    => ,
  'orderby'     => 'post_date',
  'order'      => 'DESC',
  'include'     => ,
  'exclude'     => ,
  'meta_key'    => ,
  'meta_value'   => ,
  'post_type'    => 'post',
  'post_mime_type' => ,
  'post_parent'   => ,
  'post_status'   => 'publish' );
$posts_array = get_posts( $args ); 
&#63;>

$args는 이 기능에 필요한 변수입니다
get_posts( $args )는 변수 배열을 반환합니다.

변수 매개변수에 대한 자세한 설명

<&#63;php 
$args = array(
  //需要提取的文章数
  'numberposts'   => 10,
 
  //以第几篇文章为起始位置
  'offset'     => 0,
 
  //分类的ID,多个用逗号将分类编号隔开,或传递编号数组,可指定多个分类编号。
  //大部分 CMS 使用该函数的重点。
  'category'    => ,
 
  //排序规则(注1)
  'orderby'     => 'post_date',
 
  //升序、降序 'ASC' —— 升序 (低到高) 'DESC' —— 降序 (高到底)
  'order'      => 'DESC',
 
  //要显示文章的ID
  'include'     => ,
 
  //要排除文章的ID
  'exclude'     => ,
 
  //自定义字段名称
  'meta_key'    => ,
  //自定义字段的值,配合上一个参数,来选择显示符合自定义字段数值的文章。
  'meta_value'   => ,
 
  //post(日志)——默认,page(页面),
  //attachment(附件),any —— (所有)
  'post_type'    => 'post',
 
  //文章的 mime 类型
  'post_mime_type' => ,
 
  //要显示文章的父级 ID
  'post_parent'   => ,
 
  //文章状态
  'post_status'   => 'publish' );
&#63;>

참고:

  • '저자' —— 저자 번호순으로 정렬
  • '카테고리' —— 카테고리 숫자순으로 정렬
  • '콘텐츠' — 콘텐츠별로 정렬
  • '날짜' — 생성 날짜순으로 정렬
  • 'ID' —— 기사번호순으로 정렬
  • 'menu_order' – 메뉴 순서대로 정렬합니다. 페이지만 가능합니다.
  • 'mime_type' – MIME 유형별로 정렬합니다. 첨부파일만 가능합니다.
  • '수정됨' – 마지막 수정 시간을 기준으로 정렬합니다.
  • '이름' – 스텁별로 정렬합니다.
  • '부모' — 부모 ID로 정렬
  • '비밀번호' — 비밀번호로 정렬
  • 'rand' —— 결과를 임의로 정렬
  • '상태' – 상태순으로 정렬
  • '제목' — 제목순으로 정렬
  • '유형' — 유형별 정렬


방금 배열을 사용하여 매개변수를 전달하는 방법에 대해 이야기했습니다. 물론 문자열을 사용하여 함수에 매개변수를 전달할 수도 있습니다.

<&#63;php
$posts_rand = get_posts('numberposts=3&orderby=rand');
&#63;>

위 코드는 WordPress에서 무작위로 3개의 기사를 가져오는 데 사용됩니다.

요약
실제로 query_posts() 및 get_posts() 함수는 대부분의 매개변수를 받아들이고 동일한 구조의 데이터베이스 쿼리 문을 사용하며 동일한 목적을 달성할 수 있습니다. 그러나 일부 테마 작성자는 query_posts()가 WordPress 메인을 방해할 수 있다고 제안합니다. 루프이므로 여기서는 사용하지 않는 것이 좋습니다.
get_posts를 사용하는 것은 어렵지 않지만 기사를 가져온 후 페이지에 표시하는 방법이 어렵습니다. 이를 위해서는 PHP에 대한 특정 지식이 필요합니다.
기사 루프 외부에 쿼리 내용을 표시하려면 setup_postdata 함수를 살펴보세요. 이 함수는 템플릿 태그 사용에 익숙한 사람들에게 큰 도움이 될 것입니다.

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