콘텐츠 허브

  • 기타
    • 공유링크 복사
      애드온 시스템 1.0.2
    • 무료
    • 고유번호
    • 945
    • 최근 업데이트
    • 2025.10.02 14:59
    • 누적 다운로드
    • 12회
      미니홈 쪽지 구독하기
      구독하고 알림받기

    상세정보

    Uploaded Image




    애드온 시스템 1.0.2 가이드

    애드온 시스템 작동 방식 변경 및 업데이트 안내

    1.0.2 변경된 사항

        애드온 설정항목 settings.json으로 별도 관리

    애드온 시스템이란?

    기존 extend 환경에서 실행되는 프로그램(기능) 개발 시 코어 수정을 최소화하기 위해 설계된 모듈형 확장 시스템입니다.

    장점

    • 관리 편의성: 관리자 페이지에서 ON/OFF 토글 제공 (라우터 기반)
    • 독립적 관리: 애드온별 전용 폴더로 코드·리소스 분리
    • DB 의존 최소화: 민감정보 제외 설정을 addon.json으로 관리
    • 확장성: 코어 영향 최소화로 안정적 기능 추가

    단점

    • 초기 세팅 부담: 각 애드온에 addon.json 작성 필요
    • 학습 곡선: 기존 extend 방식 대비 구조 변화
    • 운영 정책 필요: 네이밍/실행 순서 기준 수립 필요

    디렉토리 구조

    그누보드5/
    └─ extend/
       └─ rb_addon.extend.php
    └─ rb/
       └─ rb.addon/
          └─ sample-addon/
             ├─ addon.json
             ├─ addon.extend.php
             └─ adm/
                └─ sample_list.php

    (필수) addon.json 파일 구조

    {
      "name": "댓글 보상 & 자동 답댓글", /*애드온 이름*/
      "description": "사용자가 댓글을 달면 포인트를 지급하고 시스템 계정으로 답댓글을 남깁니다.", /*애드온 설명*/
      "version": "1.0.0", /*애드온 버전*/
      "developer": {
        "name": "HUMHAE", /*애드온 개발자*/
        "site": "https://example.com" /*애드온 개발자 웹사이트*/
      },
      "admin_menu": {
          "000905": {                /* 메뉴관리번호(그누보드 규칙) */
            "title": "애드온 설정",        /* 관리자 메뉴명 */
            "file": "adm/sample_list.php"       /* 애드온 내부 경로 */
        }
      }
    }

    ※ 관리자 메뉴 > 빌더설정 > 애드온관리 목록 정렬은 위 addon.json 정보를 기준으로 표시됩니다.

    핵심 키 설명

    settings.json

    애드온 사용자가 관리자 설정 페이지에서 직접 수정 가능한 값들을 나열합니다. 값 타입에 따라 자동으로 입력 폼(숫자, 체크박스, 텍스트)이 구성됩니다.

    설정값 읽기 예:
    <?php
    // addon.extend.php
    $setting = rb_meta_setting("애드온폴더명");
    $bot = rb_setting_local('키');
    $fmt = rb_setting_local('키');
    // ...
    ?>

    민감 정보(API 키 등)는 PHP 상수/설정로 직접 선언하고, 간단한 옵션 위주로 settings.json을 활용하세요.

    admin_menu

    관리자 페이지에 메뉴가 필요한 애드온은 admin_menu를 정의하세요.

    • 메뉴관리번호: 그누보드 관례 사용 (예: 000905)
    • file: 애드온 폴더 내부 경로만 허용 (예: adm/sample_list.php)
    • title: 메뉴에 표시될 이름

    마이그레이션 가이드 (1.0.0 → 1.0.1)

    1. 각 애드온 폴더에 addon.extend.php 생성 (기존 entry 파일 내용 이관)
    2. 기존 addon.json에서 entry 관련 키가 있었다면 삭제 또는 무시
    3. 사용자 설정이 필요한 옵션을 addon_setting 블록에 선언
    4. 관리자 전용 화면이 있다면 admin_menu에 메뉴 등록하고 파일을 애드온 폴더 내부 adm/ 하위에 배치
    5. 관리자 > 빌더설정 > 애드온관리에서 ON/OFF 및 설정값 저장 확인
    참고

    애드온 목록의 설정 버튼은 addon.jsonaddon_setting이 정의된 경우에만 활성화됩니다.

    주의사항

    • 네이밍 규칙 수립: 전역 함수/상수/파일명에 접두사 사용 (rb_ 등)
    • 실행 순서 충돌 방지: 훅 사용 시 조건 분기(게시판/사용자/상태) 명확화
    • 민감 정보는 코드 내 정의: 절대 JSON에 저장하지 않기
    • 설정 검증: 관리자 입력값에 대해 형/범위 검증을 수행
    • 업데이트 시 변경 로그 유지: 문제 발생 시 롤백 지점 확보
    참고

    애드온 목록의 설정 버튼은 addon.jsonaddon_setting이 정의된 경우에만 활성화됩니다.

    [이 게시물은 리빌더님에 의해 2025-10-09 15:06:42 유저 자료실에서 이동 됨]
    HUMHAE 님의 콘텐츠가 도움이 되셨다면
    잊지말고 추천 해주세요!

      댓글목록

      profile_image
      리빌더미니홈 1:1 대화하기 11일 전

      안녕하세요.

      버전업 된 게시물의 처리가 불편하실것같습니다.
      자료실을 통합 하면서 버전관리 기능이 추가될 예정입니다.
      버전 기재와 업데이트 내용 추가기재, 게시물 점프 기능이 들어갈것같습니다.

      항상 좋은 자료 감사합니다.

      2025-09-30 13:07

      profile_image
      no_profile rainbow미니홈 1:1 대화하기 11일 전

      사이트에서 위젯의 좁은 범위를 넘어 사이트내 어느 곳이든 프로그램을 더 확장적으로 사용할 수 있는 애드온 시스템이 드디어 출시되었네요.
      HUMHAE님은 개발자들의 편의성에 필요한 부분을 쏙쏙 뽑아 만들어 내시네요.

      감사합니다.

      2025-10-01 09:40

      profile_image
      no_profile 민트다이어리미니홈 1:1 대화하기 11일 전

      감사합니다 ^^
       
      푸시매니저 정식버젼도 기다리고 있는데, 언제쯤 볼 수 있을까요?
      항상 응원하고 있습니다.

      2025-10-01 09:41

      profile_image
      no_profile decoy미니홈 1:1 대화하기 9일 전

      처음엔 뭔가 했는데 ㅎㅎ
      엄청 편하고 편한 기능이었네요..
      워드프레스의 플러그인 설치하듯이 그냥 업로드만 하고 켜주기만 하면 되니 더 편한것 같습니다.
      항상 감사합니다~

      2025-10-02 17:20