如果分类术语为空,则隐藏图像

时间:2013-09-15 作者:Exclusif

所以我有一个以国家名称为术语的国家分类法。国家名称由地图上可点击的旗帜(png图像)表示。现在我只想显示包含国家的术语的标志,所以我需要的只是隐藏表示空术语的标志。

我不是php开发人员,但下面是地图css的摘录:

<div class="mapCont">
<img class="mapAdjust" src="<?php bloginfo(\'template_url\'); ?>/img/map-adjust.gif" />
    <img class="map" src="<?php bloginfo(\'template_url\'); ?>/img/map.jpg" />
        <div class="flagSweden">
            <a href="<?php echo home_url();?>/country/sweden" alt="Sweden" title="Sweden">
            <img class="flag" src="<?php bloginfo(\'template_url\'); ?>/img/flags/sweden-flag.png" /></a> <!-- Sweden -->
        </div>  <!-- /flagCont -->
        <div class="flagChina">
            <a href="<?php echo home_url();?>/country/china" alt="China" title="China">
            <img class="flag" src="<?php bloginfo(\'template_url\'); ?>/img/flags/china-flag.png" /></a> <!-- China -->
        </div>  <!-- /flagCont -->
        <div class="flagBrazil">
            <a href="<?php echo home_url();?>/country/brazil" alt="Brazil" title="Brazil">
            <img class="flag" src="<?php bloginfo(\'template_url\'); ?>/img/flags/brazil-flag.png" /></a> <!-- Brazil -->
等等。。。

有什么想法吗?非常感谢。

1 个回复
最合适的回答,由SO网友:gmazzap 整理而成

与其手动编写标志的html代码,不如使用php和wordpress函数创建:

$countries = get_terms(\'country\', array(\'hide_empty\' => true) );
$exclude_terms = array(\'featured\');

if ( ! empty($countries) && is_array($countries) ) { ?>

  <img class="mapAdjust" src="<?php bloginfo(\'template_url\'); ?>/img/map-adjust.gif" />
  <img class="map" src="<?php bloginfo(\'template_url\'); ?>/img/map.jpg" />

  <?php
    foreach ( $countries as $country ) {
      if ( ! empty($exclude_terms) && in_array($country->slug, $exclude_terms) ) continue;
      $name = esc_attr($country->name);
      $slug = $country->slug;
  ?>

    <div class="flag<?php echo str_replace(\' \', \'\', $name); ?>">
      <a href="<?php echo get_term_link($country, \'country\') ?>" alt="<?php echo $name; ?>" title="<?php echo $name; ?>">
        <img class="flag" src="<?php bloginfo(\'template_url\'); ?>/img/flags/<?php echo $slug; ?>-flag.png" />
      </a> <!-- <?php echo $name; ?> -->
    </div>  <!-- /flagCont -->

  <?php
  }
}
我只使用了两个函数:

结束

相关推荐

使用index.php模板而不是博客页面

我正在尝试设置WordPress,以便主页是静态的,而博客页面是一个单独的页面。因此,我在我的主题中创建了两个页面模板。,让我们给他们打电话home_template 和blog_template.然后,我创建了两个WordPress页面(从页面->添加新页面)。调用第一页Home, 并且正在使用home_template; 第二个叫做Blog 并且正在使用blog_template.然后我进入设置->阅读设置,选择Front Page Displays A Static Page. 在接下来