Wordpress:每24小时显示3篇自定义帖子类型的随机帖子
我已经看过很多关于如何做到这一点的文章,但是经过几个小时的尝试,我似乎没有接近这个梦想 基本上,我想使用wordpress瞬态获得3篇随机帖子,并在我的主页上的“特色”模块中显示它们24小时。这3篇文章需要是本地和自定义文章类型的混合 到目前为止,我掌握的代码是:Wordpress:每24小时显示3篇自定义帖子类型的随机帖子,wordpress,transient,Wordpress,Transient,我已经看过很多关于如何做到这一点的文章,但是经过几个小时的尝试,我似乎没有接近这个梦想 基本上,我想使用wordpress瞬态获得3篇随机帖子,并在我的主页上的“特色”模块中显示它们24小时。这3篇文章需要是本地和自定义文章类型的混合 到目前为止,我掌握的代码是: <div class="container"> <div class="featured-wrapper"> <div class="section-title">featured<
<div class="container">
<div class="featured-wrapper">
<div class="section-title">featured</div>
<?php
if ( ( $my_query = get_transient('my_query_cached') ) === false ) :
global $wp_query;
$args = array_merge( $wp_query->query, array(
'post_type' => array('post', 'recipe'),
'posts_per_page' => 3,
'orderby' => 'rand'
)
);
$my_query = new WP_Query($args);
set_transient('my_query_cached', $my_query, 24 * HOUR_IN_SECONDS);
endif;
?>
<?php if ( $my_query->have_posts() ) :
while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
<div class="card-wrapper">
<a href="<?php the_permalink(); ?>">
<div class="card-img">
<img src="<?php the_post_thumbnail(); ?>"/>
</div>
</a>
<div class="card-cut"></div>
<div class="card-content">
<a href="category.html"><span class="card-category">treats</span></a>
<h1><a href="recipe.html"><?php echo get_the_title(); ?></a></h1>
</div>
</div><!--END card wrapper 1-->
<?php endwhile; wp_reset_postdata(); wp_reset_query(); ?>
<?php else: ?>
<div>
<h1>Sorry...</h1>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
</div>
<?php endif; ?>
</div><!-- END featured wrapper-->
作为特色的
很抱歉
目前,这段代码正在返回数据库中的所有帖子,所以我相信这段代码的第一部分有问题,但我似乎无法将我的手指放进去
非常感谢您的帮助
更新
固定的。上面的代码实际上很好,但值得记住的是,一旦页面运行一次,任何编辑都不会显示,因为瞬态已经设置好了。值得将刷新率设置为1*MINUTE\u IN_SECONDS进行测试。我将您的代码粘贴到我的一个网站的frontpage.php中,它立刻就可以正常工作了。将瞬态失效时间更改为5秒或10秒以进行测试。感谢您的尝试。我刚刚试着将其设置为5*分(秒),但文章不会更新,它们只是坚持相同的3.5秒。修复-谢谢!在上面的评论中,我的tansient设置不正确。我已经更新了原来的问题。