在Wordpress中的自定义函数上使用条件标签/ if / else?

时间:2012-04-13 13:14:27

标签: wordpress function wordpress-theming thumbnails attachment

如果没有附件,如何隐藏img-tag?(函数来自本教程:http://wp.tutsplus.com/tutorials/automagic-post-thumbnails-image-management/

<img src="<?php get_attachment_picture();?>" />

我需要这样的东西:

<?php if ( get_attachment_picture()) { ?>
<img src="<?php get_attachment_picture();?>">
<?php } else { ?>
show nothing, not even av default image
<?php } ?>

2 个答案:

答案 0 :(得分:0)

您可以通过让函数返回缩略图而不是回显它来完成您所需的操作。

从函数中删除这些行:

else:
    $related_thumbnail = "images/default_thumbnail.jpg";  //define default thumbnail, you can use full url here.

并替换

echo $related_thumbnail;

return $related_thumbnail;

您的代码将变为

<?php
$attachment = get_attachment_picture();

if ( ! empty($attachment) ) { ?>
    <img src="<?php echo $attachment; ?>">
<?php } ?>

我没有测试任何这些,所以我可能错过了一些东西,但这种方法应该有用。

顺便说一下 - 我看不出为什么函数有这些行:

ob_start();  
ob_end_clean();  

可能值得删除它们,

答案 1 :(得分:0)

如果您使用的是“标准”文章缩略图,则只需使用has_post_thumbnail
http://codex.wordpress.org/Function_Reference/has_post_thumbnail

<?php 
//This must be in one loop

if(has_post_thumbnail()) {
    the_post_thumbnail();
} else {
    // if there is no thumbnail, do nothing (or whatever you want) here
}
?>