【发布时间】:2020-12-01 19:20:24
【问题描述】:
如果没有使用替代图像的图像,我需要查询。
<?php $angebot_17 = get_field( 'angebot_17' ); ?>
<?php if ( $angebot_17 ) : ?>
<?php $post = $angebot_17; ?>
<?php $image = get_field( 'image' ); ?>
<?php if ( $image ) { ?>
<a href="<?php the_permalink(); ?>">
<img width="300" height="300" src="<?php the_field('image'); ?>" alt="<?php echo esc_attr( $image['alt'] ); ?>" class="img-responsive product-img wp-post-image box_image" />
<?php $lager = get_field ('lager'); ?>
<?php if ( $lager) { ?>
<span class="goods_label" style="background-color: #00CC99;color: #ffffff;bottom:8px;border-color: #00CC99;">
<span>Versand aus Deutschland</span>
</span>
<?php } ?>
</a>
<?php } ?>
<?php else: ?>
<img width="300" height="300" src="/wp-content/uploads/2019/09/cropped-Logo_512x512-4.png" alt="<?php echo esc_attr( $image['alt'] ); ?>" />
<span class="goods_label" style="background-color: red;color: #ffffff;bottom:8px;">
<span>Leider kein Bild vorhanden</span>
</span>
<?php wp_reset_postdata(); ?>
<?php endif; ?>
令人疯狂的是,它适用于 18 张图像中的 4 张。 我想我在某处的“其他查询”中有错误。 因为如果我将默认图像与实际产品图像交换,那么它可以工作..但这当然没有意义;)
【问题讨论】:
-
嗯......什么?请简明扼要地解释您的问题
-
有什么问题?什么不工作?预期的输出是什么?
-
我真的不想刻薄,但这是一个很好的例子说明为什么 PHP 如此难以管理。
-
哦,对不起......虽然“正确”的图像可用,但替代图像显示给我。
-
您的图像 ACF 字段究竟是如何设置的 - 即
$image中的内容是什么?您将它用作字符串和数组,所以其中一些是错误的。请向我们展示您从var_dump($image);获得的信息。此外,与此特定问题无关,但您最后遗漏了一些endifs(我想您有它们但只是没有;这里没有包括它们?)。此外,您正在混合使用{/}和:/endif- 这不是错误,但保持一切一致可以更容易发现错误。您也不需要每行<?php?>- 它们之间可以有超过 1 行代码:)
标签: php if-statement advanced-custom-fields