2010-07-28 1 views
0

Я новичок в Drupal, и я пытаюсь выяснить, как использовать тему Content Type. Я создаю сайт риэлтора для клиента, в соответствии с которым мой основной тип контента будет похож на «Листинг свойств». Я установил все необходимые модули, чтобы помочь мне загружать изображения, и все работает правильно. Мне нужно иметь возможность отображать BOTH изображения 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> 

теперь я знаю, что вы должны создать node- [тип содержимого] .tpl.php файл для внесения изменений. Я не знаю, где. Пожалуйста, помогите мне.

В моем скопированной узловой whatever.tpl.php файл у меня есть:

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

ли я удалить это и заменить его с моим собственным настраиваемым решением? Или я могу внести изменения в файл template.php? Если возможны оба варианта, что является предпочтительным решением? Я использую: cck, filefield, imageapi, imagecache и imagefield. Если изменение функции препроцесса является решением, каков наилучший метод отслеживания правильного?

Пожалуйста, помогите! (О, и если кто-нибудь скажет «Использовать виды», я думаю, что сойду с ума, так что, пожалуйста, не надо, это не то решение, которое я ищу):

ответ

2

Ваш подход с node-whatever.tpl.php абсолютно верно. $content содержит содержимое COMPLETE, так как оно обрабатывается. Если вы хотите, чтобы ваши поля CCK были одинаковыми, вам нужно получить эти переменные. Есть на странице, это просто не показано, так как все внутри $content.

В качестве хорошей помощи, пожалуйста, установите Devel и (что более важно) Theme Developer. Разработчик темы позволяет вам просматривать ВСЕ variales, доступные на сайте, какой блок вызывается, какие функции используются для визуализации какой части и т. Д. Это очень полезно. Вы увидите, что у вас есть все необходимые данные, и вы можете работать с ним так, как хотите.

Если вы хотите изменить некоторые изображения в соответствии с настройкой ImageCache, вы используете его внутри шаблона, подобный следующему:

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

Если у вас есть поле CCK, которое имена fromcck. Но эта информация будет доступна вам после того, как вы познакомитесь с разработчиком Devel и Theme.

+0

спасибо DrColossos, вы указали мне в правильном направлении. Я знал о Devel, но нашел его бесполезным - я не знал о Theme Developer. Еще раз спасибо. Проверьте мой ответ на решение, которое я использовал. – Booski

0

В вашем node- [типа содержимого] .tpl.php файла, заменить:

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

с:

<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> 

И исключить изображения с экрана (администрирование -> тип содержимого -> ваш [контент-тип] -> управлять полями -> поля отображения).

Постройте свои изображения соответствующим образом!

 Смежные вопросы

  • Нет связанных вопросов^_^