커스텀 포스트 분류 및 기타 옵션 집중 분석

이 포스트에서는 분류(taxonomy) 및 기타 옵션에 대해 다루어 본다. 옵션 목록은 다음과 같다.

  • can_export
  • description
  • hierarchical
  • taxonomies

모든 목록은 이 포스트에서 확인할 수 있다.

can_export

내보내기 기능에 해당 커스텀 타입도 포함시키는 옵션이다. 이것이 true 이면 도구(tools) > 내보내기 (export) 메뉴에서 커스텀 타입도 포함된다.

내보내기를 하면 XML 형태로 사이트의 콘텐츠를 다운로드 받을 수 있다. 단, 주의해야 할 점이 있다. 이것은 콘텐츠를 내보내기 위한 용도이며 범위는 콘텐츠에 한해 진행된다.

백업을 하려면 데이터베이스를 sql 형태로 백업받고, FTP 등을 이용해 사이트 전체 파일을 받아 두는 것이 낫다. 사이트 전반에 걸쳐 저장된 옵션, 예를 들어 테마 설정 및 업로드된 첨부 파일의 원본까지 보관해 두어야 하기 때문이다.

custom_post_misc_001

description

이 커스텀 포스트 타입이 어떤 것인지 기술하기 위한 용도로 사용된다. 이 옵션 자체가 어딘가 직접적으로 사용되는 일은 없다.

hierarchical

True 이면 ‘페이지’ 타입처럼 처럼 상위/하위 개념이 존재하는 개체로 만들 수 있다. 반대로 false이면 ‘포스트’ 타입처럼 모든 포스트는 동등한 위치를 가진다.

True/false 값의 차이는 supports 옵션에서 ‘page-attributes’를 넣었을 때 확연이 난다. true일 때는 (parent) 옵션이 나타나고, false일 때에는 이것이 보이지 않는다.

custom_post_misc_002

또 true면 목록을 출력할 때 하위 개체는 상위 개체에 그룹이 지어져 나온다.

custom_post_misc_003

  • HackPost #6 (최상위)
    • HackPost #5 (부모: #6)
      • HackPost #4 (부모: #5)
  • HackPost #3 (최상위)
    • HackPost #1 (부모: #3)
    • HackPost #2 (부모: #3)

taxonomies

배열로 값을 채워 넣을 수 있다. 이 커스텀 포스트에 대한 분류 체계를 설정해 줄 수 있다. 그렇지만 이렇게 분류 체계를 연관지어 주려면 먼저 분류 체계를 미리 등록해야 한다. 만약 새 분류 체계를 사용하나면 별도로  register_taxonomy() 함수로 분류 체계를 등록해야 한다.

이 함수는 register_post_type()과 꽤 유사한 형태를 가진다. 예제 코드로 살펴 보자.

add_action( 'init', 'wphack_taxonomy' );
function wphack_taxonomy() {

  $args = array(
    'labels'       => array(
      'name'          => 'HackTaxoes',
      'singular_name' => 'HackTaxo',
    ),
    'hierarchical' => TRUE,
  );

  register_taxonomy( 'wphack_taxonomy', 'wphack', $args );
}

이렇게 코드를 추가하면 wphack 타입을 위해 ‘카테고리’형태의 분류 체계가 추가된다.

register_taxonomy의 옵션 인자에도 ‘hierarchical’을 발견할 수 있다. 이것이 true이면 분류 체계가 상/하위로 구분되는 ‘카테고리’형태로 구성된다. 반대로 false면 단순 태그가 된다.

custom_post_misc_004 custom_post_misc_005

댓글 남기기