Releases: dasomweb/dw-catalog-wp
Release list
Release v2.0.0-rc.1
DW Catalog WP v2.0.0-rc.1
배포 방법 (운영자)
이 ZIP 은 dasomforge 플랫폼 표준 구조입니다 — 직접 워드프레스에 업로드하지 마십시오.
- dasomforge 슈퍼어드민 →
/admin/products→dw-catalog-wp - Sync Release 클릭 →
wp-plugin/이dw-catalog-wp/단일 루트로
정규화되어 R2 에 올라가고 IntegrityManifest 가 자동 등록됩니다 - SyncRelease 응답 박스에
🔐 IntegrityManifest 등록과
📦 wp-plugin/: N개 파일두 줄이 모두 보이는지 확인
(안 보이면 legacy fallback — TROUBLESHOOTING §1.7)
고객 설치
라이선스가 활성화된 사이트는 워드프레스 자동 업데이트로 수신합니다.
설치 경로는 항상 wp-content/plugins/dw-catalog-wp/.
anti-piracy 관련 변경
릴리스 노트는 CHANGELOG 참조.
v1.2.1 - Marketing Doc Update
v1.2.1 — 마케팅 자료 업데이트
docs/MARKETING.md 를 v1.2.0 디자인 설정 기능에 맞춰 전면 업데이트.
추가된 내용
- ⭐ Shortcode Design Settings 핵심 기능 강조
- 업데이트된 버전 로드맵 (v1.0 ~ v1.2.0 + 다음 버전 계획)
- 새 FAQ 항목 (디자인 변경 즉시 반영, 테마 충돌 방지, 매거진 활용)
- 기능 비교표에 "숏코드 디자인 제어" 행 추가
- 설치 단계에 "디자인 커스터마이징" 추가 (6단계)
마케팅 포인트
"Your catalog. Your fields. Your design. Your way."
플러그인 구매 결정에 필요한 모든 정보 포함:
- 6가지 업종별 활용 예시
- WooCommerce와의 차별점
- 기술 사양 + 보안 품질
- 119개 자동화 테스트 커버리지
v1.2.0 - Shortcode Design Settings
v1.2.0 — 숏코드 디자인 커스터마이징
관리자에서 폰트, 컬러, 레이아웃을 설정하면 모든 숏코드에 즉시 반영.
CSS 수정 없이 드래그 & 드롭 만으로 디자인 변경.
설정 위치
WordPress 관리자 > DW Catalog > Shortcode Design
커스터마이징 가능한 항목
Grid & Carousel — Card
- 폰트 패밀리 (전체 공통)
- 제목 크기, 굵기, 색상
- 필드 라벨 크기/색상
- 필드 값 크기/색상
- 카드 배경색, 테두리 색/두께, radius
- 카드 그림자 (none/sm/md/lg)
- Grid 간격
Carousel — Navigation Buttons
- 버튼 배경색, 아이콘 색상
- 호버 시 배경색, 아이콘 색상
Magazine (Detail View)
- 제목 크기, 굵기, 색상
- 필드 라벨/값 크기/색상
- Dark 오버레이 배경 (
rgba(0,0,0,0.7)등) - Light 오버레이 배경/텍스트 색상
- 오버레이 박스 radius/padding
기술 아키텍처
패턴: Admin 설정 → wp_options → 숏코드 렌더링 시 inline CSS 변수 주입
관리자 페이지 (wp-color-picker)
↓ AJAX/form 저장
wp_options → dwcat_design_settings
↓
DWCAT_Design_Settings::get_inline_style()
↓
숏코드 root element style="--dwcat-title-size:16px; --dwcat-card-bg:#fff; ..."
↓
CSS: color: var(--dwcat-title-color, #1f2937) !important;
장점
- 테마 CSS와 독립:
!important와 CSS 변수로 테마 오버라이드 방지 - 숏코드 속성 단순화: 디자인은 관리자에서 관리, 숏코드는 데이터만
- 즉시 반영: 한 번 설정하면 모든 숏코드에 자동 적용
- 라이센스 독립: 라이선스 없어도 디자인 기능 사용 가능
Tests
PASS: 119 / FAIL: 0 (+13 new design checks)
Reference (DW-MCP)
이 기능은 Smart Branch Locator Pro의 "Shortcode Design Settings Pattern"을 참고해 구현되었습니다.
v1.1.0 - Frontend Shortcodes (Grid, Carousel, Magazine)
v1.1.0 — 프론트엔드 숏코드 3종
[dw_catalog_grid] — 카탈로그 그리드
반응형 그리드 (1~6 컬럼), 카테고리/ID 필터링, 커스텀 필드 표시, 상세보기 링크 선택
[dw_catalog_grid columns="4" per_page="12" category="seafood"]
[dw_catalog_carousel] — 카탈로그 캐로셀
vanilla JS 기반 (jQuery 의존성 없음), 좌우 화살표, 자동 재생, 호버 시 일시정지
[dw_catalog_carousel per_slide="3" autoplay="yes" interval="5000"]
[dw_catalog_magazine] — 매거진 스타일 상세
제품 이미지 배경 + 오버레이 (제목 + 커스텀 필드), 5가지 위치 선택
[dw_catalog_magazine position="bottom-right" overlay="dark"]
[dw_catalog_magazine position="middle" overlay="light"]
위치 옵션: top-left, top-right, bottom-left, bottom-right, middle
주요 특징
- 반응형: 데스크톱 설정값 / 태블릿 2컬럼 / 모바일 1컬럼
- 의존성 없음: 캐로셀도 vanilla JS로 구현 (추가 라이브러리 불필요)
- 동적 필드: 커스텀 필드 설정에 따라 자동으로 표시
- Select 라벨 해석: 저장된 값 대신 라벨로 표시 (예:
active→Active)
문서
- docs/SHORTCODES.md — 전체 사용 가이드
Tests
PASS: 106 / FAIL: 0 (14 new shortcode checks)
v1.0.7 - WP Plugin Packaging Guide
v1.0.7 — WP Plugin Packaging Guide
DW-MCP 코드 레퍼런스에 WordPress 플러그인 패키징 표준 가이드 등록
문서 핵심 내용
ZIP 파일명 = 버전 포함, 폴더명 = 버전 없이 고정
dw-catalog-wp-1.0.7.zip ← 파일명: 버전으로 식별
└── dw-catalog-wp/ ← 폴더명: 고정 (업데이트 시 덮어쓰기)
├── dw-catalog-wp.php
├── uninstall.php
├── README.txt
├── includes/
├── assets/
└── vendor/
포함 항목
- GitHub Actions 자동 릴리즈 워크플로우
- 로컬 빌드 PowerShell 스크립트
- ZIP 포함/제외 파일 목록
- README.txt 자동 생성 (WP 표준)
- 버전 3곳 일치 규약 (헤더 + config + 태그)
- Composer 의존성 처리
- 라이선스 서버 자동 업데이트 연동
- 릴리즈 체크리스트
DW-MCP 등록
- ref_id:
1929521b-225c-43ba-9902-ac8279eae8e3 - type:
core - 다른 DW 플러그인에서
search_code("packaging")또는search_code("release zip")로 검색 가능
v1.0.6 - DW License Manager SDK + SPA Integration
v1.0.6 — DW License Manager SDK + DW Admin SPA 통합
DW License Manager SDK 적용
기존 커스텀 DWCAT_License 클래스를 표준 DW_License_Manager SDK로 교체
| 기능 | 설명 |
|---|---|
| 라이선스 활성화/비활성화 | AJAX 기반 UI, nonce 검증 |
| 자동 검증 | 1시간 transient 캐시 + daily cron |
| 자동 업데이트 | pre_set_site_transient_update_plugins + plugins_api 훅 |
| Admin Notice | 미활성/만료/무효 상태별 알림 |
| 메뉴 위치 | DW Catalog > License |
DW Admin SPA 통합
dw_spa_modules필터로 SPA 대시보드에 자동 등록function_exists('dw_admin')체크 → DW Admin 없어도 독립 동작- 등록된 모든 포스트 타입이 SPA 사이드바/목록/편집 뷰에 자동 표시
Tests: 92 PASS
php tests/test-plugin-integrity.php
PASS: 92 / FAIL: 0
ALL TESTS PASSED
v1.0.5 - License, Security, Tests
v1.0.5 — 라이선스 통합, 보안 수정, 무결성 테스트
License Integration (DW Site Builder License API)
DWCAT_License클래스: 라이선스 활성화/검증/비활성화/업데이트 체크- 관리자 메뉴: DW Catalog > License
- API 엔드포인트:
/activate,/verify,/deactivate,/check-update - 일일 자동 검증 (transient 기반)
- uninstall.php에 라이선스 옵션 정리 추가
Security Fixes (WP Plugin Handbook)
$_GET['page']5개 파일에서sanitize_text_field()적용uninstall.php:$wpdb->prepare()사용으로 SQL injection 방지
Integrity Tests (Claude Code Development Guide)
tests/test-plugin-integrity.php: 88개 자동화 테스트- 검증 항목: 파일구조, 헤더, 버전일관성, 프리픽스(5자), ABSPATH, 클래스정의, Nonce, Sanitize, SQL안전성, 라이선스, 훅, 마이그레이션
php tests/test-plugin-integrity.php
=== RESULTS ===
PASS: 88
FAIL: 0
ALL TESTS PASSED
v1.0.4 - Field migration & Custom Fields submenu
v1.0.4 — 필드 마이그레이션 & Custom Fields 서브메뉴
마이그레이션 로직
dwcat_migrate(): 기존 하드코딩 필드를 DB(wp_options)에 자동 시드dwcat_check_version(): 관리자 페이지 로드 시 버전 변경 감지 → 자동 마이그레이션- 기존 1.8.0 이하에서 업그레이드해도 필드 설정이 자동 생성됨
Custom Fields 서브메뉴
- 각 포스트 타입 메뉴(예: Catalog WP) 하위에 Custom Fields 서브메뉴 추가
- 클릭 시 해당 포스트 타입의 필드 관리 페이지로 이동
필드 관리 플로우
WordPress Admin
├── Catalog WP (포스트 타입 메뉴)
│ ├── All Products
│ ├── Add New
│ ├── Categories / Tags
│ ├── Bulk Import / PDF Export / Field Reference
│ └── Custom Fields ← 클릭하면 필드 관리 페이지
│ ├── Add Field (Label, Meta Key, Type, Options...)
│ ├── Edit Field (드래그 정렬, 수정, 삭제)
│ └── Save Fields → DB 저장 → 메타박스/목록/임포트 즉시 반영
v1.0.3 - ZIP packaging per WP guidelines
v1.0.3 — ZIP 패키징 WordPress 가이드라인 준수
ZIP 구조
dw-catalog-wp-1.0.3.zip
└── dw-catalog-wp/ ← 설치 폴더명 (항상 고정)
├── dw-catalog-wp.php ← 메인 플러그인 파일
├── uninstall.php ← 삭제 시 정리
├── README.txt ← WP 플러그인 표준 readme
├── includes/ ← 클래스 파일
├── assets/ ← CSS
└── vendor/ ← Composer (PDF export)
Changes
- README.txt 자동 생성: WP 플러그인 표준 readme 포맷 (릴리즈 워크플로우 + PS1)
- ZIP 제외 목록 보강:
.claude/,build-installable-zip.ps1,composer.json,GITHUB-UPDATE-GUIDE.md등 개발 전용 파일 제외 - build-installable-zip.ps1: 존재하지 않는
index.php참조 제거, README.txt 포맷 개선
v1.0.2 - WordPress Plugin Handbook compliance
v1.0.2 — WordPress Plugin Handbook 준수
WordPress Plugin Handbook 가이드라인에 맞춰 코드 품질 개선
Changes
- Prefix 변경:
pc_/PC_→dwcat_/DWCAT_(최소 5자, WP 가이드라인 준수) - Plugin Header: Description 140자 이내로 축소,
Update URI추가 - uninstall.php 추가: 플러그인 삭제 시 wp_options 정리
- Deactivation hook 수정:
unregister_post_type()+unregister_taxonomy()호출 후flush_rewrite_rules() - CSS handle:
pc-admin-style→dwcat-admin-style