웹마스터 팁

XE 팁공유게시판에 있는 확장변수 이용 답변완료 이미지 띄우기 간단 팁 을 적용해 보니

확장변수가 1개 이상일때는 표현이 되지를 않는군요.

그리고 이 팁만 적용시킨 게시판스킨을 따로 만들어야 하는 불편함이 있습니다. 

그래서 제가 필요도하고 해서 확장변수가 1개 이상일때도 출력도 되고

게시판설정에서 해당 사항을 설정할수 있게끔 만들어서 따로 게시판스킨을 만들지 않아도 되는 방법을 설명합니다

 

A. ./modules/board/skins/해당스킨/

  1. skin.xml 파일에 추가

<var name="" type="color">
 <title xml:lang="ko">확장변수 이미지출력</title>
 <description xml:lang="ko">아래부터의 선택은 확장변수 이미지출력 선택시만 적용됩니다.</description>
</var>
<var name="extra_val_mid" type="text">
 <title xml:lang="ko"> ┖ 확장변수 mid</title>
 <description xml:lang="ko">이미지로 출력하고 싶은 확장변수의 mid를 적어주세요.</description>
</var>
<var name="extra_val_name1" type="text">
 <title xml:lang="ko"> ┖ 입력항목 이름1</title>
 <description xml:lang="ko">이미지로 출력하고 싶은 입력항목1의 이름을 적어주세요.</description>
</var>
<var name="extra_val_name2" type="text">
 <title xml:lang="ko"> ┖ 입력항목 이름2</title>
 <description xml:lang="ko">이미지로 출력하고 싶은 입력항목2의 이름을 적어주세요.</description>
</var>
<var name="default_name1" type="text">
 <title xml:lang="ko"> ┖ 기본값 이름</title>
 <description xml:lang="ko">이미지로 출력하고 싶은 기본값 이름을 적어주세요.</description>
</var>
<var name="extra_val_image1" type="text">
 <title xml:lang="ko"> ┖ 확정 이미지</title>
 <description xml:lang="ko">확정이미지의 경로를 적어주세요.( 예: http://jcas.co.kr/ok.png )</description>
</var>
<var name="extra_val_image2" type="text">
 <title xml:lang="ko"> ┖ 대기 이미지</title>
 <description xml:lang="ko">대기이미지의 경로를 적어주세요.( 예: http://jcas.co.kr/wait.png )</description>
</var>

   2. write_form.html 수정

[수정전]

 <!--@foreach($extra_keys as $key => $val)-->
        <tr>
          <th scope="row">{$val->name} <!--@if($val->is_required=='Y')-->*<!--@end--></th>
          <td>{$val->getFormHTML()}</td>
        </tr>
<!--@endforeach-->

 

[수정후]

<!--@foreach($extra_keys as $key => $val)-->
  <!--@if($val->name!=$module_info->extra_val_name1 && $val->name!=$module_info->extra_val_name2 || $grant->manager)-->
  <tr>
 <th scope="row">{$val->name} <!--@if($val->is_required=='Y')-->*<!--@end--></th>
 <td>{$val->getFormHTML()}</td>
  </tr>
  <!--@endif-->
  <!--@else-->
 <tr>
   <th scope="row">{$val->name} <!--@if($val->is_required=='Y')-->*<!--@end--></th>
   <td>{$val->getFormHTML()}</td>
 </tr>
<!--@endforeach-->

 

   3. style.list.html 수정

[수정전]

                <!--// 사용자 선언 확장변수일 경우 -->
                <!--@else-->
                        <td>{$document->getExtraValueHTML($val->idx)}&nbsp;</td>
                <!--@end-->
            <!--@end-->

 [수정후]

 <!--// 사용자 선언 확장변수일 경우 -->
 <!--@else-->
   <!--@if(($mid ==$module_info->extra_val_mid) && ($val->name ==$module_info->extra_val_name1)) -->
    <!--@if( ($mid ==$module_info->extra_val_mid) && ($document->getExtraValue(1) ==$module_info->default_name1) || ($document->getCommentCount()) )-->
     <td><center><img src="{$module_info->extra_val_image1}" class="iePngFix" /></center></td>
     <!--@else-->
     <td><center><img src="{$module_info->extra_val_image2}" class="iePngFix" /></center></td>
    <!--@end-->
   <!--@else-->
     <td>{$document->getExtraValueHTML($val->idx)}&nbsp;</td>
   <!--@end-->
 <!--@end-->
<!--@end-->

 

B. 확장변수작성

e1.jpg

 위의 이미지에서 "입력항목 이름" 과 "기본 값"이 중요합니다. 여기서는 "신청상태" "신청완료"( !기억) 

e2.jpg

 "신청상태" 외 "신청완료일"도 추가했습니다.

이상과 같이 확장변수를 추가한 다음 아래 " 스킨관리설정"에 갑니다.

 

C. 스킨관리설정

s1.jpg

  1. 확장변수 mid -- 게시판의 모듈(mid)을 기재합니다.

  2. 입력항목이름 -- 위에서 !기억 하라고 한 입력항목이름 신청상태를 기재합니다.

  3. 기본값이름 -- 기본 값 신청완료를 기재합니다.

  4. 확정/대기이미지 -- 글을 처음 작성했을때 나타나는 대기이미지와

                                   관리자가 댓글을 단 후 나타나는 확정이미지의 경로를 기재합니다.

p.s 이미지경로는 필히 전체경로로 작성해 주세요. ( http://도메인/이미지경로/이미지.png ) 

../ 이나 ./ 사용시 약간의 문제를 일으킵니다.                          

  

D. 게시판

b.jpg

 

여기서 중요한 것 

회원이 글을 작성할때는 "신청상태" 확장변수 부분은 출력이 되지를 않습니다.

그리고 글을 작성하고 나면 신청대기의 이미지가 게시판에 자동으로 출력됩니다.

그 후 관리자가 해당 작성글에 댓글을 달아주거나,

수정을 눌러서 신청상태를 선택하면 게시판에 자동으로 신청완료이미지가 출력됩니다.

그러니까 관리자가 해당글에 댓글을 달거나 수정중 한가지를 선택하면 신청완료가 된다는 이야기입니다.

또한 댓글을 달 수 있는 권한을 관리자에게만 주어야 합니다.

만약 댓글적용을 해제할려면 style.list.html수정에서  || ($document->getCommentCount())  부분을 삭제하시면 됩니다.

 

샘플사이트 구경

제목 글쓴이 날짜
아이디 첫글자에 숫자 허용 [2] wooildang 2014.07.24
기본 URL 지정 문제 해결 & 멀티도메인 1사이트 사용 간단 설정 팁 [4] SeungXE 2014.10.19
PHP에서의 파일입출력 문법 (간단히) [92] zero 2000.03.06
PHP에 대한 소개 [216] zero 2000.03.06
[SocialXE] 1.7.4.x 업데이트 후 SocialXE에서 '잘못된 요청입니다.' 오류가 뜨는 문제 해결하기 [15] file TUW 2014.03.26
업글타일 모듈에서 fail_to_trash가 뜨지만 삭제는 정상으로 진행된다면 SeungXE 2014.10.11
댓글 삭제/수정/답글 시 팝업창으로 띄우기 [22] file 고진감래 2009.10.21
[10원팁] 한서버에 2개이상의 xe를 사용할때 간헐적 백지문제 [4] 키스미베이베 2014.09.19
XE 그룹아이콘 레벨아이콘 아이콘샵 동시출력하기(모르는분들 있으까봐올립니다.) [1] 모앱 2013.02.22
방화벽 때문에 쉬운설치가 안 될경우 해결법 빛의바다 2014.10.04
회원정보 손쉽게 엑셀 파일로 저장하기 [34] thejeon 2009.08.05
메시지톡 버튼 게시판에 넣기 [18] file 착한악마 2013.11.26
php에서 한글언어 작성이 깨질때 [1] 광개토대왕3 2014.06.28
구글 API 활용(뉴스가져오기) pixfine 2014.09.24
[AJAX]DB 해당값을 검색하기 pixfine 2014.09.24
330 오류(net::ERR_CONTENT_DECODING_FAILED): 알 수 없는 오류 - 해결책 [2] 하얀마법 2012.10.25
[업데이트] [Easy Tip] [XE 1.7] XE 코어 js, css파일 jsdelivr CDN사용하기 [13] file Typhoon 2014.08.28
회원 프로필 사진 리사이징될때 ratio가 아닌 crop으로 처리하기 mAKEkr 2014.09.19
레이아웃 작업 중 갑자기 files/faceOFF/xxx/ko.cache.php 에러 발생할 시 Novelic 2014.09.19
로그인 실패 관련 쪽지 또는 메일이 안 날라오게 하는 방법 [9] sejin7940 2012.11.12