2013-11-14 1 views
0

나는이 getResourcesCall에게이ModX의의 GetResources - 덩어리 TPL에서 부모의 콘텐츠를 표시하는

[[!getResources? &tpl= GRTpl &includeContent= 1 &includeTVs= 1 &parents= [[* ID] ]]

내가 [[+content]] 태그를 포함하고 GRTpl에서

하지만, 자녀의 콘텐츠가 아닌 부모 콘텐츠 만 표시합니다. 무엇을 준다!?

업데이트 : GRTpl에 ModX 출력 필터를 사용하고

. 그래서 선택에 따라 청크를 표시하는 단일 선택 목록 상자가 있습니다. 다음은 GRTpl입니다.

[[+tv.section_type:eq=`Type One`:then=`[[$Type One Chunk]]` ]] 

[[+tv.section_type:eq=`Type Two`:then=`[[$Type Two Chunk]]` ]] 

[[+tv.section_type:eq=`Type Three`:then=`[[$Type Three Chunk]]` ]] 

[[+tv.section_type:eq=`Type Four`:then=`[[$Type Four Chunk]]` ]] 

답변

0

그래서 해결책을 찾았습니다. GRTpl에서 나는 각 청크에 VAR을 전달 해요 :

[[+tv.section_type:eq=`Type One`:then=`[[$Type One Chunk? &content=`[[+content]]` ]]` ]] 

[[+tv.section_type:eq=`Type Two`:then=`[[$Type Two Chunk? &content=`[[+content]]` ]]` ]] 

[[+tv.section_type:eq=`Type Three`:then=`[[$Type Three Chunk? &content=`[[+content]]` ]]` ]] 

[[+tv.section_type:eq=`Type Four`:then=`[[$Type Four Chunk? &content=`[[+content]]` ]]` ]]` 

을 다음 청크 [[+ 내용] 디스플레이에 아이 리소스의 내용을.

0

위의 방법을 사용하면 많은 추가 처리와 느린 웹 사이트가 생성됩니다.

두 가지 옵션 :

1) 조건문에 제이슨 겁쟁이의 우수한 기사를 읽어보십시오.

기본 문제는 위의 코드가 조건부를 충족시키지 않아도 MODX에 의해 확장되고 처리된다는 것입니다.

그래서 대신 :

[[* 필드 : = 0입니다 : 다음 = [[!SomeScript]] : 다른 = [[$SomeChunk]]]

사용 :

[[[[ * field : = 0 : then = !SomeScript : else = $SomeChunk]]]

자세한 내용은 http://modx.com/blog/2012/09/14/tags-as-the-result-or-how-conditionals-are-like-mosquitoes/을 참조하십시오.

2) 더 향상된 기능을 사용하려면 getResources를 pdoResources로 대체하고 우수한 조건부 템플릿을 사용하십시오. 즉, 조건부를 전혀 사용할 필요가 없습니다. !

[[pdoResources : pdoResources와

는 다음을 수행 할 수 있습니다? & includeTVs = section_type & tplCondition = section_type & conditionalTpls =`{ "입력 한": "입력 한 덩어리", "유형 두": "유형 두 덩어리"} 등등.

Google "modx pdotools"for the docs.

나는이 방법을 사용하여 TV를 탑재 한 getResources 호출 속도가 약 8 배 빨라졌습니다.

http://forums.modx.com/thread/90995/performance-question-with-getresources