2010-07-28 4 views
0

저는 Drupal에 익숙하지 않으며 콘텐츠 형식을 테마로하는 방법을 알아 내려고하고 있습니다. 나는 나의 주요 콘텐츠 유형이 '부동산 목록'과 같을 클라이언트를 위해 부동산 중개사 사이트를 구축 중입니다. 이미지를 업로드하고 모든 것이 제대로 작동하도록 필요한 모든 모듈을 설치했습니다. Fullsize 및 Thumbnail 이미지를 모두 표시 할 수 있어야합니다. 각 속성에 대한 슬라이드 쇼 (또는 갤러리)를 만들 수 있어야합니다.콘텐츠 형식 도움말 표시

예 :

// Fullsize Images 
<ul class="gallery-output"> 
    <li><img src="example.png" /></li> 
    <li><img src="example-two.png" /></li> 
</ul> 
// Thumbnail Images 
<ul class="gallery-nav"> 
    <li><a href="#"><img src="example_thumb.png" /></a></li> 
    <li><a href="#"><img src="example-two_thumb.png" /></a></li> 
</ul> 

지금 당신은 변경할 수 .tpl.php 파일을 노드 - [내용 유형]을 작성해야한다는 것을 알고있다. 내가 모르는 것은 어디 있는지. 그러니 제발 도와주세요. 내 복사 노드 whatever.tpl.php 파일에서

나는이 :

<div class="content clear-block"> 
    <?php print $content ?> 
</div> 

나는이를 제거하고 내 자신의 사용자 지정 솔루션으로 대체합니까? 아니면 template.php 파일을 변경합니까? 둘 다 가능하다면 어떤 것이 바람직한 해결책입니까? 나는 cck, filefield, imageapi, imagecache 및 imagefield를 사용 중입니다. 전처리 기능을 변경하는 것이 해결책이라면 올바른 것을 추적하는 가장 좋은 방법은 무엇입니까 ??

도와주세요! (아, 누군가가 'Use Views'라고 말하면 나는 미쳐 버릴 거라고 생각합니다. 그래서 제발 찾지 마십시오.)

답변

2

node-whatever.tpl.php를 사용한 접근 방식 절대적으로 맞습니다. $content은 처리 될 때 COMPLETE 콘텐츠를 보유하고 있습니다. CCK 필드 또는 그와 비슷한 스타일을 지정하려면 이러한 변수를 가져와야합니다. 페이지에 선물이 있습니다. 모든 것이 내부에 있기 때문에 그것은 단지 표시되지 않습니다. $content.

Devel (더 중요한) Theme Developer을 설치하십시오. 테마 개발자는 사이트에서 사용할 수있는 ALL 행을 검사 할 수 있으며 어떤 블록이 호출되는지, 어떤 부분을 렌더링하는 데 사용되는지 등을 검사 할 수 있습니다. 이것은 매우 도움이됩니다. 원하는 모든 데이터를 사용할 수 있으며 원하는대로 작업 할 수 있습니다. 당신이 ImageCache 설정에 따라 일부 이미지 크기를 조정하려면

, 당신이 유사한 템플릿 내에서 사용 :

theme('imagecache', 'your_preset', $field_fromcck[0]['filepath']); 

당신이 이름 fromcck 인 CCK 필드가 가정. 그러나 Devel 및 Theme Developer에 익숙해 진 후에이 정보가 유용 할 것입니다.

<div class="content clear-block"> 
    <?php print $content ?> 
</div> 

로 : 당신의 노드 - [내용 유형] .tpl.php 파일에서

+0

감사합니다 DrColossos, 당신은 올바른 방향으로 나를 지적했습니다. 나는 Devel에 대해 알고 있었지만 아무 쓸모가 없다는 것을 알았습니다. 나는 Theme Developer에 대해 몰랐습니다. 다시 한번 감사드립니다. 내가 사용한 솔루션에 대한 내 대답을 확인하십시오. – Booski

0

, 대체

<div class="content clear-block"> 
<?php 

    // Large and Thumbnail are my Imagecache Presets 

$cck_images = $node->field_image; 
if (count($cck_images) > 0) : 
    // Fullsize 
    foreach ($cck_images as $cck_image) : 
    $image = theme('imagecache', 'large', $cck_image['filepath'], $cck_image['data']['alt'], $cck_image['data']['title']); 
    print $image; 
    endforeach; 
    // Thumbnails 
    foreach ($cck_images as $cck_image) : 
    $image = theme('imagecache', 'thumbnail', $cck_image['filepath'], $cck_image['data']['alt'], $cck_image['data']['title']); 
    print $image; 
    endforeach; 
endif; 

?> 

<?php // All Content except for images ?> 
<?php print $content ?> 
</div> 

을하고 디스플레이의 이미지를 제외 (관리 -> 콘텐츠 유형 -> 귀하의 [content-type] -> 필드 관리 -> 필드 표시).

스타일을 적절하게 지정하십시오.