我正在为一家旅行社开发Wordpress网站。
对于这个项目,我使用自定义帖子类型和高级自定义字段进行旅行-
类型(商务旅行、团体旅行、学校旅行等)和员工。每种旅行类型都需要一个
联系人,应为员工。所以我在自定义帖子类型中有一个关系字段类型
对于旅行类型,所以我可以设置一名员工,作为旅行类型的联系人。
问题是:
如何从关系字段employess中获取数据?我以为这个关系字段是
像INNER JOIN一样工作,但事实并非如此?所以…现在我只能显示来自旅行的所有信息-
类型,但我无法确定如何显示相关员工的数据。
感谢您抽出时间,并提前感谢
Troels
我自己找到了一个解决方案,并在这里分享给其他人使用。以下代码应放在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; ?>
我知道,您想要设置两种不同的post类型的连接。您可以使用自定义字段进行此操作。创建一个选择框,可以选择其他自定义帖子类型的帖子。为了方便起见,您可以使用Rilwis的meta-box插件(https://github.com/rilwis/meta-box)。
你的选项值必须张贴id。如果你想获得选定的帖子,可以使用这个:
$getIdWithField = get_post_meta($post->ID, 'custom_personel_field', true);
$post = get_post($getIdWithField);