特殊类别页面中的高级自定义字段显示字段

时间:2014-05-01 作者:gil hamer

我是高级自定义字段插件的忠实粉丝http://www.advancedcustomfields.com/

我开发了一个网站,其中有两种类型的类别:普通和“自定义”,大多数类别显示正常,就像任何其他网站显示存档中的帖子一样。php页面和一些帖子档案显示在我创建的一个特殊的“类别”模板中,该模板的样式不同,称为:category-projects.php

这是一个特殊的“归档”或“类别”页面,为特殊帖子显示不同的归档模板。

这个模板运行良好,使用了我创建的函数,一切看起来都很好。

现在,我正在尝试使用我在这个特殊类别模板中拥有的优秀转发器创建ACF滑块。所以我创建了一个新的组,名为“post_slider_projects” 还有一个简单的图像转发器字段,名为:“post_slide_projects

现在,我将规则指定为显示在类别中,并在浏览“管理类别”部分时看到它。

在这之前,一切都在运转。唯一的问题是,当我在这个特殊类别页面中查看站点时,它没有显示出来。。

下面是我用来显示它的代码:

<?php if(get_field(\'post_slider_projects\')){ ?>
<div class="post-section">
      <section class="flexslider">
        <ul class="slides">
          <?php while( has_sub_field(\'post_slider_projects\') ){ 
            $post_slide_projects = get_sub_field(\'post_slide_projects\');
            ?>
          <li class="latest-post"> <img alt="" src="<?php echo $post_slide_projects;?>"/> </li>
          <!--latest-post-->
          <?php } ?>
          <?php } else{ ?>
           <img alt="" src="<?php bloginfo(\'template_directory\'); ?>/assets/images/slider-img1.jpg"/>
           <?php } ?>
        </ul>
      </section>
    </div>
<?php } ?>
任何帮助都将不胜感激
非常感谢

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

ACF API函数通常使用当前帖子的ID。分类法和用户的工作方式略有不同,您必须提供要从中获取字段的对象的ID。

$category_id = \'category_\' . get_queried_object_id();
$field = get_field( \'post_slider_projects\', $category_id );
请参见get_field 有关详细信息,请参阅文档。

SO网友:gil hamer

因此,根据上面@Milo的提示和我自己的一些修改,我最终得到了以下结果working 代码:

<div class="post-section">
      <section class="flexslider">
        <ul class="slides">
          <?php 
          $category_id = \'category_\' . get_queried_object_id();
          $field = get_field( \'post_slider_projects\', $category_id );
          if($field){
          while( has_sub_field(\'post_slider_projects\', $category_id) ){ 
          $post_slide_projects = get_sub_field(\'post_slide_projects\', $category_id);
         ?>
          <li class="latest-post"> <img alt="" src="<?php echo $post_slide_projects;?>"/> </li>
          <?php } ?>
          <?php } else{ ?>
           <img alt="" src="<?php bloginfo(\'template_directory\'); ?>/assets/images/slider-img1.jpg"/>
           <?php 
        } ?>
        </ul>
      </section>
    </div>
希望它能帮助任何人!

结束

相关推荐

Multiple parent categories

我是wordpress的新手。我想为每个主要类别创建一些主要类别和5个子类别。两个主要类别的子类别将相同。E、 g主要类别将是“美国”、“加拿大”等。子类别将是“地点”、“照片”等。是否可以使用单个wordpress进行此操作,或者是否需要为每个主要类别安装另一个wordpress?

特殊类别页面中的高级自定义字段显示字段 - 小码农CODE - 行之有效找到问题解决它

特殊类别页面中的高级自定义字段显示字段

时间:2014-05-01 作者:gil hamer

我是高级自定义字段插件的忠实粉丝http://www.advancedcustomfields.com/

我开发了一个网站,其中有两种类型的类别:普通和“自定义”,大多数类别显示正常,就像任何其他网站显示存档中的帖子一样。php页面和一些帖子档案显示在我创建的一个特殊的“类别”模板中,该模板的样式不同,称为:category-projects.php

这是一个特殊的“归档”或“类别”页面,为特殊帖子显示不同的归档模板。

这个模板运行良好,使用了我创建的函数,一切看起来都很好。

现在,我正在尝试使用我在这个特殊类别模板中拥有的优秀转发器创建ACF滑块。所以我创建了一个新的组,名为“post_slider_projects” 还有一个简单的图像转发器字段,名为:“post_slide_projects

现在,我将规则指定为显示在类别中,并在浏览“管理类别”部分时看到它。

在这之前,一切都在运转。唯一的问题是,当我在这个特殊类别页面中查看站点时,它没有显示出来。。

下面是我用来显示它的代码:

<?php if(get_field(\'post_slider_projects\')){ ?>
<div class="post-section">
      <section class="flexslider">
        <ul class="slides">
          <?php while( has_sub_field(\'post_slider_projects\') ){ 
            $post_slide_projects = get_sub_field(\'post_slide_projects\');
            ?>
          <li class="latest-post"> <img alt="" src="<?php echo $post_slide_projects;?>"/> </li>
          <!--latest-post-->
          <?php } ?>
          <?php } else{ ?>
           <img alt="" src="<?php bloginfo(\'template_directory\'); ?>/assets/images/slider-img1.jpg"/>
           <?php } ?>
        </ul>
      </section>
    </div>
<?php } ?>
任何帮助都将不胜感激
非常感谢

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

ACF API函数通常使用当前帖子的ID。分类法和用户的工作方式略有不同,您必须提供要从中获取字段的对象的ID。

$category_id = \'category_\' . get_queried_object_id();
$field = get_field( \'post_slider_projects\', $category_id );
请参见get_field 有关详细信息,请参阅文档。

SO网友:gil hamer

因此,根据上面@Milo的提示和我自己的一些修改,我最终得到了以下结果working 代码:

<div class="post-section">
      <section class="flexslider">
        <ul class="slides">
          <?php 
          $category_id = \'category_\' . get_queried_object_id();
          $field = get_field( \'post_slider_projects\', $category_id );
          if($field){
          while( has_sub_field(\'post_slider_projects\', $category_id) ){ 
          $post_slide_projects = get_sub_field(\'post_slide_projects\', $category_id);
         ?>
          <li class="latest-post"> <img alt="" src="<?php echo $post_slide_projects;?>"/> </li>
          <?php } ?>
          <?php } else{ ?>
           <img alt="" src="<?php bloginfo(\'template_directory\'); ?>/assets/images/slider-img1.jpg"/>
           <?php 
        } ?>
        </ul>
      </section>
    </div>
希望它能帮助任何人!