이 작업을 수행하는 방법에 대해 많은 기사를 보았지만 과도를 사용하여이를 달성하기 위해 많은 노력을 기울였습니다. 그 꿈!Wordpress : 24 시간마다 맞춤 게시물 유형의 3 개의 임의 게시물을 표시합니다.
기본적으로 3 개의 임의 게시물을 가져와 내 홈페이지에서 24 시간 동안 '추천'모듈에 표시하려면 Wordpress Transients를 사용하고 싶습니다. 3 개의 게시물은 기본 게시물 유형과 맞춤 게시물 유형을 혼합해야합니다.
내가 지금까지 가지고있는 코드는 다음과 같습니다
현재이 코드는 그래서이의 첫 번째 섹션에 문제가있다 생각하지만 내 손가락을 넣어 수가 없어 데이터베이스의 모든 게시물을 반환<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-->
그 안에.
엄청난 도움을 받으시기 위해 미리 감사드립니다.
UPDATE는
를 수정했습니다. 위의 코드는 실제로는 괜찮지 만 일시적으로 이미 설정된대로 페이지가 한 번 실행되면 수정 사항이 표시되지 않습니다. 테스트를 위해 새로 고침 빈도를 1 * MINUTE_IN_SECONDS (으)로 설정하는 것이 좋습니다.
사용해 주셔서 감사합니다. 방금 5 * MINUTE_IN_SECONDS로 설정하려고 시도했지만 기사가 업데이트되지 않고 그대로 3에 고정되어 있습니다. –
FIXED - 고마워요! 나는 위의 코멘트에서 잘못 설정했다. 원래 질문을 업데이트했습니다. –