2010-05-07 7 views
0

Drupal에서보기를 사용하여 블록을 만들었습니다. 이 블록에는 최신 블로그 항목이 포함되어 있습니다. 이것을 아카이브로 표시하는 특정 페이지에 배치했습니다. 자, 블로그 그 자체 (예를 들어, 그 중 하나가 클릭되었을 때)와 같은 블로그 템플릿은 node-blog.tpl.php에 의존합니다. 내 문제는, 내가 node-blog.tpl.php를 스타일링 할 때 아카이브에 대해 만든 블록 (페이지에 표시됨)이 영향을 받는다는 것입니다.Drupal에서 블로그 블록의 템플릿을 어떻게 분리합니까?

예를 들어 node-blog.tpl.php에 TEST를 추가하면 모든 항목에 대해 블록에서도 해당 값을 얻게됩니다. 나는 그것이 blog 입구와 관련이 있기 때문에 그것이다고 생각한다? 내가 원하는 것은 블로그 항목을 개별적으로 볼 때 노드 블로그를 "단독"으로 지정하고 아카이브 페이지의 블록에있는 다른 항목이 영향을받지 않도록하는 것입니다. 어떻게해야합니까?

답변

0

보기에서 "노드"행 스타일을 사용하고있을 것입니다. 즉, 블록보기의 각 블로그는 전체 노드로 표시되며 영향을받습니다. node-blog.tpl.php

가장 쉬운 방법은 행 스타일을 '필드'로 변경하고보기에 표시 할 개별 필드를 선택하는 것입니다. . 그런 다음보기의 사용자 지정 .tpl.php 파일을 사용하여 각 필드를 개별적으로 테마로 지정할 수 있습니다 (보기에서 Theme: Information을 클릭하면 검색된 tpl.php 파일을 볼 수 있습니다).

이 문제를 해결하는 또 다른 방법은 행 스타일 설정에서 '티저'빌드 모드를 선택하는 것입니다. 그런 다음 node-blog.tpl.php에서 다음과 같이하십시오.

if ($teaser) { 
    //Display stuff for the block 
} 
else { 
    //Display stuff for the full page 
}