팁과노하우

  • 팁과노하우 포인트 정책
      글쓰기
      100P
      댓글
      10P
  • 전체 63건 / 1 페이지
    • 63
    • 2일 전
      2025.02.18
  • 2일 전
  • 테스트 서버에는 정해진 아이피만 접근하기
  • 안녕하세요...미니님a입니다.
    필요에 의해 테스트 서버 하나쯤은 가지고 계시죠?근데 다른 사람들은 접근할 수 없게 만들어야 할 때가 종종 있습니다.
    실제로 제가 업로드 할 때 테스트 하는 리빌더 테스트 서버는 저만(?) 접속이 가능하거든요http://rbtest.dothome.co.kr
    위 접속하시면  아래 처럼 뜨는데요!!
    이런 식으로 타인에게는 접속을 허용하지 않고, 나만의 서버로 자유롭게 테스트 할 때 유용하게 사용할 수 있는 팁입니다! 
    소스에 대해 알고 계신다면 먼저 extend 폴더에 server.extend.php 파일을 생성해주세요 (이건 없기에 만들어야 합니다.)그리고 아래 코드를 통으로 복사해서 붙혀 넣으시면 됩니다.
    만약 소스에 대해서 잘 모르신다면 첨부된 파일을 다운로드 받아 압축해제 이후 extend 폴더에 넣어주시고, 본인의 아이피 대역만 설정해주시면 됩니다.(어찌 되었던 코드는 ㅠㅠ 조금 수정하셔야 합니다.)
    <?php if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 $ip = '^(5.7.|5.50.|20.18.)'; if (!preg_match("/$ip/", $_SERVER['REMOTE_ADDR'])) {     echo 'rebuilder 테스트 서버입니다.';     exit; }
    상단에 아이피 대역은 본인의 아이피를 입력 하시거나 / 아이피 대역을 입력하시면 해당 사용자들만 접속이 가능합니다.
    광역으로 설정 되어있으며, 정확하게 하려면 아이피를 정확하게 입력해주시면 됩니다.본인 아이피는 아래 링크 (네이버) 누르면 확인 가능합니다.
    https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=0&ie=utf8&query=%EB%B3%B8%EC%9D%B8+%EC%95%84%EC%9D%B4%ED%94%BC+%ED%99%95%EC%9D%B8
    소스 코드는 2자리 광역이며, 만약 3자리 광역으로 하고자 한다면
    5\.7\.13\.   으로 하시면 됩니다.구분은 | 파이프로 처리 하시면 됩니다.
    고맙습니다.
    • a23659d8ced439b12c1c9beec1d09c63_1739845811_3227.png
    • 62
    • 2일 전
      2025.02.18
  • 2일 전
  • [멤버십] 구독 시 포인트 지급 및 구독 취소 시 알림 설정
  • 안녕하세요...미니님a입니다.
    해당 내용은 멤버십 내 "구독 + 알림" https://rebuilder.co.kr/item/126 을 사용하고 있다는 가정하에 공유 드리는 팁입니다.
    나는 소스 수정에 대해서 잘 알지 못한다? 하시면 아래 링크를 통해 다운로드 하시면 됩니다.https://rebuilder.co.kr/memberdata/119
    해당 팁에서 공유 되는 내용은 다음과 같습니다.
    1. 구독 추가 시 알림이 오지만, 구독 취소 시 알림이 오지 않아요 그래서 알림 추가
     2. 구독 추가 시 보너스 포인트 지급 및 구독 해제 시 보너스 포인트 회수를 통한 구독 시스템 활성화

     
    보너스 포인트 지급을 통해 구독을 유도 하고, 활성화 할 수 있는 방법이 아닐까? 조심스러운 생각이 듭니다.
    수정 되는 파일은 2곳입니다.rb/rb.mod/subscaribe/ajax.subscribe.phprb/rb.mod/subscaribe/ajax.subscribe_update.php
    먼저. rb/rb.mod/subscaribe/ajax.subscribe.php 파일을 열어주세요
    다음 소스를 찾아주세요
    $data = array('status' => 'del');
    그리고 바로 위에 소스를 넣어주세요
    // 구독 취소한 회원 정보 가져오기 $sb_fw_info = get_member($sb_fw_id); // 구독 취소시 포인트 차감 (-100 포인트) insert_point($member['mb_id'], 100 * - 1, $sb_fw_info['mb_nick'].'님 구독 취소', '@subscribe', 'subscribe_'.G5_TIME_YMDHIS, G5_TIME_YMDHIS); // 구독 취소 알림 메시지 발송 memo_auto_send($member['mb_nick'].'님 께서 회원님을 구독 취소 하셨습니다.', G5_URL.'/rb/home.php?mb_id='.$sb_mb_id.'&ca=fn', $sb_fw_id, "system-msg");
    주석 처리 해뒀으니 참고하시면 되며, 100포인트는 임의로 설정한 것입니다. 더 많이 주실 수록 시스템이 활성화 되리라 믿습니다?잘 모르겠다? 하시는 분들을 위해 스샷 부분 참고하세요



     그리고 하단에 구독 추가 시 알림은 기본적으로 되어있어 포인트 지급 부분만 수정 하면 됩니다.
    $data = array('status' => 'ok');
    코드 바로 위에 아래 코드를 넣어주세요
    // 구독 대상 회원 정보 가져오기 $sb_fw_info = get_member($sb_fw_id); // 구독 추가시 포인트 지급 (100 포인트) insert_point($member['mb_id'], 100, $sb_fw_info['mb_nick'].'님 구독 추가', '@subscribe', 'subscribe_'.G5_TIME_YMDHIS, G5_TIME_YMDHIS);
    마찬가지로 잘 모르겠다? 하시면 아래 스샷 보고 참고 하세요

     
    자! 여기까지 오셨다면 기본적으로는 끝났습니다.다만 My 페이지 내 구독자에서 삭제 시 포인트 회수 및 알림 설정이 남았습니다.

    rb/rb.mod/subscaribe/ajax.subscribe_update.php 파일을 열어주세요
    그리고 삭제 되는 부분을 찾습니다.
     if($sb_type == "del") {         if (isset($_POST['sb_id']) && !empty($_POST['sb_id'])) {                          $mb_id = $member['mb_id'];             $sb_id = $_POST['sb_id'];
    그리고 $sb_id 하단에 아래 코드를 넣어주세요
    // 구독 취소한 회원 정보 및 데이터 가져오기 $sb_data = sql_fetch("SELECT * FROM rb_subscribe WHERE sb_id = '{$sb_id}' and sb_mb_id = '{$mb_id}'"); $sb_info = get_member($sb_data['sb_fw_id']); // 구독 취소시 포인트 차감 (-100 포인트) insert_point($mb_id, 100 * - 1, $sb_info['mb_nick'].'님 구독 취소', '@subscribe', 'subscribe_'.G5_TIME_YMDHIS, G5_TIME_YMDHIS); // 구독 취소 알림 메시지 발송 memo_auto_send($member['mb_nick'].'님 께서 회원님을 구독 취소 하셨습니다.', G5_URL.'/rb/home.php?mb_id='.$mb_id.'&ca=fn', $sb_data['sb_fw_id'], "system-msg");
    스샷은 아래를 참고 하세요


     여기까지!입니다.
    여기까지 잘 따라 오셨다면 구독 시 100포인트가 지급되며, 구독 취소 시 100포인트가 회수 됩니다.또한 구독 취소 시 알림까지 오게 됩니다.
    구동 영상은 아래를 참조 하시길 바랍니다.고맙습니다.

     
    • 8aeab0b19d4b1811f22d6c81d1d65c2c_1739843201_043.png
    • 61
    • 4일 전
      2025.02.16
  • 4일 전
  • 홈페이지 접속시 연결된 여러도메인을 일괄적으로 메인도메인으로 이동시켜주기
  • www.aaa.com 접속시www.ccc.com 으로 접속하고 싶을경우
    이외 모든 연결된 도메인을 www.ccc.com 으로 접속하고자 할 경우
    <script type="text/javascript"> 
    var url = "www.ccc.com"; 
    if(location.host.toLowerCase().indexOf(url) == -1){ 
    location.href = "https://" + url + location.pathname + location.search; 

    </script> 
    그누보드5에 적용하고 싶으신 분들은위 스크립트를그누보드5 관리자 페이지 > 환경설정 > 레이아웃 추가설정(추가 script, css) 에다가 넣으시면 됩니다.
    • 60
    • 6일 전
      2025.02.14
  • 6일 전
  • 게시글 목록 인기순/추천순/날짜순 정렬 기능 추가 하기
  • 안녕하세요...미니님a입니다.
    해당 기능은 댓글로 팡야님께서 요청 하셔서 작업 했습니다.해당 기능은 커스터마이징을 한 사용자에게 유효하며, 스킨으로 적용하실 분들은 아래 링크에서 적용하시면 됩니다.
     스킨 https://rebuilder.co.kr/userdata/366
    단. 공지는 최우선 정렬이라서, 포함되지 않습니다.
    기본 : theme/rb.basic/skin/board/rb_basic/list.skin.php 파일을 열어주세요통합 : theme/rb.basic/skin/board/rb.bbs/list.skin.php 파일을 열어주세요
    그리고 상단에 스타일을 우선 적용 해주세요단. style.css 에 적용하셔도 무방합니다.
    <style> .order_list{ display: flex; justify-content: flex-end; margin-bottom: 24px; } .sort_select_wrap{ flex-basis: 15%; } @media (max-width: 1024px) { .sort_select_wrap{ flex-basis: 20%; } } @media (max-width: 768px) { .sort_select_wrap{ flex-basis: 30%; } } @media (max-width: 480px) { .sort_select_wrap{ flex-basis: 40%; } } </style>
    어딘지 잘 모르겠다? 하시면 아래 스샷 참고 하세요

     
    그리고 다음 코드를 찾아 주세요통합 게시판의 경우는 theme/rb.basic/skin/board/rb.bbs/top/basic/skin.php 파일 맨 하단에 있습니다. (똑같은 코드가 있음)
    <div class="cb"></div>     </ul>
    이 코드 바로 밑에 아래 코드를 넣어주세요
    <div class="order_list">         <div class="sort_select_wrap">             <select name="sort_option" id="sort_option" onchange="changeSortOption(this.value)" class="select" style="width: 100%;">                 <option value="wr_datetime desc" <?php echo ($sst == 'wr_datetime' && $sod == 'desc') ? 'selected' : ''; ?>>최신순</option>                 <option value="wr_good desc" <?php echo ($sst == 'wr_good' && $sod == 'desc') ? 'selected' : ''; ?>>추천순</option>                 <option value="wr_hit desc" <?php echo ($sst == 'wr_hit' && $sod == 'desc') ? 'selected' : ''; ?>>조회순</option>             </select>         </div>     </div> 마찬가지로 잘 모르겠다? 하시면 아래 스샷 참고 하세요

     
    자 다왔습니다. 이제 맨 하단에 스크립트만 추가 해주시면 됩니다.이부분은 코드 찾는게 아니라 진짜 맨 끝으로 이동 해주세요
    그리고 다음 코드를 넣어주세요통합 게시판의 경우 theme/rb.basic/skin/board/rb.bbs/list.skin.php 파일 맨 하단에 넣어 주시면 됩니다.
    <script> function changeSortOption(value) {     var [sst, sod] = value.split(' ');     var currentUrl = window.location.href;          // URL에서 현재 정렬 파라미터 제거     currentUrl = currentUrl.replace(/[?&]sst=[^&]+/, '').replace(/[?&]sod=[^&]+/, '');          // 새로운 정렬 파라미터 추가     var connector = currentUrl.includes('?') ? '&' : '?';     var newUrl = currentUrl + connector + 'sst=' + sst + '&sod=' + sod;          // 페이지 새로고침     window.location.href = newUrl; } </script> 마찬가지로 잘 모르겠다? 하시면 스샷 참고 하시길 바랍니다.

    자 끝났습니다. 이제 테스트 해보시겠어요?실제 구동 영상은 아래와 같습니다.
    고맙습니다.

     
    [수정 반영]2025.02.17- 모바일에서 셀렉트 박스가 비정상적으로 보이던 오류 수정 *상단 스타일 부분만 수정 되었습니다.*
    • 7bfe84788c985ae7490a451d1dc453de_1739767767_4299.png
    • 59
    • 6일 전
      2025.02.14
  • 6일 전
  • 게시판 내 추천해요/별로에요 숫자를 실시간으로 변경해봅시다.
  • 안녕하세요...미니님a입니다.
    리빌더에 추천/비추천 > 추천해요/별로에요 라는 문구로 변경 되어 사용 중이신 것을 알고 계실겁니다.그런데 원래 추천/비추천을 하게 되면 실시간으로 숫자가 올라갑니다.
    그렇지만, 리빌더에는 그 기능이 누락 되어있습니다.기능상 오류는 아니고 리빌더 개발과정에서 해당 태그를 뺀 것으로 보이는데요
    무슨 말인지는 아래 영상 확인해보세요
     그리고 새로고침 하면 정상적으로 숫자가 보여지게 됩니다.
    이걸 수정할 것인데요별거 아닙니다.
    파일 경로는 다음과 같습니다.
    기본: theme/rb.basic/skin/board/rb_basic/view.skin.php통합: theme/rb.basic/skin/board/rb.bbs/skin/view/basic/skin.php 
    아래 코드를 찾아주세요[code]<div id="bo_v_act">        <?php if ($good_href) { ?>        <span class="bo_v_act_gng">            <a href="<?php if(!$is_member) { ?>javascript:alert('로그인 후 이용하실 수 있습니다.');<?php } else { ?><?php echo $good_href.'&amp;'.$qstr ?><?php } ?>" id="good_button" class="bo_v_good">추천해요 <?php echo number_format($view['wr_good']) ?></a>            <b id="bo_v_act_good" class="font-R"></b>        </span>        <?php } ?>        <?php if ($nogood_href) { ?>        <span class="bo_v_act_gng">            <a href="<?php if(!$is_member) { ?>javascript:alert('로그인 후 이용하실 수 있습니다.');<?php } else { ?><?php echo $nogood_href.'&amp;'.$qstr ?><?php } ?>" id="nogood_button" class="bo_v_nogood">별로에요 <?php echo number_format($view['wr_nogood']) ?></a>            <b id="bo_v_act_nogood" class="font-R"></b>        </span>        <?php } ?>    </div>[/code]
    여기에서 
    [code]<?php echo number_format($view['wr_good']) ?> [/code]
    해당 부분을
    [code]<strong><?php echo number_format($view['wr_good']) ?></strong>[/code]
    요렇게 변경 해주세요
    그리고 바로 밑에 별로에요 부분을 찾아주시구요
    [code]<?php echo number_format($view['wr_nogood']) ?>[/code]
    해당 부분을
    [code]<strong><?php echo number_format($view['wr_nogood']) ?></strong>[/code]
    변경하시면 실시간으로 변경 됩니다.구동 영상은 아래를 참조 하세요
    고맙습니다.

     

    • 58
    • 9일 전
      2025.02.12
  • 9일 전
  • 그누보드5(리빌더) 영카트(쇼핑몰) 끄기/사용안하기
  • 그누보드에선 영카트와 그누보드가 하나로 배포 되고, 설치되어 있습니다.근데, 리빌더 혹은 커뮤니티만 운영하고 싶을 경우 SHOP/마켓/영카트 메뉴가 노출 되어 불편을 겪고 계신 분들이 계실텐데요그럴경우 아래의 간단한 조치만으로 해결 할 수 있습니다.
    data/dbconfig.php를 찾습니다
    해당 파일을 열어코드 찾기define('G5_USE_SHOP', true);를 찾아 true 를, false 로 변경
    예시 :define('G5_USE_SHOP', false);
    false로 바꾸면, 그누보드5 관리자 페이지서 쇼핑몰 관련 메뉴들이 전부 하이드 (숨김)처리 됩니다.
    • 57
    • 11일 전
      2025.02.09
  • 11일 전
  • 관리자 추가
  • 그누보드는 기본적으로 최고관리자 1명, 게시판 관리자는 각 게시판별로 1명만 지정할 수 있습니다.관리자가 여러명 필요할 때 참고하세요.


    /extend/default.config.php 파일에 추가 
    // 최고관리자 (회원id 지정)
    if ($member['mb_id'] == '회원아이디1') $is_admin = 'super';
    if ($member['mb_id'] == '회원아이디2') $is_admin = 'super';


    // 최고관리자 (특정 레벨 지정)
    if ($member['mb_level'] == 회원레벨) $is_admin = 'super';
    • 56
    • 13일 전
      2025.02.07
  • 13일 전
  • 공지사항 접기 기능을 만들어 봅시다.
  • 안녕하세요...미니님a입니다.
    공지사항이 너무 많거나 / 사용자 입장을 고려해 공지 사항 닫기(접기) 기능을 간단하게 구현할 수 있습니다.별도로 스킨으로 올리지 않는 이유는 몇가지 코드만 추가 하면 되기 때문입니다.
    기본의 경우 rb.basic_bbs/list.skin.php 파일을 열어 아래 코드를 찾아주세요통합의 경우 rb.bbs/top/basic/skin.php 파일을 열어 동일하게 아래 코드를 찾아주시면 됩니다.
    [code]<ul class="rb_bbs_top">[/code]
    그리고 그 바로 밑에 다음 코드를 추가 해주세요
    [code]<li><button type="button" class="btn_b01 btn notice_icon" title="공지 닫기"><i class="fa fa-bullhorn" aria-hidden="true"></i><span class="sound_only">공지 닫기</span></button></li>[/code]
    잘 모르겠다? 하시면 아래 스샷 참고 하시면 됩니다.

     
    그리고 조금만 내려 보시면 스크립트가 있는데 아래 코드를 찾아주세요기본/통합 둘다 있는 코드입니다.
    [code] $('#point_info_opens_btn').click(function(event) {                        event.stopPropagation();                         $('.point_info_opens').toggle();                        $(this).toggleClass('act');                    });[/code]
    그리고 여기 밑에 아래 코드를 넣어주시면 됩니다.
    [code]     $("tr:has(.lb_ico_noti)").hide();        let notice_shown = localStorage.getItem('notice_shown');        if (!notice_shown) {            $("tr:has(.lb_ico_noti)").show();        }         $(document).on("click", ".notice_icon", function() {            let noticeKey = 'notice_shown';            if (localStorage.getItem(noticeKey) !== 'true') {                localStorage.setItem(noticeKey, 'true');            } else {                localStorage.removeItem(noticeKey);            }            $("tr:has(.lb_ico_noti)").toggle();        });[/code]
    마찬가지로 스샷 참고 하시면 됩니다.

     끝입니다. 이렇게 하시면 공지 접기가 동작하며,
    로컬스토리지를 이용하기 때문에 새로고침을 하더라도 공지 접기가 유효합니다.
    실 동작은 아래 영상은 참고 하세요
    고맙습니다.
    ※ 힘내서 많은 팁을 공유할 수 있도록 추천 한번 부탁드립니다.

     
    • 55
    • 15일 전
      2025.02.05
  • 15일 전
  • 비회원은 ? 시간 동안 댓글을 볼 수 없는 기능을 추가 해봅시다!!
  • 안녕하세요...미니님a입니다.
    더X라는 사이트에는 재미난 시스템이 하나 있습니다.게시판의 내용을 볼 수 있지만, 비회원은 특정 시간 동안 댓글을 볼 수 없습니다. 아래처럼요
     이 기능!! 만들어봅시다.기본 게시판과 통합 게시판 모두 작성되어있습니다.
    [기본 게시판 설정]
    theme/rb.basic/skin/board/rb.basic_bbs/view_comment.skin.php 파일을 열어주세요
    그리고 52번 라인을 찾아주세요 만약 커스터 마이징을 했다면 아래 코드를 찾아주시면 됩니다.
    <!-- 댓글 출력 --> <div class="cmt_contents">   <p>      <?php if (strstr($list[$i]['wr_option'], "secret")) { ?><img src="<?php echo $board_skin_url; ?>/img/ico_sec.svg" alt="비밀글"><?php } ?>      <?php echo $comment ?>   </p>
    위 코드를 아래 코드로 통으로 변경해주세요
     <!-- 댓글 출력 -->             <!-- 시간 체크 추가 -->             <?php $diff_time = (time() - (new DateTime($list[$i]['datetime']))->getTimestamp()) / 3600;?>             <!-- 시간 체크 추가 -->             <div class="cmt_contents">                 <p>                     <?php if (strstr($list[$i]['wr_option'], "secret")) { ?><img src="<?php echo $board_skin_url; ?>/img/icon_secret.gif" alt="비밀글"><?php } ?>             <!-- 시간 체크 추가 -->                 <?php                     if($diff_time >= 1 || ($is_member && $member['mb_id'])) {                                   echo "<span class='test'>".$comment."</span>"; // 글제목 출력                             }else{                                 echo "<span class=' font-bold block text-center'>비회원은 댓글 작성 기준 1시간 이내의 내용은 확인할 수 없습니다.<br>로그인 이후 즉시 확인할 수 있습니다.</span>";                             }                     ?>             <!-- 시간 체크 추가 위에 diff_time 1 이 한시간입니다. 2라면 2시간입니다. -->                 </p>

    [통합 게시판 설정]
    theme/rb.basic/skin/board/rb.bbs/skin/cmt/basic/skin.php 파일을 열어주세요
    마찬가지로 위와 동일하게 45번 라인에 주석으로 된 댓글 출력을 찾아주세요만약 커스터 마이징을 했다면 아래 코드를 찾아주시면 됩니다.
            <!-- 댓글 출력 -->         <div class="cmt_contents">             <p>                 <?php if (strstr($list[$i]['wr_option'], "secret")) { ?><img src="<?php echo $board_skin_url; ?>/img/ico_sec.svg" alt="비밀글"><?php } ?>                 <?php echo $comment ?>             </p>
    동일하게 위 코드를 아래 코드로 변경 해주시면 됩니다.
    <!-- 댓글 출력 -->             <!-- 시간 체크 추가 -->             <?php $diff_time = (time() - (new DateTime($list[$i]['datetime']))->getTimestamp()) / 3600;?>             <!-- 시간 체크 추가 -->             <div class="cmt_contents">                 <p>                     <?php if (strstr($list[$i]['wr_option'], "secret")) { ?><img src="<?php echo $board_skin_url; ?>/img/icon_secret.gif" alt="비밀글"><?php } ?>             <!-- 시간 체크 추가 -->                 <?php                     if($diff_time >= 1 || ($is_member && $member['mb_id'])) {                                   echo "<span class='test'>".$comment."</span>"; // 글제목 출력                             }else{                                 echo "<span class=' font-bold block text-center'>비회원은 댓글 작성 기준 1시간 이내의 내용은 확인할 수 없습니다.<br>로그인 이후 즉시 확인할 수 있습니다.</span>";                             }                     ?>             <!-- 시간 체크 추가 위에 diff_time 1 이 한시간입니다. 2라면 2시간입니다. -->                 </p>
    일반 게시판과 통합 게시판 스샷 라인은 다르지만, 코드가 같아 코드 스크린샷은 하나로 통일 합니다.

     위 코드 작성 시 아래 처럼 결과를 볼 수 있습니다.

    당연히 로그인 하시면 즉시 볼 수 있습니다.
    고맙습니다.
    ※ 추천은 구걸이라 배웠습니다. 추천 좀!!! ㅎㅎ
    • 1fb981ab72f4a9a369be618d6c4a4b17_1738738249_3428.png
    • 54
    • 16일 전
      2025.02.04
  • 16일 전
  • 특정 기간에만 동작하는 코드 만들기
  • 안녕하세요...미니님a입니다.
    웹 페이지 내 이벤트 혹은 특정 기간에만 어떠한 액션을 주고 싶을 때 유용하게 사용할 수 있습니다.
    $current_time = time(); $start_time = strtotime('2025-02-04 00:00:00'); $end_time = strtotime('2025-02-06 23:59:59'); if ($current_time >= $start_time && $current_time <= $end_time) {    하고싶은 동작 }
    이렇게 작성하시면,2025년도 02월 04일 00:00:00 ~ 02월 06일 23시59분59초까지만 동작하는 코드를 만들 수 있습니다.
    해당 기간이 지나면, 자동으로 동작하지 않기 때문에 따로 지울 필요 없이,나중에 생각나면, 코드를 지우면 되니깐 유용하게 사용할 수 있을 것입니다.
    사용예제)크리스마스 기념 포인트 지급, 아이템 지급 / 새해 기념 아이템 지급, 포인트 지급특정 기념 할인 배너 출력 / 특정 기념 할인 팝업창 출력 (50% 할인 등)랜덤으로 할인 쿠폰 제공 등등
    사용성에 따라 무궁 무진하게 사용할 수 있을 것입니다.
    고맙습니다.
    • 53
    • 17일 전
      2025.02.03
  • 17일 전
  • 색상 선정에 고민이 있다면 이 글을 클릭 하세요
  • 안녕하세요...미니님a 입니다.
    한번 쯤은 색상이 어울리나? 어떤색을 써야 하나 ? 고민 해보신 적 많으실 것이라 생각됩니다.그래서 개발해봤습니다.
    색상 생성기 + 색상 팔레트(추천기) 입니다.
    https://colorgenerator.kr/
    nextjs15 버전으로 개발 하였으며, 스샷은 다음과 같습니다.
    - 색상 생성기 
    컬러를 입력 시 100 ~ 1000까지의 색상을 추천 해줍니다. 실시간 변경 됩니다.
    클릭 시 복사 가능합니다.
    내보내기 시 보여지는 컬러를 저장할 수 있습니다 (이미지로 저장됨)
    색상 잠금 기능도 추가 하였습니다.


     - 색상 추천기
    색상 선택 시 유사/보색/분할보색1,2 / 삼각 구도 색을 추천 해줍니다.
    내보내기 시 해당 색상을 저장할 수 있습니다.

     

    [테일윈드 색상]
    4.0 버전의 색상 950까지 모두 출력 합니다
    클릭 시 복사가 가능합니다.
    =추가 25.02.04=[이미지 색상 추출]
    이미지 업로드 시 사용된 이미지의 색상을 추출합니다.

     
    [사이트 기능]
    1. 한국어 / 영어 버전을 지원합니다.
    2. 다크 모드를 지원합니다.
    3. 모바일 반응형을 지원합니다.
    고맙습니다.
    • ff4da65fbcbb11b8414ed407a9695655_1738569859_2118.png
    • 52
    • 20일 전
      2025.01.31
  • 20일 전
  • 회원 가입 및 회원 정보 수정 시 관리자에게 알림 보내기
  • 안녕하세요...미니님a입니다.
    회원 가입 및 회원 정보 수정 시 관리자에게 메시지를 보내는 기능을 추가 해보려고 합니다.초보라도 비교적 간단하게 기능을 추가 할 수 있습니다.
    실제 동작은 아래와 같습니다.


     
    다음 경로에서 파일을 열어주세요
    theme\rb.basic\skin\member\rb.member\register_form_update.tail.skin.php
    해당 파일을 열어
    주석이 끝나는 (SMS 문자) 다음에 5줄만 넣어주세요
    [code]if ($w == '' || $w == 'u') {    $memo_content = $mb_nick.'님이 '.G5_TIME_YMDHIS.'에 ';    $memo_content .= ($w == '') ? '회원 가입했습니다.' : '회원 정보를 수정했습니다.';    memo_auto_send($memo_content, '', $config['cf_admin'], "system-msg");}[/code]
    끝입니다.
    만약 어딘지 잘 모르겠다 하시면 아래 스샷 보시면 이해 되실 겁니다.


    만약 나는 어? 그냥 회원 가입만 쓰고 싶은데요? 굳이 정보 수정까진 필요 없어요? 하신다면 코드를 아래 처럼 변경 해주세요
    [code]if ($w == '') {    $memo_content = $mb_nick.'님이 '.G5_TIME_YMDHIS.'에 ';    $memo_content .= '회원 가입했습니다.';    memo_auto_send($memo_content, '', $config['cf_admin'], "system-msg");}[/code]
    끝 입니다.
    고맙습니다.

    • 51
    • 오래 전
      2025.01.23
  • 오래 전
  • 게시물 관리 기능 내 리스트 목록에서 기능을 업데이트 해봅시다!
  • 안녕하세요...미니님a 입니다.
    예전에 SIR 에 업로드 된 팁이긴 하지만, 리빌더에는 기본적으로 적용된 게시물 관리 기능 업데이트를 다른 분들께 공유하고자 작성합니다.
    기존 게시글을 그대로 복붙이 아닌, 리빌더에 맞게 수정된 게시글입니다. (결과만 예전에 올린 것과 동일)게시물 관리는 빌더설정 > 게시물 관리 메뉴에서 활용할 수 있습니다.
    나는 소스에 대해 잘 몰라서, 적용이 어려울 것 같다? 하시는 분들은 아래 링크에서 자료 다운로드 하실 수 있습니다.https://rebuilder.co.kr/userdata/305


    실제 구동 되는 영상은 아래와 같습니다.

     
    주의 : 제 코드 라인과는 동일하지 않을 수 있습니다. 본인의 작성된 코드 라인 근처 혹은 검색을 이용해주세요
    다음 파일을 열어주세요
    adm/rb/bbs_list.php  151번 라인 근처 혹은 다음 코드를 찾아주세요
    <th scope="col"><?php echo subject_sort_link('wr_hit'); ?>조회</a></th>
    그리고 이 코드를 다음에 2줄을 추가 해줍니다.
    <th scope="col"><?php echo subject_sort_link('wr_good'); ?>추천</a></th> <th scope="col"><?php echo subject_sort_link('wr_nogood'); ?>비추천</a></th>
    스샷으로 보면 다음과 같습니다. 

     

    그 다음 163번 라인 근처 혹은 다음 코드를 찾아 주세요
    $bg = 'bg'.($i%2);
    그리고 다음 코드를 추가 해주세요
    $bo_use_good = $board['bo_use_good']; $bo_use_nogood = $board['bo_use_nogood'];
    마찬가지로 스샷으로 보면 다음과 같습니다.

     
    그리고 같은 파일 179번 라인 혹은 다음 코드를 찾아 주세요
    <td class="td_mng td_mng_s"><?php echo $row['wr_hit']; ?></td>
    그리고 기존 코드 위 찾은 코드도 함께 변경 되어야 합니다.
    <td class="td_mng td_mng_s"><input style="text-align:center;" type="number" value="<?php echo $row['wr_hit']; ?>" name="wr_hit[<?php echo $i;?>]"></td> <td class="td_mng td_mng_s"><?php if($bo_use_good) { ?><input style="text-align:center;" type="number" value="<?php echo $row['wr_good']; ?>" name="wr_good[<?php echo $i;?>]"><?php } else { echo '미사용'; } ?></td>         <td class="td_mng td_mng_s"><?php if($bo_use_nogood) { ?><input style="text-align:center;" type="number" value="<?php echo $row['wr_nogood']; ?>" name="wr_nogood[<?php echo $i;?>]"><?php } else { echo '미사용'; } ?></td>
    아예 기존 wr_hit 도 수정할 수 있게 코드가 변경 된다는 뜻이니 참고하세요
    스샷은 다음과 같습니다.

     
    자 그리고 199번 라인 근처 혹은 다음 코드를 찾아 주세요
      <input type="submit" name="act_button" value="선택삭제" onclick="document.pressed=this.value" class="btn btn_02">
    그리고 그 다음 줄에 추가 해주세요
      <input type="submit" name="act_button" value="선택수정" onclick="document.pressed=this.value" class="btn btn_02">
    스샷으로 보면 다음과 같습니다.

    자 여기까지 하시면 일단 프론트 자체는 끝이 났습니다.
    마지막으로 수정 되는 것 까지 하실려면 
    adm/rb/bbs_list_update.php파일을 열어 주세요
    17번 라인 근처 혹은 다음 코드를 찾아 주세요
    if ($_POST['act_button'] == "선택삭제") {
    그리고 이 코드 바로 위에 다음 코드를 넣습니다.
    if($_POST['act_button'] == "선택수정"){     auth_check_menu($auth, $sub_menu, 'd');         for($i=0; $i<$count_post_chk; $i++){         // 실제 번호를 넘김         $k = isset($_POST['chk'][$i]) ? (int) $_POST['chk'][$i] : 0;         $iwr_id = isset($_POST['wr_id'][$i]) ? (int) $_POST['wr_id'][$k] : 0;         $wr_hit = isset($_POST['wr_hit'][$i]) ? (int) $_POST['wr_hit'][$k] : 0;         $wr_good = isset($_POST['wr_good'][$i]) ? (int) $_POST['wr_good'][$k] : 0;         $wr_nogood = isset($_POST['wr_nogood'][$i]) ? (int) $_POST['wr_nogood'][$k] : 0;                 $sql = "update g5_write_{$bo_table} set wr_hit = ${wr_hit}, wr_good = ${wr_good}, wr_nogood = ${wr_nogood} where wr_id = '{$iwr_id}'";         sql_query($sql);     } }
    마찬가지로 스샷은 다음과 같습니다.


    이렇게 하시면, 목록에서 조회수 / 추천수 / 비추천수를 관리자가 임의로 수정할 수 있습니다. 
    만약 추천/비추천 미사용 시 미사용이라고 안내가 됩니다.

    고맙습니다.

     
    • da0c4c9be8b6d04d7b206de454053c04_1737606268_1063.png
    • 50
    • 오래 전
      2025.01.21
  • 오래 전
  • 하루 게시글 / 댓글 작성 포인트 지급 제한
  • 안녕하세요...미니님a 입니다.
    커뮤니티 사이트 특성상 무제한으로 댓글 혹은 게시글 포인트 지급이 되어 제한 하고자 하시는 분들께서 유용하게 사용할 수 있을 것입니다.
    사용하시는 게시판 스킨 디렉토리 내 write_update.head.skin.php / write_comment_update.head.skin.php 파일을 생성 합니다.이는 통합 게시판 / 일반 기본 게시판과 구분 없습니다.
    파일명을 보시면 아시겠지만, 댓글 / 게시글을 따로 적용하여야 합니다.
    몇번까지 제어하실지는 아래 코드에서 수정 하시면 됩니다. 기본 4로 설정 되어있습니다.
    [write_comment_update.head.skin.php] <?php if (!defined('_GNUBOARD_')) exit;         $comment_cnt = sql_fetch(" select count(*) as cnt from $write_table where wr_is_comment = '1' and mb_id = '{$member['mb_id']}' and substring(`wr_datetime`,1,10) = '". G5_TIME_YMD ."'");         $comment_max = 4; //하루에 포인트를 부여할 댓글쓰기 회수         // 하루에 댓글쓰기 횟수가 최대회수를 넘었다면     if ($comment_cnt['cnt'] >= $comment_max) {     $board['bo_comment_point'] = 0; // 댓글쓰기 포인트 지급 0     } 만약 해당 파일이 있다면 상단에 [code]<?phpif (!defined('_GNUBOARD_')) exit; [/code]
    이부분은 생략 하시고 본 코드만 넣어주세요

    [write_update.head.skin.php] <?php if (!defined('_GNUBOARD_')) exit;              // 게시글 수 확인     $write_cnt = sql_fetch(" select count(*) as cnt from $write_table where wr_is_comment = '0' and mb_id = '{$member['mb_id']}' and substring(`wr_datetime`,1,10) = '". G5_TIME_YMD ."'");         $write_max = 4; //하루에 포인트를 부여할 게시글쓰기 횟수         // 하루에 게시글쓰기 횟수가 최대 횟수를 넘었다면     if ($write_cnt['cnt'] >= $write_max) {         $board['bo_write_point'] = 0; // 게시글쓰기 포인트 지급 0     } 마찬가지로 해당 파일이 있다면[code] <?phpif (!defined('_GNUBOARD_')) exit; [/code]이부분은 생략하고 바로 하단에 있는 코드만 넣어주심 되세요
    이렇게 하시면 해당 개수 이상일 시 포인트를 지급하지 않습니다.
    고맙습니다.
    • 49
    • 오래 전
      2025.01.21
  • 오래 전
  • [수정] 댓글에서 원 작성자 표기 하기
  • 안녕하세요...미니님a 회원입니다.

    게시글 작성자가 댓글을 남겼을 때 원 작성자와 동일할 경우 (작성자) 라고 표기하는 팁을 공유하고자 합니다.실 동작화면은 영상이 아닌 스샷으로도 충분하기에 스샷으로 대처합니다.아래 스샷 확인해주세요
     

    사용하시는 게시판 스킨 내 view.comment.php 파일을 열어주세요[09:20 추가] - 만약 통합 게시판을 사용한다면 rb.bbs/skin/cmt/basic/skin.php 파일을 열어서 아래와 똑같이 하시면 됩니다.컨트롤 + F 검색 기능을 활용하여 아래 코드를 찾아주세요
    <?php echo $list[$i]['name'] ?>
    그리고 바로 아래에 다음 코드를 넣어주시면 끝입니다.
    <?php if ($list[$i]['mb_id'] === $write['mb_id']) { ?>   <span style="color:#0000ff">(작성자)</span> <?php } ?>
    어디에 정확하게 넣는지 모르겠다구요 ? 그럼 아래 스샷을 참조 하세요

     이렇게 넣어주시면 됩니다.
    고맙습니다.
    • f2b95d45acc6e6039b0f81c3923de12f_1737417638_7815.png

검색

게시물 검색
구매 신청
  • 신용카드 결제는 별도상담을 통해 가능합니다.
    구매문의 : cs@false9.co.kr / 010-6466-3355
    신청 이후 담당자가 개별연락 드리고 있습니다.
    입금자명과 실제 입금자가 동일한 경우 자동처리 됩니다.
  • 결제예정 금액 : 0 (VAT별도)
    하나은행(KOEXKRSE) : 258-910104-00407 / 김은정(인덱스)

  •  
  • 신청 및 FCM 가이드
      안드로이드 웹앱 및 푸시알림을 사용하기위한 A-Z!
      잘 따라오시면 어렵지 않습니다.

      1. FCM (Firebase Cloud Messaging) 세팅하기

      1-1. 시작하기
      https://console.firebase.google.com?hl=ko 으로 접속하여 [시작하기] 를 클릭합니다. FCM은 구글계정이 있으면 무료로 사용 가능 합니다.




      1-2. 프로젝트 생성하기
      [프로젝트 시작하기] 를 클릭합니다.




      프로젝트의 이름을 설정합니다.
      앱이름(사이트명, 상호명)을 영문으로 입력하는것이 가장 좋습니다.
      입력하셨다면 [계속] 을 클릭해주세요.




      애널리틱스 사용설정을 활성화 해주시고(선택사항)
      [계속] 을 클릭해주세요.




      애널리틱스 위치를 [대한민국] 또는 거주국가를 선택하시고 약관 동의 후 [프로젝트 만들기] 를 클릭해주세요.




      프로젝트 생성이 완료 되었습니다. [계속] 을 클릭하시면 FCM메인페이지로 이동 합니다.




      1-3. 앱 생성하기
      이전 단계에서 프로젝트를 생성했습니다.
      이제 프로젝트안에 안드로이드 앱을 생성해보겠습니다.

      FCM 메인 중앙에 주황색 동그란 버튼이 3개 있습니다.
      가운데에 있는 (안드로이드 로고) 버튼을 클릭해주세요.




      버튼을 클릭하셨다면 앱등록 창이 오픈 됩니다.
      안드로이드 패키지 이름 및 앱 닉네임을 입력하세요.

      패키지 이름은 반드시 com.webview.앱영문명 으로 입력하셔야 합니다.
      com.webview. 를 반드시 넣어주셔야 합니다.
      입력 예) com.webview.rebuilder

      앱 닉네임은 사이트명이나 상호명, 앱이름 등을 입력해주시면 됩니다.
      디버그 서명은 입력하지 않아도 됩니다.

      입력을 마치셨다면 [앱등록] 을 클릭해주세요.
      다음페이지로 넘어간다면, 입력하신 패키지명 (com.webview.앱영문명) 을 메모장에 메모해주세요.





      [google-services.json 다운로드] 버튼을 클릭하셔서 파일을 다운받아 주세요.
      다운을 받으셨다면 [다음] 을 클릭해주세요.




      Groovy(build.gradle) 선택하신 후 [다음] 을 클릭해주세요.




      앱 생성이 완료 되었습니다.
      [콘솔로 이동] 을 클릭하시면 메인으로 이동 됩니다.




      1-4. 비공개 키파일 생성하기
      거의 다왔습니다. 조금만 더 힘내세요.
      저도 이거 작성하느라 무쟈게 힘들었습니다. 리빌더화이팅.

      화면 상단에 아까 입력하신 이름으로 앱이 생성된게 보이신다면,
      좌측 상단에 [프로젝트 개요] 메뉴 옆에 톱니바퀴 아이콘을 클릭하여
      [프로젝트 설정] 으로 이동해주세요.




      프로젝트 설정으로 오셨다면 상단 탭메뉴에서 [서비스 계정] 을 클릭하세요.





      화면 아래쪽에 있는 [새 비공개 키 생성] 을 클릭하세요.

      키파일은 버튼 클릭시 자동으로 다운로드 됩니다.
      중요한 파일이므로 파일을 타인에게 공개하거나 해서는 안됩니다.





      친절하게 중요한 파일임을 알려줍니다.
      [키 생성] 을 클릭하면 json 파일이 다운로드 됩니다.




      다운로드된 파일은 rebuilder-demo-a4cc0-firebase-adminsdk-au83h-41e4b5df03.json 과 같은식으로 저장됩니다.
      이름이 너무 긴 관계로 임의파일명으로 변경해주세요.
      가이드에서는 key.json 으로 설명하겠습니다.

      이제 준비는 모두 끝났습니다!
      바탕화면에 1-3에서 다운로드 했던 google-services.json 파일과,
      방금 이름을 변경했던 key.json 파일이 있다면 잘 하셨습니다. (파일아이콘은 무시해주세요. 다를 수 있습니다.)




      2. 리빌더 앱관리 설정하기

      2-1. 파일 업로드하기
      위 단계에서 이름을 변경했던 key.json 파일을 사용하시는 웹서버(웹호스팅)에 FTP 프로그램으로 접속하여 업로드 해주세요.
      업로드 위치는 /data/push/key.json 입니다.

      2-2. 앱관리 설정하기
      관리자모드 > 빌더설정 > 앱관리 메뉴로 이동해주세요.
      [앱관리] 메뉴가 없다면 리빌더 공식홈페이지 > 부가기능 다운로드 에서 [안드로이드 하이브리드 웹앱 + Push 알림] 기능을 다운로드 후 설치해주세요.
      바로가기 > https://rebuilder.co.kr/membership/30

      설치가 되셨다면 관리자모드 > 빌더설정 > 앱관리 메뉴로 이동해주세요.

      스크롤을 내리시면 [FCM 설정] 섹션이 있습니다.
      FCM 패키지명, FCM 프로젝트 ID, FCM 비공개키파일 항목을 모두 입력 하시고
      [확인] 을 클릭해주시면 설정은 마무리 됩니다.




      [FCM 패키지명]
      1-3 에서 설정했던 com.webview.앱영문명 을 입력하시면 됩니다.

      [FCM 프로젝트 ID]
      1-4 에서 이동했던 [프로젝트 설정] 페이지로 이동하시면 내 프로젝트 섹션에서 확인하실 수 있습니다. (스샷참조)

      [FCM 비공개키파일]
      위에서 임의파일명으로 변경했던 파일명 key.json 을 입력하시면 됩니다.




      고생하셨습니다. 모든 설정이 완료 되었습니다.
      1-3 에서 다운로드 했던 google-services.json 파일은
      신청서에 첨부해주셔야 합니다.


      창을 닫아주시고, 신청을 계속해주세요!