차림

2007년 3월 9일

테크노트 title에서 새 글 쓰기와 답변 쓰기 구분하는 방법

앞서 테크노트에서 title에 본문의 글 제목이 나오게 하는 방법을 설명했지만, 새로 글 쓰기와 답변 쓰기는 모두 title에 그냥 쓰기로만 나오게 되어 title만으로는 둘을 구분할 수 없었다. 하지만 테크노트 소스를 조금 바꿔주면 새로 글 쓰기와 답변 쓰기도 title에서 따로 표시할 수 있다.

9_element.php와 3_body.php 고치기

기본 배포되는 테크노트 소스에는 새로 글 쓰기와 답변 쓰기 모두 command=write 뒤에 &reply=이 따라 붙는데, 새로 글쓰기와 답변 쓰기를 구분하기 위해선 새로 글쓰기에서는 &reply=가 나오지 않도록 빼 주어야 한다. 따라서 skin_board 폴더 밑에 있는 9_element.php와 3_body.php 두 파일에서 글쓰기 버튼 부분을 찾아 아래와 같이 &reply=를 빼 줘야 한다.


9_element.php

// 글쓰기 버튼
function button_write(){ 
(중략)
  echo "<a href='$this_url&command=write&reply='><img src=

echo 줄을 아래와 같이 고침
  echo "<a href='$this_url&command=write'><img src=

3_body.php

// 글쓰기
if($Bconfig['ck5_20_28']==1 (중략) // 출력설정되어 있거나 관리자이면 출력함
  echo "<a href='$this_url&command=write&reply='><img src=

echo 줄을 아래와 같이 고침
  echo "<a href='$this_url&command=write'><img src=

1_main_html.php 고치기

이제 1_main_html.php 파일에서 새로 글쓰기와 답변 쓰기가 다르게 나오도록 title 출력 부분을 바꿔준다.


<?php // 타이틀 태그
$table_name = "a_tn2_".$board."_list";
$query = "select subject from $table_name where no=$no";
$select_result = @mysql_query($query);
$Index_data = @mysql_fetch_array($select_result);
if ($command=='list' && $page)
  echo "<title>황씨신문 - ".$Bconfig[tx1_1]." ".$page."쪽</title>";
elseif ($command=='write' && !$reply) 
  echo "<title>황씨신문 - ".$Bconfig[tx1_1]." - 새 글 쓰기</title>";
elseif ($command=='write' && $reply) 
  echo "<title>황씨신문 - ".$Bconfig[tx1_1]." - 답변 쓰기</title>";
elseif ($command=='body' && $no>0) 
  echo "<title>황씨신문 - ".$Bconfig[tx1_1]." - ".$Index_data[subject]."</title>";
else 
  echo "<title>황씨신문 - ".$Bconfig[tx1_1]."</title>";
?>

만약 누리집 이름이 '황씨신문'이고 현재 게시판 이름 (변수 $Bconfig[tx1_1])이 '방명록'일 경우 title, 즉 브라우저 꼭대기에는 if 문 조건에 따라 아래와 같이 다르게 나온다.

  1. 목록인데 쪽수 (page)가 있는 경우 :
    황씨신문 - 방명록 3쪽
  2. 새로 글쓰기일 경우 :
    황씨신문 - 방명록 - 새 글 쓰기
  3. 답변 쓰기일 경우 :
    황씨신문 - 방명록 - 답변 쓰기
  4. 본문 내용 보기일 경우 :
    황씨신문 - 방명록 - 글제목
  5. 그 이외의 경우 (그냥 그 게시판 주소로 들어간 경우 포함) :
    황씨신문 - 방명록

자세한 설명은 테크노트 title에 글 제목이 오게 하는 방법을 참고하기 바란다.

목록