我需要基于ACF true/false字段输出不同的链接。
这是我的代码:
$output_map[$the_ID]['map'] = '
<div class="marker" data-lat="'.$get_google_map['lat'].'" data-lng="'.$get_google_map['lng'].'">
<div class="map-wrapper">
<div class="map-title">
<p><img src="'.$image_url[0].'" alt="'.get_the_title().'"></p>
<p class="map-object-title" href="'.get_permalink().'">'.get_the_title().'</p>
IF <p><a class="map-button" href="'.get_permalink().'">Zum Objekt</a></p>
ELSE <p>NO LINK</p>
</div>
</div>
</div>';
如何在此输出中执行if/else语句?我已经在另一篇文章中读到了关于三元运算符的内容,但我不知道如何在我的案例中做到这一点。。
您没有指定ACL的定义位置,所以我假设它在$field['asf']
中
然后
<a class="map-button" href="'. $field['asf'] ? get_permalink() : get_other_link() .'">
当$field['asf']
等于真时,则调用get_permalink()
,否则调用get_other_link()
您可以尝试这些函数ob_start()
和ob_get_clean()
。这是代码:
<?php $output_map[$the_ID]['map'] = '';
ob_start();
?>
<div class="marker" data-lat="'.$get_google_map['lat'].'" data-lng="'.$get_google_map['lng'].'">
<div class="map-wrapper">
<div class="map-title">
<p><img src="'.$image_url[0].'" alt="'.get_the_title().'"></p>
<p class="map-object-title" href="'.get_permalink().'">'.get_the_title().'</p>
<?php if(){?>
<p><a class="map-button" href="'.get_permalink().'">Zum Objekt</a></p>
<?php }else{?>
<p>NO LINK</p>
<?php } ?>
</div>
</div>
</div>
<?php
$output_map[$the_ID]['map'] = ob_get_clean();
?>
在这些函数中给定的Html代码可以存储在一个变量中。
$text = '<div class="marker" data-lat="' . $get_google_map['lat'] . '" data-lng="' . $get_google_map['lng'] . '">
<div class="map-wrapper">
<div class="map-title">
<p><img src="' . $image_url[0] . '" alt="' . get_the_title() . '"></p>
<p class="map-object-title" href="' . get_permalink() . '">' . get_the_title() . '</p>';
IF $text .= '<p><a class="map-button" href="' . get_permalink() . '">Zum Objekt</a></p>';
ELSE $text .= '<p>NO LINK</p>';
$text .= '</div>
</div>
</div>';
$output_map[$the_ID]['map'] = $text;