팁과노하우

  • 팁과노하우 포인트 정책
      글쓰기
      100P
      댓글
      10P
  • 전체 7건 / 1 페이지
    • 7
    • 오래 전
      2024.10.22
  • 오래 전
  • 새글 아이콘 출력 표시 (업데이트)
  • https://rebuilder.co.kr/tip/98
    기존에 작성한 팁 게시글에 왜 그대로 사용하지 못했는지에 대한 설명이 있어 아직 삭제는 안했습니다.운영진 분들의 판단 하에 기존 게시글을 삭제해주시면 감사드리겠습니다.
    기존보다 좀더 사용하기 쉽도록 함수가 개선 되었습니다.

    extend 폴더에 파일을 업로드 하신 후,
    헤더스킨(header.php)파일에서 $row2['me_link']; 구문을 찾아 메뉴를 출력하는 구문 끝에 아래와 같이 <?php echo get_bbs_new_ico($row2['me_link']);?>​를 추가해주세요.

    <li><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?><?php echo get_bbs_new_ico($row2['me_link']);?></a></li>




    게시판의 경우에만 작동하도록 수정되었습니다.



    .gnb_new_ico {  display: inline-block;  border-radius: 5px;  background-color:#D90166 !important;  padding:0px 5px 2px 5px;  margin: -3px 0 0 2px;  line-height: 13px;  vertical-align: middle;  font-size: 9px;  color:#fff;}
    • 6
    • 오래 전
      2024.10.22
  • 오래 전
  • 메뉴에 새글이 있을경우 N 아이콘 표시
  • https://rebuilder.co.kr/qna/855삼다수님의 질문답변을 보고 만들었습니다.

    리빌더의 새글 아이콘은 get_new_ico("게시판 테이블 아이디", "카테고리 아이디") 함수를 통해 조건에 맞는 게시판에 새글이 있을 경우<span class="gnb_new_ico">n</span>​위와 같은 HTML 코드를 반환 합니다.

    그누보드5의 경우(혹은 리빌더의 또는 대다수의 경우) 메뉴관리에서 URL 전체의 링크로 저장되기 때문에 위 함수를 바로 사용하시기에는 작동할 수 없습니다.게시판 테이블 아이디를 따로 불러올 수 없기 때문입니다.
    그래서 생각한 방법이 현재 주소에서 게시판 아이디를 추출해서, 그 아이디를 메뉴를 출력하는 부분에서 get_new_ico 함수를 호출하면 되겠다 생각했습니다.

    첨부파일로 올려드리는 extend 파일을 extend 폴더에 넣으세요. (파일이름은 바꾸셔도 무방합니다.)해당 extend 파일에 작성되어 있는 코드는 URL을 받아서 URL에서 적절한 게시판 테이블 아이디를 반환해줍니다. (extract_bbs_name)(짧은주소 사용 여부에 따른 로직이 다르게 코드를 짜긴 했지만, 미사용의 경우 테스트하지 못했습니다.)
    extend 파일을 업로드 하였다면 사용하시는 헤더스킨 혹은 메뉴를 출력하는 곳으로 이동합니다. (본글에서는 basic 헤더 기준으로 설명합니다.)header.php 파일중 아래 구문을 찾아주세요.
    foreach( (array) $row['sub'] as $row2 ){
    바로 아래에 두줄의 코드를 삽입 해주세요.
    $menu_bo_table = extract_bbs_name($row2['me_link']);$newIcon = $menu_bo_table ? get_new_ico($menu_bo_table, "") : "";

    그럼 아래와 같은 모습입니다.
    $k = 0;foreach( (array) $row['sub'] as $row2 ){    $menu_bo_table = extract_bbs_name($row2['me_link']);    $newIcon = $menu_bo_table ? get_new_ico($menu_bo_table, "") : "";    if( empty($row2) ) continue;

    아래와 같이 소메뉴를 출력하는 구문을 바꿔주세요.
    기존<li><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?></a></li>

    수정후<li><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?><?php echo $newIcon;?></a></li>

    그럼 사진과 같이 새글이 있는 곳에 n 글자가 보이게 됩니다.

    n에 대한 스타일링은 적절한 스타일시트 파일 (theme/rb.basic/rb.layout_hd/basic/style.css) 에 스타일을 정의 해주세요.

    .gnb_new_ico { 스타일 정의 }






    제가 글쓰는 솜씨가 없습니다...혹시 궁금하신 점 있으시면, 언제든 댓글 달아주세요.
    • 62829e37f35b17c752bf918c2342233c_1729591208_9479.png
    • 5
    • 오래 전
      2024.10.11
  • 오래 전
  • 리빌더 포인트랭킹 위젯(탈퇴 및 접근제한 회원 미출력 되도록 수정)
  • 교체가 필요한 파일 : G5/rb/rb.widget/rb.point_rank/widget.php
    기존의 포인트랭킹 위젯은 의도였는지 모르겠지만, 저의 경우 탈퇴 또는 접근제한 회원이 출력될 이유는 없어 수정했습니다.혹시라도 기존의 출력 방식 설정(행 또는 열 등)을 바꾸셨다면 추가 수정이 필요할 수 있습니다.
    • 4
    • 오래 전
      2024.09.25
  • 오래 전
  • 새로운 알림이 있을때 타이틀을 변경해주는 방법
  • 저 같은 경우, 탭을 여러개를 띄워두고 웹페이지 탐색을 합니다.이럴때 현재 새로운 알림이 왔는지 안왔는지 명시적으로 보여줄 수 있게,현재 탭이 활성화 되어 있지 않은 경우 타이틀에 "새로운 알림" 이라는 문구를 추가하여직접 탭을 들어가지 않고도 새로운 알림이 있는지 확인할 수 있도록 해줍니다.탭을 눌러 활성화 하면 자동으로 새로운 알림 타이틀은 삭제됩니다.
    단, 리빌더 파일 원본 수정이 필요합니다.수정 파일 : G5/rb/rb.mod/alarm/alarm.js

    예제 사진을 참고해주세요. 잘보다 보면 글자가 바뀝니다.

     
    • 3
    • 오래 전
      2024.09.20
  • 오래 전
  • 그누보드 내용관리에 리빌더 모듈 사용
  • 기존 그누보드의 내용관리를 리빌더의 모듈로 페이지를 구성할 수 있도록 도와줍니다.
    [중요] 사용 환경 조건 : 짧은주소(숫자)를 사용하신 환경에서만 적용됩니다.
    - 그누보드의 원본 수정이 필요하지 않습니다.- 본 자료를 적용하기 위해서는 https://rebuilder.co.kr/tip/71 이 게시글을 참고하여 리빌더를 수정하여야 합니다.  - 기존에 수정하신 분들은 추가적인 작업이 필요하지 않습니다.- 기본적으로 구성되는 서비스 이용약관, 개인정보 처리방침, 회사소개는 적용되지 않습니다.  - 기존에 별도로 추가하신 내용관리가 있으시다면 올려드리는 자료의 수정이 필요합니다.  - 내용관리에 입력 된 내용은 페이지 로드시 화면에 출력되지 않습니다.

    업로드 위치/extend/content_module.extend.php/rb/rb.mod/content_module

    모듈을 사용하지 않을 내용관리 추가 방법- 수정이 필요한 파일 : /extend/content_module.extend.php (13 line)- 모듈을 사용하지 않을 ID를 배열에 추가해줍니다.$not_used_ids = ["company", "privacy", "provision"];

    ​내용관리 타이틀을 숨기지 않는 방법 ​- 수정이 필요한 파일 : /rb/rb.mod/content_module/content_module.js (12-13 line)
    // 기존 내용관리 제목 삭제$("h2#container_title").remove()해당 구문 주석 및 삭제



    활용 예시별도로 파일을 추가로 만들지 않고, 고객센터 페이지를 구성할 수 있습니다.(ID : contact의 내용관리 페이지)본 예시 이미지는 내용관리로 생성된 페이지에서 리빌더의 모듈을 사용하는 예시를 보여드리기 위함입니다.
     


    질문이 있으시다면 편하게 댓글 달아주세요.
    • 2
    • 오래 전
      2024.09.12
  • 오래 전
  • 헤더 메뉴 흐림효과 추가 방법 (파일수정X)
  • 현재 사이트를 입맛대로 수정하면서 꽤 괜찮네? 싶어서 올려봅니다...현재는 스크롤을 하게되면 헤더메뉴에 컨텐츠가 비춰보입니다.
    관리자페이지 > 기본환경설정 > 레이아웃 추가설정 > 추가 script, css에 아래 코드를 붙여 넣어주십시오.
    [code]<script>    document.addEventListener('DOMContentLoaded', function() {        var headerElement = document.getElementById('header');                if (headerElement) {            headerElement.style.backdropFilter = 'blur(10px)';        }    });</script>[/code]

    * 적용 전

     

    * 적용 후 

     


    * 적용 방법

     
    • 27e4ca79039ce3542cea3c3ccda80633_1726118077_5384.png
    • 1
    • 오래 전
      2024.09.10
  • 오래 전
  • 원하는곳에 자유롭게 모듈을 구성할 수 있습니다.
  • 먼저 해당 파일은 리빌더 구성 파일을 직접적으로 수정하게 됩니다.수정되는 파일은 아래와 같습니다.- /theme/rb.basic/rb.js/rb.layout.js
    이 파일은 아래 제가 개선제안으로 남겼던 게시글에 대한 임시 해결책으로 수정한 파일입니다.https://rebuilder.co.kr/propose/495


    현재 리빌더 모듈은 HTML 내부에서 <div class="flex_box"></div>를 자동으로 감지하여 순서대로 div에 data-layout="1"의 숫자를 부여하고,DB에 해당 숫자랑 연계하여 모듈들의 설정을 저장하고 있습니다.그래서 메인이 아닌 다른 페이지에서 모듈을 사용하려고 flex_box를 사용하려는 순간 기존에 설정된 모듈들이 그대로 표시됩니다.그래서 해결책을 찾고자 해당 스크립트 파일을 변경하게 되었습니다.
    해당 스크립트로 사용하기 위해서는 기존 메인페이지 (theme/rb.basic/rb.layout/basic/index.php)에 지정된 div 태그를 약간 손봐야 합니다.
    기존 방식<div class="flex_box"></div>
    변경 방식<div class="flex_box" data-layout="main-content"></div>
    그리고 추후 다른 페이지에서 해당 div 태그 내의 모듈을 그대로 가져와 사용할경우 똑같이 data-layout="main-content"를 이용하면별도의 모듈을 추가하지 않고 해당 프리셋을 그대로 사용할 수 있습니다.
    만약 메인페이지에서 그대로 기존 모듈을 사용하고 싶으시다면 크롬의 개발자 도구를 통해 해당 flex_box의 data-layout의 숫자를 확인하여 그대로 입력하면그대로 적용할 수 있습니다.
    예제<div class="flex_box" data-layout="1"></div>


    data-layout에 들어가는 이름은 리빌더에 기존 사용되는 테이블의 md_id(VARCHAR(20))에 저장되니 글자수는 참고하여 이름을 정의하면 됩니다.



    제가 글솜씨가 없어서... 이렇게밖에 적지 못해서 죄송합니다.
    궁금하신점은 댓글 달아주시면 답변 드리겠습니다.

검색

게시물 검색
구매 신청
  • 신용카드 결제는 별도상담을 통해 가능합니다.
    구매문의 : 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 파일은
      신청서에 첨부해주셔야 합니다.


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