The Millau Viaduct, 미요교

photos | 2006/03/01 10:26 | J.Parker

- more -

CCL - [Attribution : Noncommercial : Share Alike]
2006/03/01 10:26 2006/03/01 10:26
태터1.0에서 날짜 변환 방법입니다.
- post 출력시 표시되는 날짜 형식
- archive 사이드바 및 메인 리스트 출력시 날짜 형식 등.

1) 태터 구버젼과 달리 태터1.0부터는 해당기능별 각각 페이지에서 수정하셔야 합니다.
ㅇ적용되는 경로 및 파일입니다.

/blog/index.php
/blog/item.php
/blog/archive/index.php
/blog/archive/item.php
/blog/category/index.php
/blog/entry/index.php
/blog/guestbook/index.php
/blog/keylog/index.php
/blog/location/index.php
/blog/notice/index.php
/blog/notice/item.php
/blog/search/index.php
/blog/tag/index.php

위 파일들을 수정하시기전에 백업해두시면 추후 요긴하실겁니다.

2) 먼저 변환할 날짜를 추가합니다. 설치된 블로그 하위 디렉토리에 아래의 언어설정
파일이 있습니다.

설치디렉토리/language/ko.php

작업하시기전에 위 파일을 백업해두시기 바랍니다.
위 파일을 소스보기 하시후 '$s_timestamp'찾기를 합니다. 그러면 아래와 같이 날짜
설정하는 부분이 나옵니다.(배열로 값을 넣어놓았네요.)

$s_timestamp = array(
'%Y/%m/%d %H:%M',
'%Y/%m/%d',
'%H:%M:%S',
'%Y/%m',
'%m/%d',
'%H:%M',
'%Y'
);

위 항목을 아래의 것으로 대체합니다. '[]'속 숫자는 아시겠지만 배열번호 입니다.
0~6번은 기본 설정값이고 7~9번은 임의로 넣은 값이 되겠습니다. 6번 배열밑으로
형식을 추가하시면 되겠습니다.

$s_timestamp = array(
'%Y/%m/%d %H:%M', //[0]
'%Y/%m/%d',             //[1]
'%H:%M:%S',             //[2]
'%Y/%m',                   //[3]
'%m/%d',                   //[4]
'%H:%M',                   //[5]
'%Y',                         //[6] ',' 쉼표 추가 밑에 추가
'%A %B %dth, %Y ',    //[7] 예) Thursday March 02th, 2006
'%B %dth, %Y ',          //[8] 예) March 02th, 2006
'%B %Y '                    //[9] 예) March 2006
);

3) post 출력시 제목밑에 또는 하단에 표시되는 날짜형식을 영문으로 표기하는 방법
위 파일의 소스를 보시면 하단에 아래와 같은 치환자 설정 코드부분이 있습니다.
'article_rep_date' 문구 찾기를 하시면 2곳이 나옵니다.

dress('article_rep_date',getTimestamp($entry['published']),$entryView);

위 항목에서 아래와 같이 배열번호를 넣어줍니다. 2곳 모두

dress('article_rep_date',getTimestamp($entry['published'],7),$entryView);

4) archive 사이드바 및 메인 리스트 출력시 날짜 형식을 영문으로 표기하는 방법
위 3)번과 함께 병행하여 변경하시면 됩니다.
'getPeriodLabel($period){' 문구 찾기를 하시면 아래와 같은 함수 설정부분이 나옵니다.

function getPeriodLabel($period){
$name=strval($period);
switch(strlen($name)){
case 4:
     return $name;
case 6:
     return substr($name,0,4).'/'.substr($name,4);
case 8:
     return substr($name,0,4).'/'.substr($name,4,2).'/'.substr($name,6).'';
}
}

위 함수설정부분 중 case 6과 8의 값을 아래와 같이 변경해주시면 됩니다.

case 6:
     return getTimestamp(mktime(0,0,0,substr($name,4),1,substr($name,0,4)),9);
//기존  return substr($name,0,4).'/'.substr($name,4);
case 8:
    return getTimestamp(strtotime($name),8);
//기존  return substr($name,0,4).'/'.substr($name,4,2).'/'.substr($name,6).'';

이상 날짜변환하기를 제멋대로 해봤습니다. 다른 날짜 형식으로 변경을 원하신다면
위 2)번 항목에서 처럼 '설치디렉토리/language/ko.php'내에 배열로 추가해주면 되며,
별도의 날짜형식 추가를 원하지 않으실때는 기본 0~6번의 배열의 값을 조정해주시면
됩니다.

테스트된 사이트는 아래와 같습니다.
http://php.chol.com/~biz74/tt/

CCL - [Attribution : Noncommercial : Share Alike]
2006/02/25 11:09 2006/02/25 11:09
· TAG