워드프레스 사용자 정의 글 유형에 대하여

기회가 되면 사용자 정의 글 유형을 사용하여 뮤직 리뷰 섹션을 만들까하고 생각 중입니다만, 워드프레스에는 현재 글(Post), 페이지(Page)와 같은 사용자 정의 글 유형(Custom Post Type)이 있는데, 굳이 새로운 사용자 정의 글 유형을 만들 필요가 있을까 하는 생각을 해 봅니다.

먼저 사용자 정의 글 유형(Custom Post Type)이 무엇인지 살펴보면, 워드프레스 Codex 페이지에서는 다음과 같이 설명하고 있습니다.

WordPress는 많은 유형의 콘텐츠를 보유하고 표시할 수 있습니다. 그러한 콘텐츠의 단일 항목을 글(Post)이라고 하며, 글 또한 특정 글 유형의 하나입니다. 내부적으로 모든 글 유형은 같은 곳에 저장됩니다. 즉, wp_posts database table에 저장되지만 post_type라는 컬럼에 의해 차별화됩니다.

그리고 글 유형에 대하여

사용자가 사용할 수 있거나 WordPress 설치에서 기본적으로 내부적으로 사용되는 글 유형에는 5가지가 있습니다.

Post (Post Type: ‘post’)
Page (Post Type: ‘page’)
Attachment (Post Type: ‘attachment’)
Revision (Post Type: ‘revision’)
Navigation menu (Post Type: ‘nav_menu_item’)

위의 정의로 사용자 정의 글 유형이 무엇이다라고 표현하기가 모호한 점이 있을 것 같습니다. 어떤 곳에서는 “사용자 정의 글 유형”을 워드프레스 사이트에서 서로 다른 콘텐츠 유형을 구분하는 방식으로 정의하기도 하네요. 즉, 종류가 다른 콘텐츠를 어떻게 표시할 것인가의 문제라고 생각하시면 이해가 빠를 것 같습니다.

사용자 정의 글을 만드는 방법은 많이 설명되어 있습니다. 과정의 다소 복잡하기는 하지만 원한다면 별도의 글 유형을 하나 만들 수 있을 것입니다. 개인적으로 굳이 사용자 정의 글 유형을 사용할 필요가 있을까 하는 생각이 들기도 합니다. 즉, 기본적으로 제공되는 Post 글 유형을 응용하여도 충분히 원하는 소기의 목적을 달성할 수 있으리라 생각이 됩니다. (혹은 플러그인을 사용해도 되고요.)

가령 사용자 정의 필드(Custom Post Field)를 통해서도 개별 글에 새로운 필드를 추가할 수 있으므로 이를 활용하여 새로운 필드를 추가하여 원하는 방식으로 표시할 수 있을 것입니다. 그러면 굳이 복잡한 과정을 거쳐 사용자 정의 글 유형을 만들 필요까지는 없다는 생각입니다. 더구나 사용자 정의 글 유형은 글 표시 방식까지 새롭게 정의해야 하고 고려해야 할 사용이 더 늘어나기 때문에 초보자에게는 쉽지 않을 것입니다.

이러한 점에도 불구하고 완전히 새롭게 특정 유형의 콘텐츠를 표시하고 쉽다면 사용자 정의 글 유형이 좋은 옵션이 될 수 있을 것 같습니다. (기회가 있을 때 “사용자 정의 글 유형”에 대한 심도 있는 내용을 다루어보겠습니다.)

참고: 사용자 정의 글 유형을 홈 페이지에 추가하기

사용자 정의 글 유형을 만들면 자동으로 사이트의 메인 루프에 포함되지 않습니다. 홈페이지에 추가하려면 다음 함수를 사용합니다.

function custom_conference_in_home_loop( $query ) { if ( is_home() && $query->is_main_query() ) $query->set( 'post_type', array( 'post', 'your_custom_post_type_here') ); return $query; } add_filter( 'pre_get_posts', 'custom_conference_in_home_loop' );

이 함수에 대한 자세한 설명은 여기를 참고하시기 바랍니다.

참고

떠나시기 전에 아무 댓글(Comments)이라도 남겨두세요.
기부를 통해 이 블로그의 운영을 후원하실 수 있습니다.