我正在运行一个帖子循环,这些帖子有四个我需要关联的属性:标题,日期,链接,位置:
while (have_posts()) : the_post();
if( !in_array( $post->ID, $already_displayed_ids )) {
array_push( $thisPostid, $post->ID );
$title = get_the_title();
$location = usp_get_meta(false, 'usp-custom-8');
$link = get_permalink();
$contentYear = usp_get_meta(false, 'usp-custom-14');
if ($contentYear >= 0 && $contentYear <= 2019) {
array_push($yearsArray, $contentYear);
if (($wp_query->current_post +1) == ($wp_query->post_count)) {
$yearsArray = array_unique($yearsArray);
sort($yearsArray);
}
}
array_push( $already_displayed_ids, $post->ID );
}
endwhile;
基本上我正在运行一个循环,我在$already_displayed_ids
中检查是否有重复,我需要关联并推送我在这里推送的任何帖子的标题,位置,日期和链接array_push($yearsArray, $contentYear);
目前我只能推$contentYear
,但推文后没有link
,title
或location
,我想创建一个关联数组,以推动每个帖子我需要的所有规格。 $contentYear
是一个带日期的自定义字段,因此我使用这些值创建导航,它们是日期。但我需要将每个日期与他们的标题,位置和链接相关联,因为我目前还不知道如何推动这些规格与我推动的时间相关联。
答案 0 :(得分:0)
据我所知,没有从帖子中获取关联数组的直接功能。 以下是您要求的摘录:
$posts = array();
if (have_post()) :
while (have_posts()) :
array_push($posts,
Array(
'id'=>the_ID(),
'quantity'=>1,
'size'=>$size,
'colour'=>$colour
)
);
endwhile;
$_SESSION['cart'] = $posts[0]; // change 0 index
endif;
请注意上面的代码并不理想,你可能应该这样做。此外,您可能希望使用cookie而不是会话。
答案 1 :(得分:0)
这是我解决它的方式:
while (have_posts()) : the_post();
if( !in_array( $post->ID, $already_displayed_ids )) {
array_push( $thisPostid, $post->ID );
$contentYear = usp_get_meta(false, 'usp-custom-14');
if ($contentYear >= 0 && $contentYear <= 2019) {
array_push($yearsArray,
array(
'year'=> $contentYear,
'link'=> get_permalink(),
'location'=> usp_get_meta(false, 'usp-custom-8'),
'title'=> get_the_title()
)
);
}
array_push( $already_displayed_ids, $post->ID );
}
endwhile;
然后我可以foreach ($yearsArray as $year) {
和echo $year['title']
等