Drush 명령.
DXPR Builder는 명령줄에서 페이지,
템플릿, 요소, 콘텐츠 마이그레이션을 관리하는 Drush 명령을 제공합니다.
dxb:migrate를 제외한 모든 명령은 YAML을 출력합니다.
페이지 명령
dxb:page:create
DXPR Builder 페이지 템플릿에서 노드를 만듭니다.
drush dxb:page:create drag_and_drop_page my_template \
--title="New Landing Page"
인수:
| 인수 | 설명 |
|---|---|
type |
콘텐츠 유형 머신 이름 |
template_id |
페이지 템플릿 머신 이름 |
옵션:
| 옵션 | 설명 |
|---|---|
--title |
노드 제목(필수) |
--field |
빌더 필드 이름(자동 감지) |
--status |
게시 상태. 0 또는 1(기본값: 0). |
--dry-run |
만들지 않고 검증. |
별칭: dxpr-pc
dxb:page:get
엔터티에서 DXPR Builder 마크업을 가져옵니다.
drush dxb:page:get 42
drush dxb:page:get 5 --entity-type=block_content
인수:
| 인수 | 설명 |
|---|---|
entity_id |
엔터티 ID |
옵션:
| 옵션 | 설명 |
|---|---|
--entity-type |
엔터티 유형(기본값: node) |
--field |
빌더 필드 이름(자동 감지) |
별칭: dxpr-pg
dxb:page:update
엔터티의 DXPR Builder 마크업을 업데이트합니다.
drush dxb:page:update 42 --markup="<div>new</div>"
drush dxb:page:update 42 --markup=@/tmp/page.html
인수:
| 인수 | 설명 |
|---|---|
entity_id |
엔터티 ID |
옵션:
| 옵션 | 설명 |
|---|---|
--entity-type |
엔터티 유형(기본값: node) |
--field |
빌더 필드 이름(자동 감지) |
--markup |
새 HTML(문자열 또는 @file 경로) |
--dry-run |
바뀔 내용 표시. |
별칭: dxpr-pu
템플릿 명령
dxb:template:list
사용 가능한 DXPR Builder 페이지 템플릿 나열.
drush dxb:template:list
drush dxb:template:list --category=Landing
drush dxb:template:list --detail
옵션:
| 옵션 | 설명 |
|---|---|
--category |
템플릿 범주별 필터. |
--profile |
프로필 ID별 필터. |
--detail |
템플릿 마크업 본문 포함. |
별칭: dxpr-tl
사용자 템플릿 명령
dxb:user-template:list
모든 DXPR Builder 사용자 템플릿 나열.
drush dxb:user-template:list
drush dxb:user-template:list --global
drush dxb:user-template:list --uid=1
drush dxb:user-template:list --status=disabled
옵션:
| 옵션 | 설명 |
|---|---|
--uid |
소유자 사용자 ID별 필터. |
--global |
전역 템플릿만 표시. |
--status |
상태별 필터: enabled 또는 disabled |
--profile |
프로필 ID별 필터. |
--detail |
템플릿 마크업 본문 포함. |
각 템플릿의 출력에는 status(이)가 포함됩니다.
별칭: dxpr-utl
dxb:user-template:create
재사용 가능한 DXPR Builder 사용자 템플릿 만들기.
drush dxb:user-template:create "Hero Section" \
--markup="<div class='container'>...</div>"
drush dxb:user-template:create "Hero" \
--markup=@/tmp/hero.html --global
인수:
| 인수 | 설명 |
|---|---|
label |
템플릿 표시 이름 |
옵션:
| 옵션 | 설명 |
|---|---|
--markup |
HTML(문자열 또는 @file 경로) |
--global |
모든 사용자가 쓸 수 있게. |
--dry-run |
만들지 않고 검증. |
별칭: dxpr-utc
요소 명령
dxb:element:list
사용 가능한 DXPR Builder 요소 나열(블록, 뷰).
drush dxb:element:list
drush dxb:element:list --type=block
drush dxb:element:list --profile=editor
옵션:
| 옵션 | 설명 |
|---|---|
--type |
유형별 필터. block, view. |
--profile |
프로필 ID별 필터. |
별칭: dxpr-el
설정 명령
dxb:setup-ai
Composer 프로젝트 루트에 코딩 어시스턴트용 AI 스킬을 설치합니다:
Claude Code용 .claude/skills/dxb, Codex, Gemini, Copilot, Cursor용 .agents/skills/dxb.
각 사본에는 SKILL.md,
references/(요소별 파일 1개, Views 및 블록 요소,
파서 규칙, A/B 테스트, 워크플로)와 마크업 검증기가 있는
scripts/가 들어 있습니다. --check(은)는 아무것도 바꾸지 않고 설치되지 않았거나
오래된 모든 파일을 나열합니다.
drush dxb:setup-ai
drush dxb:setup-ai --check
drush dxb:setup-ai --host=claude
옵션:
| 옵션 | 설명 |
|---|---|
--host |
대상: claude, agents, all 중 하나(기본값: all). |
--check |
바꾸지 않고 설치된 파일이 최신인지 확인. |
별칭: dxpr-sa
마이그레이션 명령
dxb:migrate
보류 항목이 있는 모든 콘텐츠 마이그레이션을 실행합니다. 지정한 하나만 실행할 수도 있습니다. 마이그레이션마다 한 줄을 기록하고 항목이 실패하면 0이 아닌 코드로 종료합니다. 같은 마이그레이션은 다음에 나열되어 있습니다: DXPR Studio > DXPR Builder > Content Items > Migrations.
drush dxb:migrate
drush dxb:migrate --migration=circle_counter_circliful_to_bootstrap
drush dxb:migrate --migration=counter_duplicate_ids
옵션:
| 옵션 | 설명 |
|---|---|
--migration |
보류로 집계된 것이 없어도 이 마이그레이션 ID만 실행. |
--force |
중단된 실행 후에도 진행 중으로 표시된 실행의 잠금을 인계. |
마이그레이션 ID: owl_carousel_to_bootstrap,
circle_counter_circliful_to_bootstrap,
progress_bar_legacy_to_bootstrap_extension,
counter_duplicate_ids, entity_link_enrichment, alias_link_enrichment.
다음 마이그레이션은 내부 표시 ID를 제거합니다: counter_duplicate_ids 마이그레이션은 소유 Number 카운터나 Circle 카운터 ID를 반복하는
내부 표시 ID를 제거합니다. 저장된 A/B 변형과 추가 HTML 래퍼 안의 표시도
포함. 래퍼 앵커, 별개의 사용자 정의 내부 ID, 중첩 요소 경계는
유지합니다. DXPR Builder는 기존 콘텐츠를 렌더링할 때도 이런
중복을 수리합니다.
배포 후 Drupal 데이터베이스 업데이트를 실행하세요(drush updb 또는 update.php).
전용 counter_duplicate_ids 사후 업데이트는 이전 콘텐츠 업데이트를 이미 실행한
사이트에서도 저장된 필드와 재사용 템플릿을 마이그레이션합니다.
이후 가져온 콘텐츠에는 위 명령을 쓰세요. 업데이트된 서비스를 배포한 뒤 Drupal 캐시를
다시 만드세요.
별칭: dxpr-migrate