Experience Manager as a Cloud Service의 콘텐츠 조각 편집기 확장을 사용하여 날짜 및 시간 필드를 현재 시간으로 채우기
Adobe Experience Manager as a Cloud Service에서 작성자가 새 콘텐츠 조각 편집기에서 콘텐츠 조각을 만들거나 편집할 때 콘텐츠 조각 모델의 표준 날짜/시간 필드가 비어 있습니다. 기존 편집기에서 이러한 필드는 현재 시스템 시간으로 미리 채워졌지만 새 편집기에서는 필드를 비워 두고 작성자가 값을 수동으로 입력해야 합니다. 이 변경 사항은 기본 시간 값에 의존하는 작성 워크플로우에 영향을 줍니다. 필드를 자동으로 채우려면 콘텐츠 조각 편집기 UI 확장성 프레임워크를 통해 사용자 지정 필드를 구현하고 필드 값이 비어 있는 현재 시간을 설정합니다. 이 문제를 해결하려면 사용자 지정 필드 확장을 만들고 배포하고 테스트합니다.
설명 description
환경
- Adobe Experience Manager as a Cloud Service(컨텐츠 조각 편집기 UI 확장이 지원됨)
문제/증상
- 콘텐츠 조각의 날짜/시간 필드는 기본적으로 새 편집기에서 비어 있습니다.
- 작성자는 현재 시간을 수동으로 입력해야 합니다.
원인
새 콘텐츠 조각 편집기는 기본적으로 날짜/시간 필드를 자동으로 채우지 않습니다. 이 동작을 복원하려면 확장성 프레임워크를 사용하여 사용자 지정 필드를 구현해야 합니다.
해결 방법 resolution
현재 시간을 자동으로 채우려면 다음 단계를 수행합니다.
-
Adobe App Builder CLI를 설치하고 업데이트합니다.
npm install -g @adobe/aio-cli실행.aio plugins:update실행.
-
편집기 템플릿을 사용하여 콘텐츠 조각 편집기 확장 프로젝트를 초기화합니다.
aio app init --template @adobe/aem-cf-editor-ui-ext-tpl실행.
-
사용자 지정 날짜/시간 필드 React 구성 요소 구현:
- 사용자 정의 필드 API를 사용하여 사용자 정의 필드를 등록합니다.
- 구성 요소에서 필드 값이 비어 있는지 확인합니다. 이 경우 현재 시스템 시간으로 설정합니다.
- 예:
"
react’에서 { useEffect } 가져오기;
기본 함수 CustomDateTimeField({ value, onChange }) {
useEffect() => {
if (!value) {
onChange(new Date().toISOString());
, [ value, onChange] );
// 날짜/시간 입력을 여기에 렌더링합니다. 수동으로 재정의할 수 있습니다
}
"
- 확장성 프레임워크를 사용하여 이 구성 요소를 날짜/시간 속성에 대한 사용자 지정 필드로 등록합니다.
4. App Builder 확장에 대한 표준 배포 단계에 따라 AEM 환경에 확장을 배포합니다.
5. 확장을 테스트합니다. - 새 편집기에서 콘텐츠 조각을 엽니다.
- 날짜/시간 필드를 추가하거나 편집하고 현재 시스템 시간으로 자동 입력되었는지 확인합니다.
- 작성자가 필요에 따라 값을 수정할 수 있는지 확인합니다.