planner123 스킨 추가 확장 변수 목록에 출력하기
Posted 2011. 9. 20. 13:07, Filed under: 정보planner123 스킨에 확장 변수를 추가하여 그것을 목록에 출력하려는데
이곳저곳 뒤지다가 딱 알아듣게 설명해 둔 곳이 없길래 정리하는 겸 써본다.
경우에 따라 틀릴 수도 있으니 대충 참고만 하시라
1. 확장 변수의 추가
먼저 8번까지의 확장변수는 플래너123에서 사용하도록 설정되어 있으니 확장변수를 추가하려면 8번 이후로, 즉 9번부터 값을 주어야 한다.
이 점을 인지하고 확장 변수를 추가한다. 본인은 그냥 10번을 추가했다.
2. 만약 확장변수를 추가하고 글쓰기 화면이 깨진다면
write_form.html의 대략 207번째 라인에서
<!--@if($val->idx == 1 || $val->idx == 3 || $val->idx == 4 || $val->idx == 8 )-->
처럼 되어있는 부분에 다음과 같이 추가한 확장변수의 번호를 추가해보자.
본인은 따로 추가해주지 않았는데도 별 문제 없었다. 요건 잘 모르겠으니 문제 없다면 넘어가자.
<!--@if($val->idx == 1 || $val->idx == 3 || $val->idx == 4 || $val->idx == 8 || $val->idx == 10)-->
3. 확장변수를 추가한 뒤에는 자신이 설정한 보기 방식에 맞추어 _style.planner_뭐시기.html 파일을 수정해야한다.
"뭐시기"는 자신이 사용중인 타입을 고르면 되고 여하튼 파일을 열었다면 먼저 "확장변수값 얻기 끝"으로 검색해 다음과 같은 부분을 찾은 후
<!--@if($val->idx == 7 )-->
{@ $plan_time = $document->getExtraValueHTML($val->idx)} <!--// 시작종료시간 (09:00, 09:30, 10:00,.. 형식)-->
<!--@end-->
<!--@end-->
<!--@end--> <!--// 확장변수값 얻기 끝 foreach -->
필요한 부분을 알아서 잘 추가한다.
대충 딱 보고 반복되는 패턴을 복사&붙여넣기 한 후 확장 변수 숫자와 이름만 바꿔주면 된다.
<!--@if($val->idx == 7 )-->
{@ $plan_time = $document->getExtraValueHTML($val->idx)} <!--// 시작종료시간 (09:00, 09:30, 10:00,.. 형식)-->
<!--@end-->
<!--@if($val->idx == 10 )-->
{@ $plan_imageView = $document->getExtraValueHTML($val->idx)} <!--// 이미지 표시 여부-->
<!--@end-->
<!--@end-->
<!--@end--> <!--// 확장변수값 얻기 끝 foreach -->
요렇게.
본인은 불러올 확장 변수의 이름을 $plan_imageView 라고 붙였다.
여튼 다른 값과 겹치지 않게 알아서 잘 주면 된다.
4. 추가했다면 $arr_plan[$i][$j] 를 검색해 알아서 다음과 같은 부분을 찾는다.
<!--@if($arr_repeat[$i][$j] == "*")-->
<!--@if($arr_plan[$i][$j])--> <!--// 비어있지 않으면 일정 구분자(1차분리자) 추가-->
{@ $arr_plan[$i][$j] .="|#Ø#|"}
<!--@end-->
{@ $arr_plan[$i][$j] .=$plan_title."|Ø|".$plan_url."|Ø|".$plan_detail."|Ø|".$plan_bgcolor."|Ø|".$plan_flagicon."|Ø|".$category_title."|Ø|".$category_color."|Ø|".$plan_reply."|Ø|".$plan_time."|Ø|".$plan_new."|Ø|".$plan_img."|Ø|".$plan_length."|Ø|".$plan_docsrl."|Ø|".$plan_start."|Ø|".$plan_end;} <!--// 어레이에 추가 1차분리자= "|#Ø#|", 2차 분리자 "|Ø|"-->
<!--@end-->
<!--@end--> <!--// for 끝-->
<!--@end--> <!--// for 끝-->
뭔가 복잡해 보이는데 여기서 딱 하나만 추가하면 된다.
<!--@if($arr_repeat[$i][$j] == "*")-->
<!--@if($arr_plan[$i][$j])--> <!--// 비어있지 않으면 일정 구분자(1차분리자) 추가-->
{@ $arr_plan[$i][$j] .="|#Ø#|"}
<!--@end-->
{@ $arr_plan[$i][$j] .=$plan_title."|Ø|".$plan_url."|Ø|".$plan_detail."|Ø|".$plan_bgcolor."|Ø|".$plan_flagicon."|Ø|".$category_title."|Ø|".$category_color."|Ø|".$plan_reply."|Ø|".$plan_time."|Ø|".$plan_new."|Ø|".$plan_img."|Ø|".$plan_length."|Ø|".$plan_docsrl."|Ø|".$plan_start."|Ø|".$plan_imageView."|Ø|".$plan_end;} <!--// 어레이에 추가 1차분리자= "|#Ø#|", 2차 분리자 "|Ø|"-->
<!--@end-->
<!--@end--> <!--// for 끝-->
<!--@end--> <!--// for 끝-->
다음과 같이 배열의 끝부분에 위에서 정한 값 이름을 위와 같은 형태로 추가해준다.
그리고 몇번째인지 숫자를 세야 하는데 $plan_title은 0번째, $plan_detail은 1번째, $plan_bgcolor는 2번째 이런식으로 세면 새로 추가한 값은 14번 째가 된다. 이미 앞에서부터 순서가 정해져 쓰이고 있기 때문에 끝부분에 추가해주는 것이 중요하다.
5. 다 끝났다.
그럼 이제 필요한 라인에 $tmparr7[14] 라고 적어주면 해당 확장 변수의 값이 적용된다.
값을 직접 출력하고 싶다면 {$tmparr7[14]}라 적어주면 된다.
<!--@if($tmparr7[14] == "Y")-->(~~생략~~)<!--@else--><img style='margin-left:10px; clear:both; float:left;' src='{$tmparr7[10]}'/><!--@end-->
본인은 위와 같이 확장 변수의 값이 Y면 섬네일 이미지를 출력하지 않도록 구성했다.
여튼 저렇게 배열로 등록해주어야 해당 일자의 확장 변수 값을 가져올 수 있다는 것이 포인트~