세 번째 수준에서 componentlink 필드 이름에 액세스하는 방법은 무엇입니까? 나는 임베디드 스키마로 필드를 포함하는 스키마를 가지고 있는데, 임베디드 스키마에는 다른 스키마에서 파생 된 컴포넌트 링크가 있습니다. 어떻게 그 스키마의 필드를 검색 할 수 있습니까?세 번째 수준에서 componentlink 필드 이름에 액세스하는 방법은 무엇입니까?
답변
내가 아는 한, 임베디드/컴포넌트 링크를 제어하려면 특별한 DWT TBB가 필요합니다. Nuno의 Get Extensions를 사용할 수 있습니까? http://www.sdltridionworld.com/community/extension_overview/dreamweaver_get_extension.aspx 아니면 면도기 중재자를 사용 : 정말 그 필드 (들)의 목적에 따라 http://www.sdltridionworld.com/community/2011_extensions/razormediator.aspx
DWT를 사용하는 경우 DW Get 확장 프로그램을 고려해야합니다. –
는, 아마도 당신이 좀 더 많은 정보를 제공 할 수 ?
여기에 언급되지 않은 또 다른 옵션은이 세 번째 수준의 구성 요소를 패키지에 추가하기 위해 자체 C# 구성 요소를 작성하는 것입니다. 그렇게함으로써 DWT 레이아웃에서 작업하는 것이 훨씬 더 간단 해집니다.
예를 들어세 번째 수준의 항목 사무실 위치의 목록을 생성하는 데 사용하는 경우, 당신은 모든 관련 사무실 위치 구성 요소를 얻기 위해 C 번호 블록을 작성하고 구성 요소 목록으로 패키지에 추가 할 수 '위치'는 DWT에서해야 할 일은 그 항목을 반복하고 필요한 디스플레이를 제공하는 것입니다.
개인적으로 저는 DWT에 기능을 추가/사용하고 싶지 않습니다. 가능한 한 간단하게 유지하려고합니다. 다시 말해서 커뮤니티에서 더 좋은 대답을 얻을 수있는 시나리오에 대한 정보를 제공 할 수 있습니다.
DGX (MDa가 제안한대로)를 사용하지 않거나 John Winter가 제안한대로 C# TBB를 작성하지 않으려면 RenderComponentPresentation
을 호출하여 사용할 템플릿으로 렌더링 된 구성 요소를 렌더링 할 수 있습니다.
<!-- TemplateBeginRepeat name="Component.Fields.LinkFieldName" -->
@@RenderComponentPresentation(Field, "tcm:1-23-32")@@
<!-- TemplateEndRepeat -->
경우 tcm:1-23-32
그것은 단순히 하이퍼 링크로 구성 요소의 이름을 렌더링하는 구성 요소 템플릿의 TCM URI.
Component.Title
,
Component.Fields.Field1
같은 링크 된 구성 요소의 모든 필드와 속성을 참조 할 수 있습니다
tcm:1-23-32
에서 사용하는 DWT,
주 내부 Retrieving values of a linked component in Dreamweaver TBB - and making it SiteEditable
- 링크 된 구성 요소의 제목을 렌더링 How to handle nested repeating regions in Dreamweaver TBBs in SDL Tridion 2011 SP1
어떻게 든 도움이되지 않는다면, 구성하려는 XML과 게시하려고하는 DWT를 게시하는 것이 좋습니다. 여기
당신이 정말로 빠른 필드 구조를 탐색하고 결과를 얻을 수 있습니다 Linq에를 사용하여 C#을
Session session = engine.GetSession();
Item componentItem = package.GetByName(Package.ComponentName);
Component component = new Component(new TcmUri(componentItem.GetValue("ID")), session);
ItemFields itemFields = new ItemFields(component.Content, component.Schema);
IEnumerable<ComponentLinkField> ie = itemFields.OfType<EmbeddedSchemaField>().OfType<ComponentLinkField>();
for (IEnumerator<ComponentLinkField> e = ie.GetEnumerator(); e.MoveNext();) {
Component linkedComponent = e.Current.Value;
}
를 사용하여 빠른 샘플. 그것은 세 번째 레벨의 컴포넌트 링크를 제공 할 것입니다. 물론 같은 것을 사용하여 구조에서 더 깊어 질 수 있습니다.
- 1. PHP ARRAY 정렬 세 번째 수준에서
- 2. 템플릿의 속성 외에도 이름에 액세스하는 방법은 무엇입니까?
- 3. PivotCell.RowItem (n)의 필드 이름에 액세스하는 방법?
- 4. 이름에 대시가있는 속성에 액세스하는 방법은 무엇입니까?
- 5. 기타 기능에서 스레드 이름에 액세스하는 방법은 무엇입니까?
- 6. 블랙 베리 - xml의 세 번째 중첩 수준에서 데이터 추출
- 7. UISplitViewController에서 세 번째 UIView를 추가하는 방법은 무엇입니까?
- 8. Vim에 세 번째 줄을 추가하는 방법은 무엇입니까?
- 9. JSON 필드 이름을 다른 개체 필드 이름에 매핑하는 방법은 무엇입니까?
- 10. 필드 이름에 대괄호가있는 Javascript 사용
- 11. 텍스트 필드 셀에서 NSNumberFormatter에 액세스하는 방법은 무엇입니까?
- 12. 기본 키가 세 번째 테이블과 일치하고 세 번째 테이블이 정렬되는 경우 두 테이블을 결합하는 방법은 무엇입니까?
- 13. UINavigationController, 어떻게 두 번째 수준에서 tabbar를 숨기려면 viewController 세 번째 수준의 tabbar를 표시하십시오.
- 14. 메이븐은 세 가지 수준에서 종속에서 아래로
- 15. 내가 세 가지 활동이 세 번째 활동
- 16. HTML5로 작성된 앱에서 클라이언트 측의 파일 이름에 액세스하는 방법은 무엇입니까?
- 17. MapRoute는 익명 형식의 필드 이름에 어떻게 액세스합니까?
- 18. 디자인은 세 번째 정규형입니까?
- 19. preg_replace - 세 번째 인수
- 20. 세 번째 점을 찾으십시오
- 21. 세 번째 카메라 추가
- 22. 세 번째 레벨 도메인
- 23. atan2를 사용하여 세 번째 점을 계산하는 방법은 무엇입니까?
- 24. 세 번째 변수를 사용하지 않고 교환하는 방법은 무엇입니까?
- 25. Ruby on Rails에서 세 번째 수준의 nav를 추가하는 방법은 무엇입니까?
- 26. 문자열을 목록으로 분할하고 세 번째 요소를 얻는 방법은 무엇입니까?
- 27. 세 번째 작업에서 두 작업 결과를 병합하는 방법은 무엇입니까?
- 28. C에서 세 번째 DLL에서 두 DLL의 코드를 사용하는 방법은 무엇입니까?
- 29. 세 번째 숫자에 도달했을 때 텍스트 상자를 전환하는 방법은 무엇입니까?
- 30. 위치 경로 이름의 세 번째 부분을 찾는 방법은 무엇입니까?
사용하려는 API를 지정하고 질문의 이름을 적절하게 바꿔 주실 수 있습니까? –