출처 : Avada.KR

워드프레스는 사이트의 겉모습은 템플릿구조로 되어 있습니다.
템플릿 (template) : 형판 (무언가를 여러개 같은모양으로 찍어내는 틀) 이죠.
글자 그대로 입니다.
형판을 만들어 놓고 필요한 순간에 필요한 형판을 꺼내서 찍어내는거죠.

우리의 워드프레스 파일 중에는 테마 폴더가 있고, (예를들어 2013테마,2014테마 등) 그 각각의 테마폴더 내에는 여러개의 템플릿 파일 들이 존재합니다.

어떤 순간에 어떤 템플릿(형판)을 꺼내서 쓸것인가는 워드프레스 내부에서 결정을 합니다.
그 내부의 결정근거는 클라이언트가 원하는 화면이 어떤화면인가를 분석하는겁니다.일명 쿼리라고 합니다.
어떤 쿼리가 주워 졌는가에 따라서 어떤 템플릿을 쓸것인가를 결정하는겁니다.

EX1.

누군가가 네이버나, 구글을 통해서 또는 주소창에 나의 사이트 도메인을 직접 써서 브라우저를 작동시킬때, 나의 서버로 오는 명령어는 나의 도메인이 됩니다.
그러면 워드프레스는 판단을 하죠..
( 아! 손님이 왔군. 명령어를 보니 메인화면이네. 메인화면에는 최근 포스트 를 보여주기로 했었나? 아니면 정적페이지를 보여주기로 했었나? 데이터베이스에 설정을 확인해 봐야 겠군… 음 … 최근포스트로 한 화면에 10개로 설정되어있었네… 테마는… 2013이고, 테마내에 home.php 파일이 있었나… 없네.. 그럼 다음 옵션인 index.php파일은 있나.. 음 있군 .. 그럼 이 템플릿파 (index.php)에 찍어서 첫 화면을 보여 주자구….. )
이런 과정을 거쳐서 클라이언트의 요구에 화면을 보여줍니다.

EX2.

나의 사이트를 구경하던 손님이 내가 최근에 올린 포스트를 보다가 , 구석에 있던 태그 클라우드에서 ‘apple’ 이라는 태그하나를 발견하고 , 그 태그를 누릅니다. ‘apple’이라는 태그가 먹여진 관련 포스트를 보겠다는 뜻이 겠죠? 워드프레스 코어는 또다시 바쁘게 움직이기 시작합니다. 아! 이번에 태그다! ‘apple’이라는 태그가 저장되어있는 모든 글들을 데이터 베이스에서 꺼내와라… 한 15개 정도 되네.. 그런데 이걸 어느 템플릿에 찍어내야하나?

워드프레스는 정해진 규칙대로 움직입니다.

먼저 ‘apple’ 이라는 태그를 등록할때, 같이 등록된(=메타데이터) 슬러그 (slug)를 알아내고, tag-$slug.php 파일을 찾습니다.
( 가령 ‘apple’ 태그 의 슬러그가 같은 이름으로된 ‘apple’이라는 슬러그로 등록되어 있다면, tag-apple.php 파일을 찾을 것이고,’apple’태그를 등록할때 slug를 ‘slugname-apple’라고 등록하였다면, tag-slugname-apple.php 라는 파일을 찾을겁니다.)

그런데 사용중인 테마폴더내에 위와 같은 이름의 템플릿파일이 없다면, 다음단계인 해당 태그 (여기선 ‘apple’)의 id를 조회해서 템플릿 파일을 찾아냅니다.

만약 ‘apple’의 id가 132번 이면, tag-132.php 파일을 찾는거죠… 그런데 이파일도 사용중인 테마폴더 내에 없다면, 그 다음 단계인 태그의 대표 파일인tag.php 파일을 찾습니다.
이것도 사용중인 테마폴더내에 없다면, 다음단계로 넘어가서 archive.php 파일을 찾습니다.
그런데 이것마저 없다면….. 결국 어느 테마에나 꼭 하나있는 ..index.php 파일을 선택하게 됩니다.

그리고 index.php 파일을 이용해서 그 안에 15개의 ‘apple’이라는 태그가 포함된 포스트를 보여주는 겁니다.

이처럼 템플릿파일을 결정하는 순서는이미 약속처럼 정해져 있고, 이것을 워드프레스에서는 Template Hierarchy 라고 부릅니다.

이 템플릿 계층에 따라서 테마폴더 내에 각각의 테마 분위기에 맞는 템플릿 파일이 존재 합니다.