워드프레스의 꽃, 테마


워드프레스를 가장 돋보이게 하는 것 중의 하나는 테마입니다. 워드프레스가 전세계 CMS 시장을 석권하는데 있어서 테마가 일조 한 것을 부인하는 사람은 없습니다. 워드프레스의 테마를 설치해 본 사람은 몇 번의 클릭으로 웹사이트가 완성되는 것을 체험한 뒤에 놀라움을 금치 못하곤 합니다. 어찌보면 노력없이 큰 선물을 받은 것 같은 생각을 느끼게 하기도 합니다. 그래서 혹자는 워드프레스 테마는 쉽다고 합니다. 그렇지만 워드프레스 테마는 처음에는 쉬워보이지만 결코 만만하지는 않습니다.


- 대표적인 유료 테마, 아바다 Avada -




일반적으로 워드프레스 초급자에게 테마는 쉽게 보이지만 워드프레스가 조금 숙달된 중급자만 되더라도 테마는 어려운 관문임을 깨닭게 됩니다. 테마를 아무것도 변경하지 않고 그냥 쓴다면 쉬울지는 몰라도, 테마 기본 세팅에서 자신의 입맛에 맞게 수정을 하려면 테마의 구조를 이해해야 하고 때로는 HTML/CSS 뿐아니라 PHP 프로그래밍이나 데이터베이스에 대한 기본 지식이 있어야 수월하게 테마를 다룰 수 있기 때문입니다.


- 아바다 패션 Avada Fashion -




워드프레스 구조 및 구성 요소 세 가지


테마 구조를 이해하기 위해서 먼저 워드프레스의 구성을 이해해야 합니다. 워드프레스는 크게 세 가지로 구성됩니다. 첫째, 워드프레스 코어. 둘째, 테마. 세째, 플러그인 입니다. 코어는 워드프레스 제작사에서 만들어낸 시스템을 구동하는 핵심 모듈이며 테마는 주로 디자인을 당당하고 플러그인은 추가적으로 붙일 수 있는 어댑터성(Adapter) 프로그램을 말합니다.

코어는 워드프레스를 구동하는 시스템이기 때문에 사용자나 개발자가 변경할 일은 많지 않습니다. 사용자가 주로 다루는 부분은 테마와 플러그인입니다. 테마와 플러그인을 일종의 레고 블록과 같습니다. 사용자의 입맛에 맛게 자신이 원하는 디자인의 테마와 원하는 기능의 플러그인을 찾아서 코어에 붙여서 사용하면 되기 때문에 레고 블록처럼 자유롭게 조합 및 해체가 가능합니다.

아래 그림을 보면 워드프레스의 구조를 이해하기가 수월합니다. 워드프레스 코어는 운영체제와 웹서버, 데이터베이스 기반 위에 설치되게 됩니다. 테마와 플러그인은 레고 블럭과 같이 이해하면 쉽습니다.


워드프레스 코어는 확장성을 위해서 중요한 역할을 담당합니다. 코어는 커스텀 포스트 타입 API를 제공하기 때문입니다. 만약 플러그인을 수정하거나 개발하는 개발자가 코어의 커스텀 포스트 타입 API를 따르지 않고 이른바 PHP 날코딩으로 프로그램을 한다면 그 플러그인을 거의 1회성 프로그램으로 전락하게 됩니다. 플러그인이 업데이트 되면 적용한 플러그인이 동작하지 않을 경우가 많기 때문입니다. 또한 개발자가 변경되어도 문제는 발생합니다. 커스텀 포스트 타입을 따르지 않고 개발한 프로그램은 다른 개발자가 수정하기에도 쉽지는 않습니다. 그래서 1회성 프로그램이 되어 폐기될 확률이 높은 것입니다.

이렇게 커스텀 포스트 타입을 따르지 않고 개발한 프로그램은 문제 발생시 웹사이트의 골치 거리가 될 가능성이 많습니다.


워드프레스 템플릿 하이러키


워드프레스 테마 구조에 대해서 깊이 공부하고자 한다면 워드프레스를 구성하는 PHP 프로그램의 구성을 알아보는 것이 좋습니다.
워드프레스가 실행될 때 home.php, index.php 화일을 시작으로 대표적으로 아래 화일들이 실행됩니다. 
front-page.php
single.php
page.php
category.php
tag.php

실제로는 include 되어서 이보다 훨씬 많은 php 화일과 html, css, script 화일들이 실행됩니다. 소스에 대해서 분석을 해서 깊이 공부하고 자하는 사용자나 개발자는 반드시 아래 워드프레스 공식 개발자 가이드를 참고하는 것이 좋습니다.




+ Recent posts