워드프레스 테마 가이드 : 1-4

http://www.urbangiraffe.com/2005/04/12/themeguide1/4/

2. 그러면….. 뜯어발겨 볼까요?

자, 우리는 테마에서 스타일을 모두 벗겨내었습니다. 이제 남은 것은 본문 뿐이에요. 실제로 아직 테마에는 기본적인 배치 구조들이 남아 있기 때문에 완벽하게 본문만 남았다고 하기는 어렵겠지요. 우리가 보고 있는 이 테마에는 아직 다음과 같은 구조들이 남아 있습니다.

  1. 타이틀
  2. 덧글이나 트랙백 영역을 포함하는 포스팅 본문
  3. 사이드바, 그러니까 메뉴겠지요.
  4. 푸터 섹션. 문서 아래쪽에 들어가는 것들 말입니다.

이 구조는 해당 테마 디렉토리에 들어있는 파일들에 정의되어 있어요. 이 내용을 살펴보면서 제일 먼저 시작할 파일은 index.php 입니다. 워드프레스를 실행했을 때 언제나 보이는 파일이지요.

<?php get_header(); ?>
 

  <div id=”content” class=”narrowcolumn”>

  <?php if (have_posts()) : ?>

       <?php while (have_posts()) : the_post(); ?>

           <div class=”post”>
               <h2 id=”post-<?php the_ID(); ?>”><a href=”<?php the_permalink() ?>” rel=”bookmark” title=”Permanent Link to <?php the_title(); ?>”><?php the_title(); ?></a></h2>
               <small><?php the_time(‘F jS, Y’) ?> <!– by <?php the_author() ?> –></small>

               <div class=”entry”>
                   <?php the_content(‘Read the rest of this entry &raquo;’); ?>
               </div>

               <p class=”postmetadata”>Posted in <?php the_category(‘, ‘) ?> <strong>|</strong> <?php edit_post_link(‘Edit’,”,'<strong>|</strong>’); ?>  <?php comments_popup_link(‘No Comments »’, ‘1 Comment »’, ‘% Comments »’); ?></p>

               <!–
               <?php trackback_rdf(); ?>
               –>
           </div>

       <?php endwhile; ?>

       <div class=”navigation”>
           <div class=”alignleft”><?php posts_nav_link(”,”,’&laquo; Previous Entries’) ?></div>
           <div class=”alignright”><?php posts_nav_link(”,’Next Entries &raquo;’,”) ?></div>
       </div>

  <?php else : ?>

       <h2 class=”center”>Not Found</h2>
       <p class=”center”><?php _e(“Sorry, but you are looking for something that isn’t here.”); ?></p>
       <?php include (TEMPLATEPATH . “/searchform.php”); ?>

  <?php endif; ?>

  </div>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

자, index.html 파일을 보시는 대로, 네 부분으로 나누어 보았어요. 자세한 사항은 생략하고, 직관적으로 살펴봅시다. <?php … ?>로 되어 있는 부분이 눈에 띄이겠죠? 이것은 php의 함수를 사용하는 부분입니다. 사용자가 페이지를 볼 때, 웹서버의 PHP 인터프리터는 각 태그에 해당하는 값을 생성하여 돌려줍니다. 사용자가 PHP에 대해 조금도 알지 못하더라도 우리는 이런 내용들을 볼 수 있지요. 일단 첫번째와 세번째, 그리고 네 번째 부분에 대해 보겠습니다. 가운데 본문 부분은 나중에 살펴보도록 해요.

get_header () ? loads header.php
get_sidebar () ? loads sidebar.php
get_footer () ? loads footer.php

이 함수들은 보이는 그대로, 더 작은 단위로 디자인을 나누어 코드를 단순하게 하고 각 부분에 집중할 수 있도록 해 줍니다. 여기서는 일단 이대로는 가지 않을 겁니다. 모든 코드를 index.php에 넣고 실험해나가게 되겠지요. 하지만 이렇게 나누는 방식은 유용하고 이후에는 이 방식을 따르게 될 것입니다.