2013-07-25 1 views
2

나는 과수원 테마 테마의 과수원 사이트가 있습니다. 나는 오차드를 처음 사용합니다.오차드 사용자 테마 - 특정 페이지에만 표시되는 2 개의 추가 탐색 메뉴 만들기

모든 페이지는 기본 탐색 및 바닥 글과 동일한 머리글을 가지고 있습니다. 머리글 & 바닥 글을 영역으로 설정했습니다.

4 개의 주요 섹션이 있으며 왼쪽에 두 번째 탐색이 필요합니다. 정보 & FAQ.

CMS의 해당 섹션에 대한 페이지를 동적으로 만들고 페이지를 적절한 두 번째 탐색 메뉴에 추가 한 다음 해당 페이지로 이동하면 왼쪽에 올바른 탐색 메뉴가 표시됩니다. 나머지 페이지의 스타일링).

간단한 단계로이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 그리고 Visual Studio에서 레이아웃이나 다른 파일을 편집해야합니다 (필요한 경우 가능).

온라인에서 여러 기사를 찾았습니다. 그러나 모두 완료된 테마에 적용되며 처음부터 작성되는 것은 아닙니다.

는 (나는 또한 위젯 페이지에서 사이트의 '지도'가 없습니다 - 어떻게 든 하나를 만드는 방법을 /?) : site map on widgets page

감사합니다.

답변

3

나는 당신이 무엇을하고 있는지 이해함에 따라 Widget을 만들고 있습니다. 기본적으로 페이지에 콘텐츠를 표시하려면 적절한 ContentType을 만들고 필요한 부분을 첨부하고 표시하려면 브라우저의 주소 표시 줄에 해당 콘텐츠의 url을 입력하거나 해당 콘텐츠에 대한 링크를 클릭해야합니다. 어느 경우이든 탐색 할 수 있습니다 새 페이지로 이동하고 [Content] Zone 안에 내용을 표시합니다. 그러나 특별한 Zone과 특별한 페이지에 콘텐츠를 표시하고 싶다면 Widget을 만드는 것이 좋습니다. 위젯을 만들려면 오직 WidgetPart을 추가하고 Stereotype of 'Widget'을 주면됩니다. 당신의 ContentType 원하는에 대한 Migration 파일에 다음과 같이 변경하여이 작업을 수행 할 수 있습니다 : 이것은 당신이 원하는 영역에 배치 할 수있는 위젯으로 Content Type 켜집니다

ContentDefinitionManager.AlterTypeDefinition("MyType", cfg => cfg 
       .WithPart("WidgetPart") 
       .WithPart("CommonPart") 
       .WithSetting("Stereotype", "Widget")); 

.

위젯을 영역에 추가하려면 대시 보드에서 위젯을 탐색하십시오.

enter image description here

한 다음에 위젯을 배치 할 영역을 선택 위젯을 선택

enter image description here

을 다음

enter image description here

과를 마지막으로를 선택 귀하의 위젯이 표시됩니다 레이어입니다. 레이어는 규칙을 설정 w 어떤 페이지에서 귀하의 위젯이 표시 될지 결정하십시오. 예를 들어 homepage을 선택하면 홈 페이지에서만 위젯이 표시되고 default을 선택하면 모든 페이지에 위젯이 표시됩니다. 자신의 규칙 검사 here을 정의합니다.

enter image description here

편집 :

다음 (하나는 사용자 지정 테마의 뷰 디렉토리에있는) Layout.cshtml을 열고 바로 Zone 이름 theme.txt에서 파일을 포함 테마의 새로운 zone를 생성하고, 다음을 수행 :

주어진 영역 이름이 SecondaryNavigation 인 경우 다음 테마를 추가하십시오.

이 추가 Zone와 6,
@if (Model.SecondaryNavigation != null) 
{ 
    <div id="secondary-navigation" class="group"> 
     <div class="inner"> 
      @Zone(Model.SecondaryNavigation) 
     </div> 
    </div> 
} 

는 영역 목록에 표시됩니다 그리고 당신은 내부에 위젯을 넣을 수 있습니다 새로 zone 생성 .and 당신이 about.it 물었다 그 사진에 대한 주제의 저자에 의해 생성 된 이미지 파일입니다 'Theme.png'라는 이름으로 관리 위젯 화면에서 미리보기로 표시됩니다. 자신 만의 테마로 만들 수 있으며 테마보기 디렉토리에 둘 수 있습니다.

EDIT 마이그레이션 파일 자체는 마이그레이션 파일이 중요하다 DataMigrationImpl에서 구동하는 클래스를 정의하는 것입니다 만 일을, 중요한 이유, orchar 마이그레이션 파일을 선택하고 자동으로 실행되지 않는 2

첫째로 Create 메서드는 1을 반환하고, 추가 업데이트 할 때마다이 모듈이있는 현재 버전 인 UpdateFromN이라는 메서드를 정의해야합니다. 그러면 2, 3 등이 반환됩니다. 마이그레이션 파일에서 수행 할 수있는 작업은 다음과 같습니다. ContentTypes, ContentParts, ContentFields 등등을 생성하는 데이타베이스 테이블을 창조하십시오 이미 modu 레츠는 과수원과 함께 선적되어 그들을 확인하고 아이디어를 얻습니다.

+0

감사합니다. 이것은 나 자신을 만들고있는 커스텀 테마 다. Theme.txt 파일에 2 개의 영역을 나열했습니다. 그러나 '페이지에 넣으려면'무엇이 필요합니까? 또한 표준 레이어 만 사용할 수 있습니다. 새 레이어가 필요합니까? – niico

+0

나는 post.check 그것을 업데이트했다. –

+0

감사합니다. 고정 관념이란 무엇입니까? – niico

관련 문제