0

我正在使用 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 个缩略图)

我怎样才能做到这一点?

4

2 回答 2

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--;
    }
}
于 2012-05-11T13:53:06.353 回答
0

您可以将参数传递给您的方法并返回您的资源,该参数告诉您的方法您想要接收的资源量,然后在您的 sql 查询中使用此参数进行限制。

于 2012-05-11T14:37:17.680 回答