好的,我的问题有点复杂,所以我会试着给出一个一般性的解释,然后再深入细节。
我正在运行WordPress 3.4.2,我正在使用WCK帖子类型创建器和WCK自定义字段创建器创建我的自定义帖子类型和自定义字段。
我正在尝试从自定义帖子类型“business”中查询附加了自定义字段“special”的帖子。我的问题是,我想更具体一些,只获取特定类型的特殊(在自定义字段创建者插件中设置),但我不知道是否可以/如何使用WP\\u query的meta\\u query参数来实现这一点。
我现在拥有的内容将从post类型中提取post,但我必须使用get\\u post\\u meta()来查找自定义字段,并循环通过这些字段进行测试。以下是我现在拥有的:
<?php
$args = array(
\'post_type\' => \'business\',
\'meta_query\' => array(
array(
\'key\' => \'specials\'
)
)
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
$specials = get_post_meta( $post->ID, \'specials\');
//Loop through array of specials
foreach( $specials as $special){
//Loop through each special
foreach($special as $individual){
//Check to see is there is a drink special
if ($individual [\'type-of-special\'] == \'Drink\' ) {
//Do stuff
}//indivdual
}//special
} //specials
endwhile; ?>
因此,我在这里所做的是拉动帖子,然后为每个帖子获取“specials”元数据,并在不同的数组中循环,以检查它是什么类型的特殊,然后显示内容,如果它是正确类型的特殊。有没有办法在我的WP\\u查询中更具体一些,以便我只返回特定类型的帖子?
我似乎遇到的问题是,我不知道如何深入挖掘多维数组,“specials”自定义字段必须使用WP\\u query的meta\\u query参数检查值。
如果我在foreach中打印$special($special作为$special),我会得到:
Array
(
[0] => Array
(
[type-of-special] => Drink
[name-of-special] => Pumpkin Latte
[price] => 2.00
[day-of-the-week] => Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
)
)
所以我不知道如何通过meta\\u查询访问[特殊类型]键来检查其值。
我知道这是很多信息,我真的很感谢任何反馈和帮助来解决这个问题。如果您需要更多信息或澄清,请让我知道。再次感谢!