我是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>
我现在知道你必须创建一个node- [content-type] .tpl.php文件来进行更改。我不知道的是哪里。所以请帮助我。
在我复制的node-whatever.tpl.php文件中:
<div class="content clear-block">
<?php print $content ?>
</div>
我是否将其删除并将其替换为我自己的自定义解决方案?或者我在template.php文件中进行更改?如果两者都可能,哪个是首选解决方案? 我正在使用:cck,filefield,imageapi,imagecache和imagefield。如果改变预处理函数是解决方案,那么追踪正确函数的最佳方法是什么?
请帮忙! (哦,如果有人说'使用意见',我想我会疯了 - 所以请不要,这不是我正在寻找的解决方案):)
答案 0 :(得分:2)
使用node-whatever.tpl.php的方法绝对正确。 $content
在处理时保留 COMPLETE 内容。如果要为CCK字段或类似字体设置样式,则需要获取这些变量。页面上有,因为一切都在$content
内,所以它不会显示给你。
作为一个很好的帮助,请安装Devel和(更重要的)Theme Developer。主题开发人员允许您检查站点上可用的所有变量,调用哪个块,哪些函数用于呈现哪个部分等等。这非常有帮助。您将看到所有可用的数据都可用,您可以根据需要使用它。
如果要根据ImageCache设置调整某些图像的大小,可以在模板中使用它,类似于:
theme('imagecache', 'your_preset', $field_fromcck[0]['filepath']);
假设您有一个名为fromcck
的CCK字段。但是在您熟悉Devel和Theme Developer之后,这些信息将会提供给您。
答案 1 :(得分:0)
在您的node- [content-type] .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>
并从显示中排除图片(管理 - &gt;内容类型 - &gt;您的[内容类型] - &gt;管理字段 - &gt;显示字段)。
相应地设置图像样式!