2017-09-12 14 views
2

(모든 속성보기에서) 페이지의 내용을 채울 때 편집기 환경을 더 좋게하고 시각적으로 즐겁게 만들고 싶습니다. 간단한 구분선이나 표제가 될 수 있습니다 ..EPiServer ContentType에 대한 속성을 시각적으로 구분할 수 있습니까?

나는 의미가있을 때마다 이미 탭을 사용하고 있습니다. 또한 블록을 속성으로 사용하여 실험을 해보았습니다. 이것은 명확한 표제와 함께 좋은 분리를 추가하지만, 속성이 실제로 페이지 유형에 속할 때 정직하게 유지하는 것이 훨씬 더 많은 코드와 솔직히 약간 혼란입니다.

답변

3

본질적으로 블록 속성을 사용하지 않는 한, 머리 글자로 속성을 장식 할 수 없습니다.

그러나 저는 귀하의 질문이 매우 흥미 롭다고 생각했으며,이 동작을 수용하기 위해 Episerver를 확장하는 것이 놀랍도록 쉽다는 것을 발견했습니다. 필자는 예제 솔루션을 작성 했으므로 원하는대로 자유롭게 사용할 수 있습니다 : https://arlc.dk/grouping-properties-with-headlines-without-property-blocks.

솔루션을 싫어하는 경우, 대체 속성은 고유 한 속성 유형 (헤드 라인)을 소개하고 1) 헤드 라인을 표시하기위한 사용자 정의 도우미 위젯, 2) 해당 항목을 설정하는 EditorDescriptor를 작성하는 것입니다. ClientEditingClass. Linus는 여기에 우수한 블로그 게시물을 작성했습니다 : https://world.episerver.com/blogs/Linus-Ekstrom/Dates/2012/7/Creating-a-custom-editor-for-a-property/.

편집 : 나는 오버라이드 부분을 너무 빨리 건너 뜁니다.

파일을 대체하여 덮어 쓸 필요가 없으므로 Shell.zip을 추출 할 필요가 없습니다 (Episerver가 위젯을 구현 한 방법이 궁금하지 않은 경우 제외). 특정 구성 요소를 대체하는 부분은 define ("epi/shell/form/Field"입니다.이 위젯의 ​​정의가 쉘 다음에로드되는 한, dojo는 "epi/shell/form/필드 삽입 "을 선택하면 모듈 구현 후 모듈이로드됩니다.

경로 ~/ClientResources/Scripts/Shell/Field/Field.js는 단순히 Field.js의 재정의 버전을 넣기로 선택한 위치입니다. 따라서 새 경로로 module.config를 적절히 업데이트하는 한 원하는 위치에 넣을 수 있습니다. 다음과 같이 작동합니다. Episerver는 위젯 A를 정의합니다. 그런 다음 동일한 이름의 위젯을 정의합니다. A가 A를 가져 오려고하면 Episerver가 아닌 구현을 반환합니다.

+0

블로그 게시물에 ~/ClientResources/Scripts/Shell/Field/Field.js를 덮어 쓰겠다 고되어 있지만 ClientResources 폴더에 해당 파일이 없습니다. 테스트를 위해 합금 기술 데모를 사용하고 있습니다. /_protected/Shell 모듈에서 Shell.zip 폴더의 압축을 풀고 필요한 폴더와 파일을 만든 다음 폴더가 작동하도록 다시 압축해야합니까? dojo 수정 및 기능 내장에 익숙하지 않습니다. 더 자세한 단계를 제공하시기 바랍니다. 또한, 아마 다른 사람이 볼 수있는이 게시물에 대답을 사용할 수 있어야합니다. – Frostrar

+0

안녕하세요, Frostrar, 답장을 편집 할 때 답장을 추가했습니다. 댓글에 너무 길기 때문에 답장을 추가했습니다. –

+0

이것은 완벽하게 작동했습니다! 확실히 미래의 프로젝트에서 사용할 것입니다. 무시할 부분에 대한 설명 주셔서 감사합니다! – Frostrar