0

我正在创建滑块并从主题选项中获取图像和链接。其中有图像 url 和链接 url 的输入文件。

问题是当我为选项设置变量并尝试仅使用以下代码获取已设置或不为空的字段时,它不会呈现任何内容,但是当我编写代码而不检查空字段时,它正在呈现,但幻灯片也是空的。

因此,如果我只设置了两个图像,它将使用 5 张幻灯片和 3 张空幻灯片进行渲染。

我的代码:

$slides = '<ul class="the-slider">';
for($s=1; $s<=5; $s++){

    $slide = $this->the_opt('slide'.$s.'_url_image');
    $slide_link = $this->the_opt('slide'.$s.'_link_image');
    $slide_name = basename($this->the_opt('slide'.$s.'_url_image'));
    $slide_alt = substr($slide_name, 0, strrpos($slide_name,'.'));

    if(!empty($slide)){
        $slides .= '<li><a href="'.$slide_link.'"><img src="'.$slide.'" alt="'.$slide_alt.'" title="'.$slide_alt.'" /></a></li>';
    } else {
        return '<div class="the-error">Set the slider...</div>';
    }
} // end for loop

$slides .= '</ul>';

return $slides;

那么我怎样才能得到只设置字段的输出呢?

4

1 回答 1

0

'<div class="the-error">Set the slider...</div>'只有当任何幻灯片为空时,您才会返回。

尝试

$slides .= '<div class="the-error">Set the slider...</div>';

代替

return '<div class="the-error">Set the slider...</div>';

如果您只需要显示非空幻灯片并忽略其他部分,您甚至不需要其他部分。

于 2013-08-01T10:22:13.837 回答