高级自定义字段-未选择图像

时间:2020-01-31 00:30:30

标签: php html wordpress advanced-custom-fields

如果未在ACF字段$ cta_fields ['image']中选择图像,我该如何设置条件以显示默认img? 我希望默认的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 :(得分:0)

db.collection.aggregate([
  {
    $match: {
      update_at: {
        "$gte": "2019-05-03T00:00:00.0Z",
        "$lt": "2019-05-05T00:00:00.0Z"
      },
      id: {
        "$in": [
          166
        ]
      }
    }
  },
  {
    $group: {
      _id: {
        $substr: [
          "$update_at",
          11,
          2
        ]
      },
      count: {
        "$sum": 1
      }
    }
  },
  {
    $addFields: {
      hour: [
        "0000",
        "0101",
        "0202",
        "0303",
        "0404",
        "0505",
        "0606",
        "0707",
        "0808",
        "0909",
        "1010",
        "1111",
        "1212",
        "1301",
        "1402",
        "1503",
        "1604",
        "1705",
        "1806",
        "1907",
        "2008",
        "2109",
        "2210",
        "2311"
      ]
    }
  },
  {
    $unwind: "$hour"
  },
  {
    $project: {
      _id: 0,
      hour: 1,
      count: {
        $cond: [
          {
            $eq: [
              {
                $substr: [
                  "$hour",
                  0,
                  2
                ]
              },
              "$_id"
            ]
          },
          "$count",
          0
        ]
      }
    }
  },
  {
    $group: {
      _id: "$hour",
      count: {
        "$sum": "$count"
      }
    }
  },
  {
    $sort: {
      _id: 1
    }
  },
  {
    $project: {
      _id: 0,
      hour: {
        $concat: [
          {
            $substr: [
              "$_id",
              2,
              2
            ]
          },
          {
            $cond: [
              {
                $gt: [
                  {
                    $substr: [
                      "$_id",
                      0,
                      2
                    ]
                  },
                  "12"
                ]
              },
              " PM",
              " AM"
            ]
          }
        ]
      },
      count: "$count"
    }
  }
])

答案 1 :(得分:0)

假设在该情况下$cta_fields['image']将是null或其他情况下未定义,则类似

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

我认为应该可以解决问题。

这使用(简写)ternary operator,您可以认为它有点像压缩的if/else块。

您可能还希望通过其外观以类似的方式修改"alt="位。