2012-12-09 37 views
0

我正在使用Kirby作为我的CMS。我设置了一个自定义字段,当它没有任何内容时,它仍然输出一个空行。当字段为空时,它会输出一个空行

后台截图显示没有字段值:http://cloud.chrisburton.me/LSyR
查看源文件显示空白行(52):http://cloud.chrisburton.me/LSW0

我的代码:

<ul class="credits"> 
    <?php 
    if($page->client() != '') 
    echo '<li><span>Client: </span>'.$page->client().'</li>'; 
    ?> 

    <?php 
    if($page->art_direction() != '') 
    echo '<li><span>Client: </span>'.$page->art_direcion().'</li>'; 
    ?> 

    <?php 
    if($page->typeface() != '') 
    echo '<li><span>Typeface: </span>'.$page->typeface().'</li>'; 
    ?> 
    </ul> 

我怎么能删除?

回答

2

所见即所得。

enter image description here

我建议不同的方法......

<ul class="credits"> 
<?php 
foreach(array('Client' => $page->client(), 'Direction' => $page->art_direction(), 'Typeface' => $page->typeface()) as $key => $value) 
if($value != '') echo "\t<li><span>{$key}: </span>{$value}</li>\n"; 
?> 
</ul> 

此外,还要确保你没有缩进<?php,它从位置0

http://ideone.com/MBWLU0

开始
+0

结果:http://cloud.chrisburton.me/LTPw –

+0

@ChristopherBurton尝试我的第二个建议。另外,你可以在echo中添加PHP_EOL,你可以像这样解决它。 –

+0

嗯。它返回一个错误。我不熟悉PHP,也许我做错了什么? –

1
<ul class="credits"> 
    <?php 
    if($page->client() != '') 
    echo '<li><span>Client: </span>'.$page->client().'</li>'; 

    if($page->art_direction() != '') 
    echo '<li><span>Client: </span>'.$page->art_direcion().'</li>'; 

    if($page->typeface() != '') 
    echo '<li><span>Typeface: </span>'.$page->typeface().'</li>'; 

    ?> 
    </ul> 
相关问题