0

我正在使用 wp_get_attachment_image 为企业列表中的企业引入徽标。如果没有徽标,我想显示默认图像。

我知道这不起作用,并尝试了几种变体:

<?php $businessLogo = wp_get_attachment_image($business['logo']);?>
<?php if(empty ($businessLogo)) { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } else { echo wp_get_attachment_image($business['logo']) }    ?>

我会很感激任何建议

4

3 回答 3

1

尝试这个:

<?php if ( $businessLogo != '' ) {
    echo wp_get_attachment_image($business['logo']);
} else { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } ?>

这应该有效,因为wp_get_attachment_image如果未设置则返回一个空字符串。

在 WordPress Codex 上阅读有关wp_get_attachment_image的更多信息。

于 2014-07-11T22:11:12.653 回答
1

wp_get_attachment_image()失败时返回一个空字符串,所以试试这个:

<?php if ( $businessLogo != '' ) { ?>
    <!-- Display your business logo here -->
<?php } else { ?>
    <!-- Display your default image here -->
<?php } ?>

参考:http ://codex.wordpress.org/Function_Reference/wp_get_attachment_image

于 2014-07-11T22:08:55.467 回答
0

也试试这个

我想这对你有帮助

<?php if (isset($businessLogo)) {
    echo wp_get_attachment_image($business['logo']);
} else { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } ?>
于 2014-07-12T07:52:28.350 回答