2012-02-28 4 views
1

サムネイル画像'smallthumb'は、foreachで配列をループするget_post_metaで検索されます。foreachループで壊れたイメージを取り除く?

サムネイル画像がある場合のみ画像を表示できますか?現時点では、'smallthumb'イメージの値がない場合、IEとFFは壊れたイメージを表示します。

<?php 
    if(count($ids)){ 
    echo '<div id=read-more-widget> 
    <div class="read-more-header">Read more</div> 
    <ul class="read-more-links">'; 
    foreach($ids as $id){ 
    echo '<li><a href="'.get_permalink($id).'">'.get_the_title($id).'</a> 
    <a href="'.get_permalink($id).'"> 
    <img class="small-thumb" src="'.get_post_meta($id, 'smallthumb', true).'"> 
    </a><p class="read-more-entry">'.get_post_meta($id, 'entry', true).'</p></li>'; 
    } 
    echo "</ul></div>"; 
} 
?> 

答えて

1

私はあなたのコードが動作する方法を正確にわからないんだけど、imgタグを除去することalltogether実行可能な解決策になるのでしょうか?例えば

<?php 
    if(count($ids)){ 
    echo '<div id=read-more-widget> 
    <div class="read-more-header">Read more</div> 
    <ul class="read-more-links">'; 
    foreach($ids as $id){ 
    echo '<li><a href="'.get_permalink($id).'">'.get_the_title($id).'</a> 
    <a href="'.get_permalink($id).'"> 

    <?php if ($smallthumb = get_post_meta($id, 'smallthumb', true)) { ?> 
     <img class="small-thumb" src="'.$smallthumb.'"> 
    <?php } ?> 

    </a><p class="read-more-entry">'.get_post_meta($id, 'entry', true).'</p></li>'; 
    } 
    echo "</ul></div>"; 
} 
?> 

厳密解を返す可能性があるものget_post_meta($id, 'smallthumb', true)によってわずかに更新する必要があります。

+0

フィールドが値でない場合は、空文字列(FALSEに等しい)。 – hakre

関連する問題