Расширенные пользовательские поля - изображение не выбрано - PullRequest
0 голосов
/ 31 января 2020

Как я могу поставить условное выражение для показа img по умолчанию, если изображение НЕ выбрано в поле ACF $ cta_fields ['image']? Я бы хотел, чтобы значение img по умолчанию было "websiteurl.com/wp-content/uploads/img.jpg"

<?php
  $root = get_template_directory_uri();
?>

<section class="k-ctabanner k-cta-banner--main">
  <div class="k-inner k-inner--xl">
    <div class="k-ctabanner--bgimg" data-src="<?php echo $cta_fields['image']['url']; ?>" alt="<?php echo $cta_fields['image']['alt']; ?>"></div>

    <div class="k-inner k-inner--md">
      <div class="k-ctabanner--content k-block k-block--md">
        <div class="k-preheading k-upcase"><?php echo $cta_fields['preheading']; ?></div>
        <h3 class="k-headline k-headline--sm"><?php echo $cta_fields['heading']; ?></h3>
        <a href="<?php echo $cta_fields['link']['url']; ?>" class="k-button k-button--secondary"><?php echo $cta_fields['link']['title']; ?> &nbsp; &rarr;</a>
      </div>
    </div>
  </div>
</section>

Ответы [ 2 ]

0 голосов
/ 31 января 2020

Предполагая, что $cta_fields['image'] будет null или иным образом неопределенным в этом сценарии, тогда что-то вроде

data-src="<?php echo (!empty($cta_fields['image']) ?: 'websiteurl.com/wp-content/uploads/img.jpg'); ?>" 

должно сработать, я думаю.

Это использует (сокращение ) троичный оператор , о котором вы можете думать, что он немного похож на сжатый if/else блок.

Возможно, вы захотите изменить бит "alt=" аналогичным образом, судя по всему.

0 голосов
/ 31 января 2020
<?php echo $cta_fields['image']['url'] ?: 'wp-content/uploads/img.jpg'; ?>
...