我有WordPress帖子,结合高级自定义字段和FacetWP进行过滤。
WordPress有一个选项可以使帖子变粘,我这样做了,但什么也没发生,所以我尝试将我的数组改为:
return array(
\'post_type\' => \'post\',
\'post_status\' => \'publish\',
\'posts_per_page\' => 10,
\'cat\' => \'1,11\',
\'post__in\' => get_option( \'sticky_posts\' )
);
但这只会返回粘性帖子,不会返回其他帖子。
我只想在所有结果的顶部添加一个粘滞项,有人知道我如何才能让它工作吗?
EDIT
对不起,如果我不太清楚的话。我正在制作一个带有FacetWP过滤器的空缺页面,但我希望可以选择制作一个或多个特色或赞助的空缺。你得到了WordPress的标准粘性功能,我也试过了,但这行不通。
是否可以创建一个高级自定义字段复选框,您可以在其中选中或取消选中“特色”字段,并将其添加到我的循环中,使特色文章始终位于顶部?
这是迄今为止我在FacetWP中的循环:
<?php while ( have_posts()): the_post();?>
<div class="vacature-block">
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<div class="vacature-data">
<div id="vacaturedatum"><?php echo get_the_date();?>
</div>
<div id="vacature" style="border: 1px #ededed solid;padding: 20px 10px 10px 10px;margin-bottom: 30px; border-radius: 5px;">
<div id="vacaturetitel"><h2><?php the_title();?></h2></div>
<?php if ( in_category( \'vacatures\')) {
$werkregio=get_field( "werkregio");
$aantal_uur=get_field( "aantal_uur");
if( $werkregio) {
echo \'<div id="vacaturemeta"><i class="fa fa-map-marker-alt" aria-hidden="true" style="margin-right:5px"></i>\' . $werkregio . \'</div>\';
}
else {}
if( $aantal_uur) {
echo \'<div id="vacaturemeta"><i class="fa fa-clock-o" aria-hidden="true" style="margin-right:5px"></i>\' . $aantal_uur . \' lesuren</div>\';
}
else {}
}
if ( in_category( \'vervuld\')) {
echo \'<div id="vacaturevervuld">Vervuld</div>\';
}
?>
<div id="vacaturetekst"><?php the_excerpt();?></div>
</div>
</div>
</a>
</div> <?php endwhile;?>
我已经在Google和FacetWP的支持上搜索过了,但没有找到可以开始的东西。
SO网友:user2812779
好吧,我自己想出来的。所以也许我可以帮助别人解决同样的问题。
我创建了一个名为“特色”的自定义字段TRUE/FALSE。
在facet WP中,我创建了此查询:
<?php
return array(
\'post_type\' => \'custom_post_type\',
\'post_status\' => \'publish\',
\'meta_query\' => array(
\'is_featured\' => array(
\'key\' => \'featured\',
\'compare\' => \'EXISTS\'
)
),
\'orderby\' => array(
\'is_featured\' => \'DESC\'
)
);
在FacetWP中,我对特色div使用了一个简单的if语句:
<?php if ( get_field( \'featured\' ) ): ?>
<div class="default-class featured">
<?php else: ?>
<div class="default-class">
<?php endif; ?>
也许这不是最好的方法,但对我来说很有效。