【问题标题】:Wordpress, Advance custom fields: Fetch data from relationship field typeWordpress,高级自定义字段:从关系字段类型中获取数据
【发布时间】:2014-10-21 23:24:08
【问题描述】:

我正在为一家旅行社开发一个 Wordpress 网站。

对于这个项目,我正在使用自定义帖子类型高级自定义字段进行旅行-

类型(商务旅行、团体旅行、学校旅行等)和员工。每种旅行类型都需要一个

联系人,应该是员工。所以我在自定义帖子类型中有一个关系字段类型

对于旅行类型,因此我可以将员工设置为旅行类型的联系人。

问题/问题是:

如何从关系字段员工中获取数据?我认为这个关系字段是

像 INNER JOIN 一样工作,但不是吗?所以……现在只能显示旅行表的所有信息了-

类型,但我不知道如何显示相关员工的数据。

感谢您的宝贵时间,提前致谢

巨魔

【问题讨论】:

    标签: php wordpress wordpress-theming advanced-custom-fields


    【解决方案1】:

    我自己找到了一个解决方案,并在这里分享给其他人使用。以下代码应放在 Wordpress 循环中。

                    <?php $fields = get_field('relationship_field_name'); ?>
    
                    <?php if( $fields ): ?>
                        <?php foreach( $fields as $field ): ?>
    
                            <?php $name = get_field('field_name', $field->ID); ?>
                            <?php $image = get_field('field_name', $field->ID); ?>
                            <?php $email = get_field('field_name', $field->ID); ?>
                            <?php $phone = get_field('field_name', $field->ID); ?>
    
                            <h4><span><?php echo $name; ?></span></h4>
    
                            <img style="width: 150px; height: auto;" src="<?php echo $image; ?>" alt="<?php echo $name; ?>"/>
    
                            <ul class="fa-ul pad10">
                                <li><i class="fa-li fa fa-phone colour"></i><a href="tel:0045<?php echo str_replace(' ', '', $phone); ?>">+ 45 <?php echo $phone; ?></a></li>
                                <li><i class="fa-li fa fa-envelope colour"></i><?php echo $email; ?></li>
                            </ul>
    
                            <div class="pad10"></div>
    
                        <?php endforeach; ?>
                    <?php endif; ?>
    

    【讨论】:

      【解决方案2】:

      我了解,您想设置连接两种不同的帖子类型。您可以使用自定义字段。创建一个选择框,并且选项是您的其他自定义帖子类型的帖子。 为方便起见,您可以使用 Rilwis 的元框插件 (https://github.com/rilwis/meta-box)。

      您的选项值必须发布 id。如果你想获得选中的帖子,可以使用这个:

      $getIdWithField = get_post_meta($post->ID, 'custom_personel_field', true);
      $post = get_post($getIdWithField);
      

      【讨论】:

        猜你喜欢
        • 2014-02-06
        • 1970-01-01
        • 2017-08-28
        • 2021-04-30
        • 2018-01-29
        • 2013-11-25
        • 2012-08-10
        • 2015-01-21
        • 2017-05-01
        相关资源
        最近更新 更多