관리자 패널은 EmDash 사이트에 포함된 편집 인터페이스입니다. Astro 애플리케이션에 의해 /_emdash/admin/에서 제공되며 공개 페이지와 동일한 데이터베이스, 미디어 저장소, 콘텐츠 모델 및 플러그인을 사용합니다.
새 사이트의 관리자 경로를 처음 방문하면 설정 마법사가 열립니다. 설정 후, 로그인한 사용자의 권한에 따라 사용 가능한 콘텐츠 및 관리 도구가 결정됩니다.
작업 영역
탐색은 사이트의 컬렉션 및 설치된 플러그인에 맞게 조정됩니다. 편집자 또는 관리자가 볼 수 있는 주요 영역은 다음과 같습니다:
| 영역 | 용도 |
|---|---|
| 대시보드 | 사이트 및 플러그인 위젯이 있는 시작 뷰 |
| 컬렉션 이름(예: 게시물) | 항목 나열, 생성, 편집, 게시 및 휴지통으로 이동 |
| 컬렉션 그룹 | 그룹을 공유하는 컬렉션을 포함하는 접을 수 있는 폴더와 해당 폴더의 컬렉션에만 할당된 분류 체계 |
| 미디어 | 파일 업로드, 검색, 검사, 교체 및 삭제 |
| 분류 체계 및 서명 | 콘텐츠 정리 및 크레딧 작성자 관리 |
| 메뉴 및 위젯 영역 | 사이트에서 렌더링되는 탐색 및 편집자 제어 영역 관리 |
| 댓글 | 컬렉션이 활성화한 경우 댓글 검토 및 관리 |
| 콘텐츠 유형 | 컬렉션 및 필드 생성 및 설정 변경 |
| 플러그인 | 플러그인 설치, 구성 및 플러그인 제공 페이지 열기 |
| 설정 | 사이트, 인증, 백업, 사이트 전송, 이메일, 검색 및 기타 서비스 구성 |
이 인터페이스는 데이터와 구성을 관리합니다. Astro 페이지와 컴포넌트는 여전히 공개 레이아웃을 정의합니다. 관리자에서 메뉴 항목이나 위젯을 추가하는 것은 Astro 컴포넌트가 해당 메뉴 또는 위젯 영역을 쿼리하고 렌더링할 때만 공개 사이트를 변경합니다.
콘텐츠 편집기
콘텐츠 편집기는 선택한 컬렉션에서 양식을 구축합니다. 짧은 텍스트 필드는 텍스트 입력이 되고, portableText 필드는 리치 텍스트 편집기가 되며, 미디어 필드는 미디어 선택기를 열고, 참조 필드는 편집자가 다른 항목을 선택할 수 있게 합니다. 컬렉션 설정은 해당되는 경우 게시, 미리보기, 수정, 댓글 및 검색 컨트롤을 추가합니다.
리치 텍스트 편집기는 제목, 목록, 인용문, 코드, 링크, 이미지 및 등록된 사용자 정의 블록을 지원합니다. 가져온 콘텐츠에 편집기가 표시할 수 없는 블록이 포함된 경우 EmDash는 다음 저장 시 제거하는 대신 저장된 블록을 보존합니다.
초안이 있는 컬렉션의 경우 저장 및 게시는 별도의 상태입니다. 저장은 현재 작업을 초안으로 저장합니다. 게시 또는 변경사항 게시는 저장된 버전을 공개 쿼리에 사용할 수 있게 만듭니다. 예약은 초안 또는 보류 중인 변경 사항이 언제 공개되어야 하는지 기록합니다.
컬렉션에 대해 편집 잠금이 활성화된 경우 항목을 열면 해당 편집자에 대한 잠금이 유지됩니다. 잠금이 활성화된 동안 다른 작성자는 항목을 자동으로 덮어쓰는 대신 거부됩니다. 편집자가 항목을 로드한 후 항목이 변경되면 EmDash는 오래된 저장도 거부하므로 편집자가 덮어쓰는 대신 최신 버전을 다시 로드할 수 있습니다.
역할 및 권한
EmDash에는 구독자, 기여자, 작성자, 편집자 및 관리자의 다섯 가지 역할이 포함됩니다. 권한은 역할 수준이 높아질수록 늘어나지만 콘텐츠 및 미디어 작업에는 소유권도 중요합니다. 예를 들어, 작성자는 자신의 항목을 편집하고 게시할 수 있지만 편집자는 모든 항목에 대해 그렇게 할 수 있습니다.
관리 영역에는 별도의 권한 확인이 있습니다:
- 편집자는 분류 체계, 메뉴, 서명, 위젯, 섹션 및 다른 작성자의 콘텐츠를 관리할 수 있습니다.
- 관리자는 콘텐츠 모델, 사용자, 플러그인, 리디렉션, 백업 및 설정을 변경할 수 있고, 전체 사이트를 내보내거나 가져올 수 있으며, 휴지통에 있는 콘텐츠를 영구적으로 삭제할 수 있습니다.
- 서버는 각 작업에 대한 권한을 확인합니다. 탐색 항목을 숨기는 것은 보안 경계가 아닙니다.
계정 설정 및 전체 역할 설명은 인증 및 사용자 역할을 참조하세요.
미디어
미디어 라이브러리는 파일을 그리드 또는 목록으로 표시하고, 검색 및 필터링하고, 메타데이터를 표시하고, 여러 항목 작업을 수행할 수 있습니다. 업로드 동작은 구성된 저장소 어댑터에 따라 다릅니다. 어댑터가 서명된 업로드를 지원하는 경우 브라우저는 단기 서명된 URL을 사용하여 파일을 저장소로 보낸 다음 EmDash로 완료된 업로드를 확인합니다.
미디어 항목을 삭제하면 이를 참조하는 항목에 영향을 줄 수 있습니다. 공개 페이지에서 사용되는 자산을 제거하기 전에 미디어 사용 정보 및 교체 도구를 사용하세요. 업로드, 교체 및 삭제 워크플로에 대해서는 미디어 라이브러리를 참조하세요.
플러그인 인터페이스
플러그인은 대시보드 위젯, 설정 섹션, 편집기 컨트롤 또는 완전한 관리자 페이지를 추가할 수 있습니다. 플러그인 페이지는 해당 플러그인 자체의 관리자 경로 아래에 마운트됩니다. 핵심 관리자 화면을 교체할 수 없습니다. 관리자 링크가 특정 역할에만 표시되는 경우에도 플러그인은 보호된 작업에 대해 서버 측 권한 확인이 필요합니다.
확장 기능을 추가하려면 플러그인 설치를 참조하세요. 인터페이스를 구축하는 사이트 개발자는 핵심 관리자 애플리케이션을 수정하는 대신 네이티브 플러그인 관리자 API를 사용해야 합니다.
구성 요구사항
관리자는 React 애플리케이션이므로 Astro 프로젝트는 @astrojs/react, react 및 react-dom을 설치하고 astro.config.mjs에서 react()를 등록해야 합니다. 사이트에는 서버 출력, 데이터베이스 및 미디어 저장소도 필요합니다. 기존 Astro 프로젝트에 EmDash 추가에서 전체 로컬 구성을 보여줍니다.