Php 显示';X';多个查询中的帖子数量
我目前正在我的网站上显示事件,基于它们被“标记”的一个月。对于每个月,我都会进行查询,以显示该月内的帖子,按帖子到期日期排序 我一直在寻找一种更简单的方法(或者将其合并为一个查询,而不是多个查询)来显示(例如)所有这些查询中的前50篇帖子 守则:Php 显示';X';多个查询中的帖子数量,php,wordpress,loops,posts,Php,Wordpress,Loops,Posts,我目前正在我的网站上显示事件,基于它们被“标记”的一个月。对于每个月,我都会进行查询,以显示该月内的帖子,按帖子到期日期排序 我一直在寻找一种更简单的方法(或者将其合并为一个查询,而不是多个查询)来显示(例如)所有这些查询中的前50篇帖子 守则: $argsJanuari = [ 'numberposts' => -1, 'cat' => '-1', 'order' => 'ASC', 'meta_key'
$argsJanuari = [
'numberposts' => -1,
'cat' => '-1',
'order' => 'ASC',
'meta_key' => '_expiration-date',
'orderby' => 'meta_value',
'meta_query' => array(
array(
'key' => 'maand',
'value' => 'Januari 2017',
)
)
];
$loopJanuari = new WP_Query($argsJanuari);
if($loopJanuari->have_posts()) { ?> <h2>Januari 2017</h2> <?php
while($loopJanuari->have_posts()) {
$loopJanuari->the_post();
get_template_part( 'concert-single' );
}
wp_reset_postdata();
}
$argsFebruari = [
'numberposts' => -1,
'cat' => '-1',
'order' => 'ASC',
'meta_key' => '_expiration-date',
'orderby' => 'meta_value',
'meta_query' => array(
array(
'key' => 'maand',
'value' => 'Februari 2017',
)
)
];
$loopFebruari = new WP_Query($argsFebruari);
if($loopFebruari->have_posts()) { ?> <h2>Februari 2017</h2> <?php
while($loopFebruari->have_posts()) {
$loopFebruari->the_post();
get_template_part( 'concert-single' );
}
wp_reset_postdata();
}
$argsMaart = [
'numberposts' => -1,
'cat' => '-1',
'order' => 'ASC',
'meta_key' => '_expiration-date',
'orderby' => 'meta_value',
'meta_query' => array(
array(
'key' => 'maand',
'value' => 'Maart 2017',
)
)
];
$loopMaart = new WP_Query($argsMaart);
if($loopMaart->have_posts()) { ?> <h2>Maart 2017</h2> <?php
while($loopMaart->have_posts()) {
$loopMaart->the_post();
get_template_part( 'concert-single' );
}
wp_reset_postdata();
}
?>
$argsJanuari=[
“numberposts”=>-1,
'类别'=>'-1',
“订单”=>“ASC”,
“元密钥”=>“\u到期日期”,
'orderby'=>'meta_value',
“元查询”=>数组(
排列(
“键”=>“键”,
“价值”=>“2017年1月”,
)
)
];
$loopJanuari=新的WP_查询($argsJanuari);
如果($loopJanuari->have_posts()){?>2017年1月-2017年2月-2017年马尔特
您可以使用元查询关系将所有查询合并为一个查询。有关详细信息,请参见此处:。此外,要设置帖子数量,post参数称为posts\u per\u page。我不确定您使用的那一个,'numberposts'
,因此我在下面的代码中替换了它。无论如何,请在下面找到包含合并查询和50篇文章的代码。它没有经过测试和编写,因为您在上面发布的代码是有效的。如果有帮助,请告诉我:)
$argsConcert=[
“每页帖子数”=>50,
'类别'=>'-1',
“订单”=>“ASC”,
“元密钥”=>“\u到期日期”,
'orderby'=>'meta_value',
“元查询”=>数组(
'关系'=>'或',
排列(
“键”=>“键”,
“价值”=>“2017年1月”,
)
排列(
“键”=>“键”,
“值”=>“2017年2月”,
)
排列(
“键”=>“键”,
“价值”=>“玛特2017”,
)
)
];
$loopConcert=新的WP\u查询($argsConcert);
如果($loopConcert->have_posts()){?>Concert 2017您可以使用元查询关系将所有查询合并为一个查询。这里有更多信息:。此外,要设置帖子数量,帖子参数称为posts_per_page。我不确定您使用的那一个,'numberposts'
,因此我在下面的代码中替换了它。
无论如何,请在下面找到包含合并查询和50篇文章的代码。它没有经过测试和编写,因为您在上面发布的代码是有效的。如果有帮助,请告诉我:)
$argsConcert=[
“每页帖子数”=>50,
'类别'=>'-1',
“订单”=>“ASC”,
“元密钥”=>“\u到期日期”,
'orderby'=>'meta_value',
“元查询”=>数组(
'关系'=>'或',
排列(
“键”=>“键”,
“价值”=>“2017年1月”,
)
排列(
“键”=>“键”,
“值”=>“2017年2月”,
)
排列(
“键”=>“键”,
“价值”=>“玛特2017”,
)
)
];
$loopConcert=新的WP\u查询($argsConcert);
如果($loopConcert->have_posts()){?>Concert 2017过滤帖子限制?过滤帖子限制?您好,这几乎满足了我的要求。显示的帖子数量是正确的。但是我每个月都要划分所有帖子。(如果2月有帖子,显示2017年2月的帖子。根据提供的代码,帖子现在是一个没有分月符的长列表。您好,这几乎满足了我的要求。显示的帖子数量是正确的。但是我每个月都会分帖子。(如果2月有帖子,显示2017年2月的帖子。提供代码后,帖子现在是1个长列表,没有月分隔符。
$argsConcert = [
'posts_per_page' => 50,
'cat' => '-1',
'order' => 'ASC',
'meta_key' => '_expiration-date',
'orderby' => 'meta_value',
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'maand',
'value' => 'Januari 2017',
)
array(
'key' => 'maand',
'value' => 'Februari 2017',
)
array(
'key' => 'maand',
'value' => 'Maart 2017',
)
)
];
$loopConcert = new WP_Query($argsConcert);
if($loopConcert->have_posts()) { ?> <h2>Concert 2017</h2> <?php
while($loopConcert->have_posts()) {
$loopConcert->the_post();
get_template_part( 'concert-single' );
}
wp_reset_postdata();
}