我正在使用acf wordpress插件将一个布尔字段(featured_project)添加到自定义帖子(项目)。
我正在尝试对类别存档页面上的帖子进行排序,以显示顶部显示的帖子和底部非特色的帖子。
有多个类别具有相同类型的帖子。
我已经阅读了解决方案使用的其他类似问题' wp_query'或pre_get_posts但我似乎无法让它发挥作用。
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php if ( get_field('featured_project') ) { ?>
<article class='project featured' id="post-<?php the_ID(); ?>" <?php post_class( 'cf' ); ?> role="article">
<a href='<?php the_permalink(); ?>'>
<h3 class="h2"><?php the_title(); ?></h3>
<?php
$url = wp_get_attachment_url( get_post_thumbnail_id() );
$width = 300;
$height = 200;
$crop = true;
$retina = false;
// Call the resizing function (returns an array)
$image = matthewruddy_image_resize( $url, $width, $height, $crop, $retina );
?>
<img src='<?php echo $image['url']; ?>'/ alt='<?php the_title(); ?>'>
</a>
<?php // the_post_thumbnail( 'projects-full', false ); ?>
<div class='excerpt'><?php the_excerpt(); ?></div>
</article>
<?php } else { ?>
是类别文件中代码的一部分。
由于
更新:仍未找到解决方案,其他任何人都可以加入吗?
答案 0 :(得分:0)
问题和解决方案不在这个代码块上......问题在于查询, 要解决此问题,您还应该查询元键
<?php
$args = array_merge( $query,
array(
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'featured_project',
'value' => 1, // test if your value is a number or string
//'type' => 'BINARY', //Maybe you should cast the meta value
'compare' => '='
),
),
)
);
$custom_query = new WP_Query( $args ); ?>
?
<?php if ($custom_query->have_posts()) : while ($custom_query->have_posts()) : $custom_query->the_post(); ?>
<?php if ( get_field('featured_project') ) { ?>
也许您还应该在查询中添加orderby(类似'orderby' => ' meta_value_num date'