하위 모듈.

Learn DXPR BuilderExtendArchitectuur en API’s

다음 디렉터리에는 세 하위 모듈이 있습니다: modules/. 둘은 작은 구성 패키지입니다. 빌더에 연결된 콘텐츠 유형과 블록 유형. 세 번째는 Media Library 지원 이전의 기존 Entity Browser 미디어 선택기입니다. 이 페이지에서는 각각이 설치하는 것, 의존하는 것, 활성화하거나 폐기하는 법을 설명합니다.

모듈 머신 이름 제공 내용 상태
DXPR Builder Drag and Drop Page dxpr_builder_page drag_and_drop_page 콘텐츠 유형 지원됨
DXPR Builder Block Type dxpr_builder_block drag_and_drop_block 블록 유형 지원됨
DXPR Builder Media dxpr_builder_media Entity Browser 미디어 선택기 기존 방식. Extend 페이지에서 숨겨짐.

필수는 없습니다. 빌더는 보기 표시가 DXPR Builder 포매터 (dxpr_builder_text)인 모든 텍스트 필드에서 동작합니다. 다음을 보세요: 기존 콘텐츠 유형에 설치.

DXPR Builder Drag and Drop Page

modules/dxpr_builder_page(은)는 다음에서 Drag and Drop Page 콘텐츠 유형(node.type.drag_and_drop_page)을 설치합니다: config/optional/.

  • 다음 필드: body. 기본 보기 표시는 dxpr_builder_text 포매터를 쓰고 양식 표시는 Field Group으로 묶습니다.
  • 세 DXPR Theme 필드: field_dth_hide_regions, field_dth_main_content_width, field_dth_page_layout. 필드 저장소가 있을 때만 설치됩니다. DXPR Theme Helper 모듈이 제공합니다.

다음 파일의 의존성: dxpr_builder_page.info.yml. field_group, text, node, dxpr_builder. hook_install()(은)는 없을 때 body 필드 저장소를 만듭니다. 선택적 구성을 설치할 수 없으면(Minimal 프로필 등) 유형, body 필드, 표시 자체를 설치합니다. menu_ui와 path 부분 없이. dxpr_builder_page_update_8001()(은)는 설치된 구성을 모듈 적용으로 표시합니다.

src/DXPRBuilderPageUninstallValidator.php( dxpr_builder_page.services.yml에 등록됨)는 drag_and_drop_page 노드가 하나라도 있으면 제거를 막습니다. 먼저 해당 노드를 삭제하거나 유형을 바꾸세요.

  1. 모듈을 활성화하세요:

    drush en dxpr_builder_page -y
    
  2. 다음에서 페이지를 만드세요: /node/add/drag_and_drop_page. 편집자가 페이지를 보면 빌더가 body 필드에서 시작합니다.

"unmet dependencies" 오류로 활성화가 실패하면 Field Group을 활성화하고 body 필드 저장소가 있는지 확인하세요. 다음을 보세요: 업데이트 후 문제.

DXPR Builder Block Type

modules/dxpr_builder_block(은)는 다음에서 Drag and Drop Block 블록 유형(block_content.type.drag_and_drop_block)을 설치합니다: config/optional/. body 필드, 기본 보기 표시의 dxpr_builder_text 포매터, 양식 표시와 함께. 유형에는 Create new revision(이)가 켜져 있고, dxpr_builder_block_update_8002()는 이전 설치에도 켜므로, 블록의 모든 빌더 저장은 리비전을 만듭니다. 다음을 보세요: 콘텐츠 스테이징.

의존성: text, node, dxpr_builder.

  1. 모듈을 활성화하세요:

    drush en dxpr_builder_block -y
    
  2. 다음에서 블록을 만드세요: /block/add/drag_and_drop_block.

  3. 리전에 배치하세요. 나타나는 모든 페이지에서 편집자가 제자리에서 편집합니다.

dxpr_builder_entity_type_alter()(은)는 모듈 자체 Drupal\dxpr_builder\Entity\BlockContent 클래스로 교체합니다. Node의 경우와 같습니다. 클래스는 빈 빌더 필드에 빈 문자열을 저장하므로 편집기가 항상 붙을 대상을 가집니다. 직접 만드는 블록 유형도 보기 표시가 DXPR Builder 포매터를 쓰면 같은 방식으로 동작합니다.

DXPR Builder Media

modules/dxpr_builder_media(은)는 코어 Media Library 지원 전에 모듈이 쓰던 Entity Browser 기반 이미지 선택기입니다. hidden: true가 .info.yml에 표시되어 Extend에 나타나지 않습니다. Drush로는 여전히 활성화할 수 있습니다. 설치 내용:

  • entity_browser.browser.dxpr_builder_media_modal: DXPR Builder Image Browser라는 두 위젯 모달 브라우저. Media Library 탭(dxpr_builder_media View 기반)과 Upload new image 탭(Inline Entity Form으로 image 미디어 엔터티 생성).
  • views.view.dxpr_builder_media: 첫 위젯의 미디어 그리드.
  • image.style.dxpr_builder_media_thumbnail: 그리드용 300×300픽셀 scale-and-crop 스타일.
  • 라이브러리 view, claro_style, gin_style (dxpr_builder_media.libraries.yml). 모듈은 활성 테마가 Gin이거나 Gin 기반이면 Gin 스타일시트를 View에, 아니면 Claro 스타일시트를 붙입니다.

의존성: inline_entity_form, entity_browser, entity_browser_entity_form, media, media_library, views. 설치 시 모듈은 media_browser(dxpr_builder.settings 안)를 dxpr_builder_media_modal(으)로 설정합니다. 제거 시에는 빈 문자열(Basic file upload)로 설정하고 이미지 스타일을 삭제합니다.

권장 브라우저는 코어 Media Library이며 하위 모듈이 필요 없습니다:

  1. 활성화되어 있으면 기존 모듈을 제거하세요:

    drush pm:uninstall dxpr_builder_media -y
    
  2. 다음으로 가세요: DXPR Studio > DXPR Builder > General Settings (/admin/dxpr_studio/dxpr_builder/settings). Media(을)를 여세요.

  3. 다음을 설정하세요: Browser type을 Media Library로. Save settings(을)를 클릭하세요. 제거 과정에서 Basic file upload(으)로 초기화되었습니다.

Entity Browser가 파일 ID를 반환하는 데 의존하는 사이트에서만 하위 모듈을 유지하세요. 다음을 보세요: 이미지가 업로드되지 않거나 사라짐. 맞지 않는 브라우저가 내는 오류에 대한 내용입니다. 모듈에는 저장소의 유일한 PHPUnit 테스트가 있습니다: tests/src/FunctionalJavascript/MediaEntityBrowserTest.php. 다음을 보세요: 테스트.

한 번에 여러 개 활성화

drush en dxpr_builder_page dxpr_builder_block -y

각 하위 모듈은 서로 독립적입니다.

다음 단계