我正在使用Drupal 7并为我的内容缩略图首页显示创建一个模块。工作:
if(count($p_detail->field_slide) > 0){
$output .= '<div class="right">';
$output .= '<ul class="thumbs">';
$i=6;
foreach($p_detail->field_slide['und'] as $thumb):
$img_path = $thumb['uri'];
$img_url = image_style_url('tmb_240x117', $img_path);
$img_file = '<img src="'.$img_url.'" alt="'.$p_detail->title.'" />';
$output .= '<li>
<a href="'.$p_url.'">
'.$img_file.'
<div class="shadow"></div>
<div class="hoverimg"></div>
</a>
<div class="img_no">0'.$i.'</div>
</li>';
$i--;
endforeach;
$output .= '</ul>';
$output .= '</div>';
}
我的缩略图,field_slide和我只想要前6个缩略图(如果有6张图片......用于检查,有2张图片,显示2张缩略图)
我该怎么做?
答案 0 :(得分:1)
您应该尽量不在PHP代码中使用HTML。我强烈建议使用一些模板。但无论如何,要回答你的问题:
你可以做两件事:
回答1(首选):
限制从数据源(通常是数据库)中检索到的项目数量,这些项目存储在:
中$p_detail->field_slide
回答2(简单,不太好):
创建一个计数器($ i)并在foreach中使用if语句。类似的东西:
$i = 6;
foreach($p_detail->field_slide['und'] as $thumb) {
if($i > 0) {
// Your current code here
$i--;
}
}
答案 1 :(得分:0)
您可以通过返回资源将参数传递给方法,该参数告诉您的方法您希望接收的资源量,然后在SQL查询中使用此参数来限制。