PHP中的多个ID在WordPress中调用

PHP中的多个ID在WordPress中调用,php,wordpress,if-statement,Php,Wordpress,If Statement,**我很抱歉不清楚-我的意思是我希望“峰会赞助商”显示一次,无论使用多少ID。只是为了在没有使用ID的情况下隐藏它。谢谢** 我想知道是否有人知道在if语句中使用多个自定义字段的干净方法 目前我已将其隔开,因此每个自定义字段“SponsorHeading#”都有自己的if/else语句: <?php if(get_post_meta($post_id, 'SponsorHeading1', true)) { echo '<h2>Summit Sponsors </h

**我很抱歉不清楚-我的意思是我希望“峰会赞助商”显示一次,无论使用多少ID。只是为了在没有使用ID的情况下隐藏它。谢谢**

我想知道是否有人知道在if语句中使用多个自定义字段的干净方法

目前我已将其隔开,因此每个自定义字段“SponsorHeading#”都有自己的if/else语句:

<?php
if(get_post_meta($post_id, 'SponsorHeading1', true)) {
   echo '<h2>Summit Sponsors </h2>';
}
else {
   echo '';
}
if(get_post_meta($post_id, 'SponsorHeading2', true)) {
    echo '<h2>Summit Sponsors </h2>';
}
else {
    echo '';
} 
?>

依此类推,获得另外3个自定义字段。我想要更干净的东西,比如:

<?php
if(get_post_meta($post_id, 'SponsorHeading1', true)) || if(get_post_meta($post_id, 'SponsorHeading2', true)) || if(get_post_meta($post_id, 'SponsorHeading3', true)) {
  echo '<h2>Summit Sponsors </h2>';
}
 else {
        echo '';
}
?>

或者沿着这些路线来清理它,但我尝试过的都不起作用


有什么建议吗?

不是100%确定WordPress的逻辑本身是否有更有效的方法来管理这个问题,但是我能想到的最简单的解决方案是使用您给出的示例将所有ID放入一个数组中,并让逻辑像这样循环:

<?php

$fields = array('SponsorHeading1', 'SponsorHeading2', 'SponsorHeading3');

foreach($fields as $field_value) {
  if(get_post_meta($post_id, $field_value, true)) {
    echo '<h2>Summit Sponsors </h2>';
  }
  else {
    echo '';
  }
}

?>

无法100%确定WordPress的逻辑本身是否有更有效的方法来管理此问题,但我可以想象使用您给出的示例的最简单解决方案是将所有ID放入一个数组中,并使用逻辑循环它们,如下所示:

<?php

$fields = array('SponsorHeading1', 'SponsorHeading2', 'SponsorHeading3');

foreach($fields as $field_value) {
  if(get_post_meta($post_id, $field_value, true)) {
    echo '<h2>Summit Sponsors </h2>';
  }
  else {
    echo '';
  }
}

?>

无法100%确定WordPress的逻辑本身是否有更有效的方法来管理此问题,但我可以想象使用您给出的示例的最简单解决方案是将所有ID放入一个数组中,并使用逻辑循环它们,如下所示:

<?php

$fields = array('SponsorHeading1', 'SponsorHeading2', 'SponsorHeading3');

foreach($fields as $field_value) {
  if(get_post_meta($post_id, $field_value, true)) {
    echo '<h2>Summit Sponsors </h2>';
  }
  else {
    echo '';
  }
}

?>

无法100%确定WordPress的逻辑本身是否有更有效的方法来管理此问题,但我可以想象使用您给出的示例的最简单解决方案是将所有ID放入一个数组中,并使用逻辑循环它们,如下所示:

<?php

$fields = array('SponsorHeading1', 'SponsorHeading2', 'SponsorHeading3');

foreach($fields as $field_value) {
  if(get_post_meta($post_id, $field_value, true)) {
    echo '<h2>Summit Sponsors </h2>';
  }
  else {
    echo '';
  }
}

?>


我认为这应该很好。这个答案很好,确实回答了上面提到的问题。然而,我把问题的措辞弄错了。澄清是最重要的。听起来似乎有更深层次的事情发生了,因为在提出问题时,这个
array
foreach
逻辑应该可以工作。就像我说的,也许有一些WordPress的特质?在
get\u post\u meta()
中是否需要
true
?尝试相同的代码,但不使用
true
,看看会发生什么。太棒了!谢谢杰克·古尔德。我认为这应该很好。这个答案很好,确实回答了上面提到的问题。然而,我把问题的措辞弄错了。澄清是最重要的。听起来似乎有更深层次的事情发生了,因为在提出问题时,这个
array
foreach
逻辑应该可以工作。就像我说的,也许有一些WordPress的特质?在
get\u post\u meta()
中是否需要
true
?尝试相同的代码,但不使用
true
,看看会发生什么。太棒了!谢谢杰克·古尔德。我认为这应该很好。这个答案很好,确实回答了上面提到的问题。然而,我把问题的措辞弄错了。澄清是最重要的。听起来似乎有更深层次的事情发生了,因为在提出问题时,这个
array
foreach
逻辑应该可以工作。就像我说的,也许有一些WordPress的特质?在
get\u post\u meta()
中是否需要
true
?尝试相同的代码,但不使用
true
,看看会发生什么。太棒了!谢谢杰克·古尔德。我认为这应该很好。这个答案很好,确实回答了上面提到的问题。然而,我把问题的措辞弄错了。澄清是最重要的。听起来似乎有更深层次的事情发生了,因为在提出问题时,这个
array
foreach
逻辑应该可以工作。就像我说的,也许有一些WordPress的特质?在
get\u post\u meta()
中是否需要
true
?尝试相同的代码,但不使用
true
,看看会发生什么。太棒了!谢谢杰克·古尔德。无论出于什么原因,我都不能让任何“或”函数工作。无论出于什么原因,我也不能让任何“或”函数工作。无论出于什么原因,我也不能让任何“或”函数工作。无论出于什么原因,我也不能让任何“或”函数工作。