首先,我想做的是在y类帖子上显示x类帖子,其中y类帖子上自定义字段的文本与x类帖子上两个自定义字段之一的文本匹配。
我使用高级自定义字段,在cat x和y的每篇文章上都有一个自定义文本字段来存储属性列表。e、 红色、汽车、运动、合金。
然后我想检查一下他们是否在立柱之间匹配,并将立柱拉到他们匹配的位置。
我遇到的问题是获取自定义字段值(文本字段),然后将其传递到数组中)文本字段包含逗号分隔的值,例如“car”、“red”,如果我打印字段,它会显示这些值。我尝试使用explode将字符串转换为数组,但仍然没有返回任何结果。如果我手动将“car”、“red”添加到数组中,它就会起作用。
我当前正在使用WP\\U查询,我的最新查询是:
<?php
$list = get_field( "main_attributes" );
$arr = array($list);
$array = explode(\',\', $list);
$args = array(
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'style_atrributes\',
\'value\' => $array,
\'compare\' => \'IN\'
),
array(
\'key\' => \'car_atrributes\',
\'value\' => \'$array\',
\'compare\' => \'IN\'
),
),
);
$custom_query = new WP_Query($args);
while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<?php wp_reset_postdata(); // reset the query ?>
最合适的回答,由SO网友:pdg87 整理而成
好的,任何想要实现这一点的人,代码都是有效的。只需将值保存在自定义字段中,不带引号。e、 g.红色,汽车
<?php
$list = get_field( "main_attributes" );
$array = explode(\',\', $list);
$args = array(
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'style_atrributes\',
\'value\' => $array,
\'compare\' => \'IN\'
),
array(
\'key\' => \'car_atrributes\',
\'value\' => $array,
\'compare\' => \'IN\'
),
),
);
$custom_query = new WP_Query($args);
while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<?php wp_reset_postdata(); // reset the query ?>