페이지 타이틀 수정하기


2008년 4월 13일 by 김 승엽 View blog reactions

예전에 페이지마다 타이틀 다르게 부여하기라는 포스트를 참조해 사용하고 있는 테마의 타이틀 부분을 수정한 적이 있습니다. 링크한 포스트의 내용에서도 알 수 있듯이 테마에 따라 테이지 타이틀이 동일하게 출력되는 경우가 있고 이 경우 구글 웹마스터 도구 에서 문제가 발생하게 되는데 수정한 이 후에도 몇가지 문제가 남아 있는 것을 확인했습니다. 이런 문제를 해결하기 위해 All in one SEO pack 같은 플러그인을 사용할 수 있지만 플러그인이 더 늘어나는 것을 피해보려고 직접 테마 파일을 수정하기로 했습니다.

제가 智熏님의 포스트를 참고해 수정한 header.php 파일의 타이틀 부분은 아래와 같습니다.

<title><?php bloginfo('name'); ?><?php if ( is_single() ) { ?> &raquo; Blog Archive <?php } ?><?php
global $paged;
wp_title();
if ( is_paged() ) echo ' : Page ' . $paged;
?></title>

중복된 타이틀 리스트

간단히 페이지 별로 구분된 타이틀을 보여주는 부분만 추가했는데 검색 결과 페이지의 타이틀과 검색 결과의 다른 페이지의 타이틀이 동일하게 출력되는 문제가 남아 있었습니다. 다른 검색어를 검색한 결과를 나타내는 페이지들인데 페이지 타이틀은 동일하기 때문에 발생한 문제들이지요. 그림에서 보시는 것처럼 110 여개에 달하는 링크들이 중복된 타이틀로 나오고 있고 nextpage Quick Tag를 본문에 삽입해 나누었던 늑대들의 진혼곡이란 포스트 역시 각 각의 포스트가 동일한 타이틀 나오고 있습니다. nextpage 를 본문에 삽입해 나뉘어진 포스트의 타이틀 문제는 아직 적당한 Condition 태그가 없어서 해결하지 못하고 검색결과에 대한 부분만 처리했는데 그렇게 수정한 타이틀 부분의 코드가 아래와 같습니다. is_search 와 is_paged 라는 Condition 태그를 이용해 각각의 경우 타이틀 뒤에 페이지 넘버와 검색어를 출력하도록 한 것으로 사용하고 계시는 테마의 header.php 를 수정하시면 됩니다. 제 경우는 기존 타이틀을 크게 바꾸지 않아 블로그 명 다음에 포스트의 제목이 출력되는 형식이지만 智熏님의 포스트 를 참조하시면 포스트 제목 다음에 블로그 명이 출력되는 형식으로 바꾸실 수 있습니다. 이 경우 구글 검색에서 수집된 포스트 제목이 앞에 출력되기 때문에 사용자의 접근이 더욱 용이해질 수 있습니다.

<title><?php bloginfo('name'); ?><?php if ( is_single() ) { ?> &raquo; Blog Archive <?php } ?><?php
global $paged;
wp_title();
if ( is_paged() ) echo ' : Page ' . $paged;
if ( is_search() ) echo ' : Search Result of ' . wp_specialchars($s);
?></title>

위와 같이 수정하시면 검색 결과의 타이틀이 "블로그 명 Search Result of 검색어"와 같이 나타나게 됩니다. 검색 결과 페이지의 타이틀 문제는 이렇게 해결을 했는데 nextpage Quick tag를 사용한 포스트의 타이틀 문제는 어떻게 해결해야 할지 모르겠네요. 워드프레스 코덱스를 좀 더 뒤져봐야 겠습니다.



Current post already pinged to:
http://meiclamo.net/2008/01/get-titles-of-pages-be-unique/trackback/

Show Related Posts List from Local

Show Related Posts List from ALLBLOG

3 Responses to “페이지 타이틀 수정하기”

  1. [...] 김승엽님의 검색결과 타이틀 표시를 반영했습니다. – 2008. 5. 13 [...]

  2. 김 승엽 c-kr말하길

    adsum// 현상금이 땡기는군요. :)
    페이지 별로 다른 카테고리라는 것은 예를 들어 지금 작업하시는 사이트에서 바로스를 선택했을 때 바로스 관련 카테고리만 사이드바에 출력되게 하고 싶으시다는 말씀이시죠? 현재 사이드 바의 구성이 어떻게 되어 있는지 모르겠지만 아래와 같이 바꾸면 되지 않을까 싶습니다.

    <?php if (is_category('바로스')) { ?>
    <ul>
    <?php wp_list_categories('orderby=name&include=1,3,5,7'); ?>
    //include의 숫자는 출력하고 싶은 카테고리의 ID 들 입니다.
    </ul>
    <?php } elseif (is_category('풀문')) { ?>
    <ul>
    <?php wp_list_categories('orderby=name&include=2,4,6,8'); ?>
    </ul>
    <?php } ?>

    메뉴에 페이지 링크가 아니라 카테고리 링크라 잠시 헷갈렸는데 사이드 바에서 카테고리 리스트의 출력 모양은 대략 이렇지 않을까 생각됩니다. 질문 하신 내용을 제대로 이해했는지 모르겠네요. 카테고리 리스트의 출력을 말씀하시는지 카테고리의 포스트를 말씀하시는 지 헷갈려서 한가지 추가합니다.

    질문 내용이 페이지 A 에서는 특정 카테고리에 속한 포스트 들만 출력되게 하는 방법을 물으신 거라면 사이드 바가 아닌 각각의 페이지를 수정하시면 됩니다. 이건 테마마다 조금씩 틀려서 어떻게 대답해 드리기가 힘드네요. 더 자세한 답변을 원하시면 unfusion95@gmail.com으로 메일 보내주시기 바랍니다. 질문하신 문제에 대한 이미지나 테마 파일 같은 것을 첨부해 주시면 더 좋구요.

  3. adsum c-kr말하길

    질문이 있습니다. 리뉴얼에 사활을 걸고있는 기능입니다. 도와주세요…

    * 페이지별로 다른 카테고리가 보여지게 할 수는 없는지요? 페이지마다의 특성이 있어서 각기
    다른 카테고리가 나와야 하는데 사이드바의 값을 어떻게 바꾸어야 페이지마다 다른 카테고리
    가 나올 수 있는지 정말 모르겠습니다. 현상금 있습니다!

    * 현재 버전은 2.5 입니다.

Leave a Reply