Advanced Category Excluder와 같은 플러그인으로 특정 카테고리의 글은 블로그 메인에 노출되지 않도록 할 수 있습니다. 이 플러그인을 사용할 경우 특정 카테고리의 글은 검색되지 않도록 설정하거나 RSS Feed로 발행되지 않도록 하는 등 여러 가지 설정을 할 수 있습니다. 하지만 딱 한 가지 기능만 필요할 경우 굳이 플러그인을 사용할 필요는 없을 것입니다.
아래에서는 워드프레스 템플릿 태그를 이용해 간단하게 특정 카테고리의 글이 메인에 나타나지 않도록 하는 방법에 대해 알아봅니다. 블로그 첫화면에 가장 최신글 하나만 나타나도록 설정된 경우에는 이 방법을 사용하지 않는 것이 좋습니다. 메인에 나타나지 않도록 설정된 C카테고리의 글이 가장 최신에 쓴 글이라면 블로그 첫 화면에는 아무런 글도 나타나지 않게 되기 때문입니다. 과정은 3단계로 나누어 설명합니다. 정보의 출처는 WordPress.org의 FAQ Layout and Design에서 Exclude Posts From Some Category 항목입니다.
1. 메인에 나타나지 않도록 할 카테고리 ID 확인
카테고리별로 고유 식별 번호가 배정되어 있습니다. 간단하게 확인하는 방법은 관리자화면에서 Posts > Categories로 이동해 카테고리 이름 아래에 있는 Edit 에 링크된 URI의 주소를 통해 확인하는 것입니다. 마우스를 올려 놓으면 그림 1)처럼 브라우저의 상태표시줄에 URI가 나타나는데, 끝자리의 ‘cat_ID=’ 뒤에 오는 숫자가 해당 카테고리의 ID입니다. 그림 1)의 경우 카테고리 B의 ID는 3입니다.

그림 1) 카테고리 ID 확인
2. FTP로 계정에 접속
테마 디렉토리에 있는 index.php나 home.php 파일의 퍼미션을 관리자 화면 Appearance > Edit에서 수정할 수 있도록 퍼미션을 준 경우가 아니라면, FTP로 계정에 접속해서 사용 중인 테마 디렉토리로 이동합니다.
3. index.php 파일을 열어 코드 삽입
사용중인 테마에 home.php 파일이 없다면 index.php 템플릿 파일로 블로그 첫화면에 보여줄 웹페이지를 만들어 주게 됩니다. home.php가 있다면 해당 파일을, 없다면 index.php 파일을 View/Edit으로 열어 아래 코드를 찾습니다.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
위 코드 아래에 다음과 같은 코드를 넣어 줍니다.
<?php if (in_category(‘3′) && is_home() ) continue; ?>
in_category 템플릿 태그의 괄호 안에 있는 숫자 3은 메인에 나타나지 않도록 할 카테고리의 ID입니다. 원하시는 ID를 넣어 주시면 됩니다. 변경한 뒤 문서를 저장시키면 FTP에 (파일질라 클라이언트의 경우) ‘파일이 변경됨 – 이 파일을 서버로 다시 업로드하시겠습니까?’라는 내용의 창이 뜹니다. ‘예’를 누르면 ‘타겟 파일이 이미 존재함’이라는 창이 뜨는데 확인을 눌러 주시면 됩니다.
물론 테마별로 차이가 있을 수 있습니다. 특히 프리미엄 테마를 제작하는 곳에서 만든 테마의 경우 코드가 복잡하게 얽히고 설킨 경우가 많기 때문에 이처럼 간단하게 수정하기 어려운 경우가 많은 것 같습니다. 그럼에도 플러그인으로 모든 걸 해결하는 것이 능사는 아니기에 앞으로 템플릿 태그를 이용해 간단하게 블로그 설정을 변경할 수 있는 방법에 대해 알아 가고자 운을 떼봤습니다. 읽어 주셔서 감사합니다.
참고
How do I exclude one or more categories from being listed in the list of categories?
[...] 됩니다. category-id.php 파일명에서 id는 카테고리 id입니다. 확인방법은 이 글을 참고하세요. category-id.php 템플릿을 만들어 주지 않은 다른 카테고리 [...]