프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만드는 방법

게시 됨: 2021-10-05

사이트에 사용자 정의 게시물 유형을 게시하시겠습니까? 우리는 당신을 덮었습니다. 이 가이드에서는 약간의 코드를 사용하여 프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만드는 방법을 알려줍니다.

처음에 WordPress는 게시물을 게시하기 위해 만들어졌습니다. 그러나 몇 년이 지난 후 WordPress는 게시물을 게시하는 플랫폼 그 이상입니다. 오늘날, 모든 웹사이트의 거의 40%를 지원하는 가장 완벽한 웹 솔루션입니다.

많은 기능을 통합했지만 게시 게시는 여전히 사용자를 사이트로 끌어들이고 계속 참여하도록 하는 가장 좋은 방법 중 하나입니다. WordPress는 기본 게시물 유형을 제공하지만 사이트를 사용자 지정하고 경쟁업체와 차별화되도록 고유하게 만들고 싶다면 맞춤형 게시물 유형을 만드는 것이 좋은 솔루션이 될 수 있습니다.

이 튜토리얼에서는 프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만들고 게시 하는 방법을 보여줍니다. 시작하기 전에 사용자 정의 게시물 유형이 정확히 무엇이며 언제 사용해야 하는지 더 잘 이해합시다.

맞춤 게시물 유형이란 무엇입니까?

사용자 정의 게시물 유형은 콘텐츠 유형입니다. WordPress에는 기본적으로 여러 게시물 유형이 있습니다. 게시물과 페이지가 가장 유명하지만 다른 것도 있습니다.

  • 게시물
  • 페이지
  • 첨부 파일
  • 탐색 메뉴
  • 개정
  • 맞춤형 CSS
  • 변경 세트

대부분의 사용자는 처음 5가지 유형을 사용하지만 다른 유형도 있습니다. 사실, 당신은 아마도 그것들이 커스텀 포스트 타입이라는 것을 모른 채 그것들 중 일부를 사용하고 있을 것입니다.

맞춤 게시물 유형의 가장 좋은 예는 WooCommerce 제품입니다. WooCommerce를 처음 활성화하면 플러그인은 "제품"이라는 사용자 정의 게시물 유형을 생성합니다. 제품 생성을 시작하면 WooCommerce가 제공하는 모든 개선 사항을 특징으로 하는 제품 게시물 유형으로 게시됩니다.

이러한 게시물 유형을 사용자 지정이라고 하지 않더라도 WooCommerce와 동일한 방식으로 게시물 유형을 만들고 원하는 이름을 지정할 수 있습니다. 예를 들어 이벤트, 목록, 일정, 수업, 포트폴리오 및 프로필은 특정 웹사이트에 유용한 게시물 유형 이름이 될 수 있습니다.

대체로 사용자 정의 게시물 유형은 사용자가 웹 사이트를 사용자 정의하기 위해 특정 요구 사항에 따라 작성할 수 있는 새로운 유형의 게시물 입니다.

사용자 정의 게시물 유형을 사용해야 하는 이유와 시기는?

사용자 정의 포스트 유형(CPT)은 빌드 방식에 따라 매우 다를 수 있으므로 이를 사용하여 모든 종류의 솔루션을 얻을 수 있습니다.

다음과 같은 경우 사용자 정의 게시물 유형을 사용할 수 있습니다.

  • 기본 게시물 유형을 사용하여 게시할 수 없는 특정 종류의 정보를 정기적으로 게시하려고 합니다.
  • 특정 유형의 게시물을 표준 게시물과 구별해야 함
  • 일부 유형의 게시물 동작을 변경해야 합니다.
  • 게시물 기능, 게시 프로세스 및 요소를 사용자 지정하거나 일부 특수 기능을 적용하려는 경우

일반적으로 기능이나 사용자 정의 동작이 있는 다양한 종류의 게시물이 필요한 경우 WordPress 사이트에서 CPT를 사용해야 합니다.

사용자 정의 포스트 유형은 기본 포스트 유형과 다르기 때문에 기본 포스트 유형 기능을 덮어쓰지 않고 특별한 처리가 필요합니다. 이것은 요구 사항을 정확히 충족하는 사용자 정의 포스트 유형을 처음부터 생성할 수 있기 때문에 다양한 포스트 유형이 필요할 때 큰 이점입니다.

이제 그것들이 무엇이며 언제 사용해야 하는지 더 잘 이해했으므로 사용자 정의 게시물 유형을 만드는 방법을 살펴보겠습니다.

프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만드는 방법

이 섹션에서는 예제와 함께 WordPress에서 사용자 정의 게시물 유형을 만드는 방법을 보여줍니다. 시작하기 전에 사이트를 백업하고 아직 없는 경우 하위 테마를 만드십시오.

대시보드에서 Appearance > Theme Editor 로 이동하여 오른쪽 열에 있는 하위 테마의 functions.php 파일을 열고 다음 스크립트를 붙여넣습니다. 영화 라는 사용자 정의 게시물 유형을 등록합니다.

 기능 QuadLayers_custom_post_type() {
// 사용자 정의 게시물 유형에 대한 UI 레이블 설정
    $labels = 배열(
        'name' => _x( '영화', '포스트 유형 일반 이름', 'storefront' ),
        'singular_name' => _x( '영화', '포스트 유형 단일 이름', 'storefront' ),
        'menu_name' => __( '영화', '상점' ),
        'parent_item_colon' => __( '부모 영화', '상점' ),
        'all_items' => __( '모든 영화', '상점' ),
        'view_item' => __( '영화 보기', '상점' ),
        'add_new_item' => __( '새 영화 추가', '상점' ),
        'add_new' => __( '새 항목 추가', '상점' ),
        'edit_item' => __( '동영상 편집', '상점' ),
        'update_item' => __( '동영상 업데이트', '상점' ),
        'search_items' => __( '영화 검색', '상점' ),
        'not_found' => __( '찾을 수 없음', '상점' ),
        'not_found_in_trash' => __( '휴지통에서 찾을 수 없음', 'storefront' ),
    );
// Custom Post Type에 대한 다른 옵션 설정
    $args = 배열(
        '레이블' => __( '영화', '상점' ),
        'description' => __( '영화 뉴스 및 리뷰', '매장' ),
        '레이블' => $labels,  
        '지원' => array( '제목', '편집자', '발췌', '저자', '썸네일', '설명', '개정판', '맞춤 필드', ),     
        '분류' => 배열( '장르' ),     
        '계층적' => 거짓,
        '공개' => 참,
        'show_ui' => 사실,
        'show_in_menu' => 참,
        'show_in_nav_menus' => 참,
        'show_in_admin_bar' => 참,
        '메뉴_위치' => 5,
        'can_export' => 참,
        'has_archive' => 참,
        'exclude_from_search' => 거짓,
        'publicly_queryable' => 참,
        'capability_type' => '게시물',
        'show_in_rest' => 사실, 
    );
    // 사용자 정의 게시물 유형 등록
    register_post_type( '영화', $args );
}
add_action( '초기화', 'QuadLayers_custom_post_type', 0 );

코드를 붙여넣으면 영화 라는 새 탭이 WordPress 관리 대시보드에 나타납니다.
프로그래밍 방식으로 사용자 정의 게시물 유형 만들기

그것을 열면 포스트 편집기 화면에 대해 동일한 인수를 설정했기 때문에 포스트 편집기가 기본 포스트 유형과 동일한 것을 볼 수 있습니다. 그렇다면 이것이 사용자 정의 게시물 유형 편집기인지 어떻게 알 수 있습니까? 페이지의 URL과 제목에서 영화 게시물 유형을 볼 수 있기 때문입니다.

사용자 정의 게시물 유형 추가

이제 최종 결과를 보았으므로 코드를 분석하여 각 섹션이 수행하는 작업을 더 잘 이해할 수 있습니다.

코드 설명

프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만드는 방법을 방금 보았습니다. 그러나 그것은 당신이 알아야 할 것의 절반에 불과합니다. 자신만의 게시물 유형을 만들려면 코드를 사용자 지정해야 합니다. 그리고 이를 위해서는 스니펫의 각 부분이 하는 일을 이해해야 합니다.

wp_init() 후크를 사용하여 함수가 한 번만 실행되도록 합니다. WordPress가 시작될 때. QuadLayers_custom_post_type() 함수에는 세 부분이 있습니다.

1) 라벨

이것은 테마가 다른 관리 페이지와 프론트엔드 페이지에서 사용할 문자열 세트입니다. 이것은 단일 배열에 설정됩니다.

$labels = array(
'name' => _x( 'Movies', 'Post Type General Name', 'storefront' ),
);

2) 옵션

이는 사용자 정의 게시물 유형( 영화 )의 동작 및 기타 기능을 정의하는 사전 정의된 옵션입니다.

각 옵션은 사용자 정의 게시물 유형이 작동하는 방식을 정의하는 특정 지침입니다. 가장 관련성이 높은 것은 다음과 같습니다.

  • 'supports': 포스트 에디터에서 사용할 컴포넌트를 정의합니다.
  • 'taxonomies': 현재 기능에 등록된 모든 CPT에 하나 이상의 기존 카테고리 또는 사용자 정의 카테고리를 적용할 수 있습니다.
  • ' '계층적' : 게시물에는 상위 콘텐츠가 포함될 수 없으며 이는 CPT를 페이지와 구분합니다. 사용자 정의 게시물 유형 대신 사용자 정의 페이지를 게시하려면 이것을 true로 설정하십시오.
  • ' show_in_admin_bar': WordPress 관리 대시보드에 CPT 탭을 표시합니다.

모든 인수 및 설명의 전체 목록은 이 문서를 확인하십시오.

3) 커스텀 포스트 타입 등록

WordPress 함수 register_post_type() 은 마침내 새로운 사용자 정의 게시물 유형을 등록하고 사용할 준비가 되도록 설정합니다.

이제 코드를 더 잘 이해했으므로 사용자 정의 게시물 유형 게시를 시작할 수 있습니다. 그러나 그것들을 출판하는 것과 별개로, 당신은 당신의 CPT를 어딘가에 표시하고 싶을 것입니다. 어떻게 하는지 봅시다.

WordPress에서 사용자 정의 게시물 유형을 표시하는 방법

지금까지 WordPress에서 프로그래밍 방식으로 사용자 정의 게시물 유형을 만드는 방법을 살펴보았습니다. 게시한 후에는 표시할 위치를 결정해야 합니다.

프런트 엔드에 CPT를 인쇄할 수 있는 몇 가지 방법이 있습니다. 다른 게시물, 페이지, 사이드바 또는 원하는 다른 장소에 특정 사용자 지정 게시물 유형의 전체 목록을 표시할 수 있습니다.

다음 샘플 스크립트에서는 이전 기능을 사용하여 생성한 모든 사용자 정의 게시물 유형을 새 페이지에 표시하는 사용자 정의 단축 코드를 생성할 것입니다.

다음 스크립트는 우리가 단축 코드를 추가하는 모든 페이지에서 CPT에 추가하는 모든 영화를 인쇄하는 Movies 라는 단축 코드를 생성합니다.

 add_shortcode('영화', 'QuadLayers_display_cpt_shortcode');
기능 QuadLayers_display_cpt_shortcode(){
    $args = array( 'post_type' => '영화', 'posts_per_page' => 10 );
    $the_query = 새로운 WP_Query( $args );
    if ( $the_query->have_posts() ) :
    동안 ( $the_query->have_posts() ) : $the_query->the_post();
    $c= the_title( sprintf( '<h2 class="entry-title">', esc_url( get_the_title() ) ), '</h2>').
    '<div 클래스="항목 내용">'.
    the_content().
    '</div>';
그 동안;
wp_reset_postdata();
또 다른:
$c = '죄송합니다. 기준과 일치하는 게시물이 없습니다.';
엔디프;
반환 $c;
}

따라서 페이지에 단축 코드를 배치하는 경우:

CTP를 표시하는 단축 코드

결과가 표시됩니다.

단축 코드가 있는 사용자 정의 게시물 유형

결론

요약하면 기본적으로 WordPress에는 일부 게시물 유형이 포함되지만 요구 사항에 따라 사용자 정의 게시물 유형을 추가하여 사이트를 사용자 정의할 수 있다는 것을 알았습니다.

이 가이드에서는 프로그래밍 방식으로 WordPress 사용자 정의 게시물 유형을 만드는 방법을 보여주었습니다. 스니펫을 분석하고 각 섹션에 대해 설명했으므로 사용자 정의하고 사이트에서 사용할 수 있습니다. 또한 사이트 어디에서나 사용자 정의 게시물 유형을 표시할 수 있는 사용자 정의 단축 코드를 만드는 방법을 살펴보았습니다.

사이트에서 사용자 정의 게시물 유형을 만들어 보셨습니까? 의견 섹션에서 귀하의 경험을 알려주십시오.

사이트의 다른 영역을 사용자 지정하려면 다음 자습서를 확인하십시오.

  • WooCommerce에 사용자 정의 업로드 필드를 추가하는 방법
  • 결제에 사용자 정의 필드를 추가하는 방법
  • WooCommerce 결제 필드 편집 가이드