워드프레스에서 사용자 정의 페이지 템플릿 만들기

워드프레스에서 사용자 정의 페이지 템플릿 만들기

워드프레스에서는 기본적으로 다음과 같은 5개의 기본 포스트 타입(글 유형)을 제공합니다.

  • 글 (Post Type: 'post')
  • 페이지 (Post Type: 'page')
  • 첨부파일 (Post Type: 'attachment')
  • 리비전 (Post Type: 'revision')
  • 내비게이션 메뉴 (Post Type: 'nav_menu_item')

글 유형에 대한 자세한 내용은 WordPress Codex 페이지에서 확인할 수 있습니다.

페이지의 경우 레이아웃은 보통 page.php 파일에 의해 제어됩니다. 사용 중인 테마에 따라 여러 가지 페이지 템플릿이 제공될 수 있습니다. 예를 들어, Enfold 테마에서는 다음과 같이 3가지 페이지 템플릿이 제공됩니다.

Enfold Page Templates

참고로 Enfold에서는 페이지 템플릿 수가 적은 편이지만 페이지 편집 화면에서 Layout 옵션을 제공하여 보다 세밀히 페이지 레이아웃 옵션을 조정할 수 있습니다. 가령 Sidebar Settings(사이트바 설정)를 통해 해당 페이지의 사이드바 배치를 제어할 수 있습니다. (Enfold 테마는 Enfold 테마만으로 고객 사이트를 제작하는 사람이 있을 정도로 괜찮은 테마 같습니다. Avada도 괜찮지만 개인적으로는 조금 무겁다는 느낌이 나는 테마입니다.)

Sidebar Settings in Enfold

테마에 따라 기본 템플릿 외에 다른 템플릿이 없을 수 있습니다. 페이지 템플릿을 직접 만드려면 페이지 템플릿 파일이 다음과 같이 시작하도록 하면 됩니다.

<?php
/*
Template Name: 템플릿 이름
*/

예를 들어, Enfold 테마의 "Blank - No Header, no Footer" 템플릿의 경우 파일 이름이 template-blank.php로 되어 있고 php 파일의 내용은 다음과 같이 비교적 단순합니다.

<?php
/*
Template Name: Blank - No Header, no Footer
*/

if ( !defined('ABSPATH') ){ die(); }

/*
* A blank Template that allows you to build landing pages, coming soon pages etc
*/

global $avia_config;
$avia_config['template'] = "avia-blank"; //important part. this var is checked in header and footer php and if set prevents them from rendering. also an additional class is applied to the body




if(!empty($avia_config['conditionals']['is_builder']))
{
$avia_config['conditionals']['is_builder_template'] = true;
get_template_part('template-builder');
exit();
}
else
{
get_template_part('page');
exit();
}

위에서 "Template Name: Blank - No Header, no Footer" 부분이 템플릿 이름을 지정하는 라인입니다. 위와 같이 파일을 저장하면 페이지 편집 화면의 페이지 속성 > 템플릿에서 "Blank - No Header, no Footer"를 선택할 수 있게 됩니다.

Enfold Page Templates - blank

참고로 기본적으로 제공되는 글 유형 외에 사용자가 직접 글 유형을 만들 수 있습니다. 여기에서 사용자 정의 글 유형(커스텀 포스트 타입)을 만드는 방법을 살펴볼 수 있습니다.

Leave a Comment

프리미엄 테마 그래픽 동영상 템플릿 무료 다운로드