위젯 프로그램 자료실
| 라이센스 | GPL2 |
|---|---|
| 기타 라이센스 | |
| 적용 버전 | 베타버전(1.0이전) |

위 그림처럼 제로보드XE의 기본 카운터의 데이터를 지난 x일부터 오늘까지 그래프로 보여주는 위젯입니다.
(버그 잡기 놀이 하다가 심심해서 만들어 보았습니다;;)
image_counter.zip 파일을 다운받아서 압축을 풀면 image_counter 라는 폴더가 나타납니다.
이 폴더통째로 제로보드XE를 설치한 곳의 ./widgets 디렉토리 하위로 업로드 합니다.
즉 제로보드XE경로/widgets/image_counter 라는 디렉토리로 업로드 하시면 됩니다.
그리고 레이아웃 편집에서 이미지 카운터 위젯을 추가하시면 됩니다.
입력항목은 지난 X일 동안, 가로/세로 이미지 크기부터 선과 글의 색상을 지정할 수 있습니다.
아무것도 지정하지 않으면 기본 값들을 이용하구요.
단, 위젯 캐싱은 꼭 5분 이상으로 지정하셔야 매번 페이지가 읽어질때마다 이미지 파일을 만들지 않아서 부하가 생기지 않게 됩니다.
지금 XE 기본 레이아웃의 경우
<div style="text-align:center;margin-top:50px;"><img width="100%" height="100" src="http://www.zeroboard.com/common/tpl/images/widget_bg.jpg" class="zbxe_widget_output" style="clear:both;" widget="image_counter" widget_cache="10" graph_width="" graph_height="" day_range="" bg_color="" check_bg_color="" grid_color="" unique_line_color="" unique_text_color="" point_color="" widget_margin_top="" widget_margin_left="" widget_margin_right="" widget_margin_bottom="" widget_fix_width="" widget_width="50" widget_width_type="%" widget_position="" widget_sequence="13090707" /></div>
</div>
<div id="columnRight">
<!-- 컨텐츠 시작 -->
와 같이 레이아웃 편집 기능에서 <!-- 컨텐츠 시작 --> div바로 위에 위 굵은 처리된 것과 같은 div태그로 감싸서 입력해 주시면 됩니다.
문제 있으시면 댓글 달아주세요.
감사합니다.
ps. 이 위젯은 제로보드XE 0.1.2에 포함될 함수를 필요로 하고 있습니다.
SVN을 이용하시는 분은 sandbox로 update하면 되지만 0.1.2 배포 이전에 이 위젯을 쓰실 분은 func.inc.php 파일을 다운받으셔서 제로보드설치디렉토리/config/func.inc.php 로 업로드 후에 사용하시면 됩니다.
혹시 다운받은 파일이 func.inc.php.txt 로 이름이 지어지면 func.inc.php 파일로 이름을 변경후 올려주시면 됩니다.
버전 의존성 체크 없이 그냥 올려버려서 고생하신 분들께 매우 죄송하다는 말씀드립니다. ㅡ.ㅜ
도대체 23번 라인엔 무슨 일이..........
안에 확인해보니
$bg_color = hexrgb($args->bg_color?$args->bg_color:'#FFFFFF'); 음..잘못된 게 없는데 왜이럴까요?
ㅜㅜ 도와주십쇼~
저는 간단하게 해결봤습니다.
hexrgb 함수가 없길래 만들어 버렸죠....
hexdec(): 16진수->10진수
← 자릿수가 풉;;;
기본 코드에 config/func.inc.php에 hexrgb() 함수를 정의해 놓고 이것만 달랑 올려버렸네요.
해당 파일 첨부하고 설명 부분 수정하겠습니다.
폼마다 값을 입력해주고 나서야 제대로 보였습니다. ^^
이미지카운터가 좌측메뉴에서 너무작게 보이는데 어느부분의 태그를 수정하면 늘릴 수 있을까요?
<img width="100%" height="100" src="http://www.box31.com/zbxe/common/tpl/images/widget_bg.jpg" class="zbxe_widget_output" style="clear:both;" widget="image_counter" skin="" colorset="" widget_cache="10" graph_width="100%" graph_height="100" day_range="" bg_color="" check_bg_color="" grid_color="" unique_line_color="" unique_text_color="" point_color="" widget_margin_top="" widget_margin_left="" widget_margin_right="" widget_margin_bottom="" widget_fix_width="" widget_width="100" widget_width_type="%" widget_position="" widget_sequence="1430" />
넓이부분은 대부분 100%로 설정했는데도 좌측메뉴에서 50%정도만 공간을 차지하면서 보입니다..
카운터의 max값과 min 값이 같은 경우 0으로 나눠졌다는 오류가 발생하네요..
image_counter.class.php 의 103번 쨰 줄과 123번 째 줄의 if문이 요렇게 되있는데.
if($max_unique_visitor == 0) $per = 0;
else $per = ($val->unique_visitor-$min_unique_visitor) / ($max_unique_visitor-$min_unique_visitor);
elseif($max_unique_visitor == $min_unique_visitor) $per = 0;
요 구문을 추가해야 할 듯 싶습니다.








따끈따끈 한거네요 잘쓰겠습니다 ^^