2012-04-16 1 views
0

나는이 wp 쿼리를 어떻게해서 든 매월 한 게시물을 반환하고 현재 설치에서 모든 달을 표시하려고합니다. 게시물이 무작위 인 경우 그것은 굉장합니다. 따라서 게시물은 각 페이지를 다시로드 할 때마다 다릅니다.DSC 순서로 매달 한 임의의 게시물을 표시하는 wp 쿼리


<?php $arhiveGrid = new WP_Query(array(

    'post_type'  => 'page'    
    'order'   => 'DESC', 
    'orderby'  => 'date', 
    'posts_per_page' => 99999 

)); ?> 

<?php if ($arhiveGrid->have_posts()) : while ($arhiveGrid->have_posts()) : $arhiveGrid->the_post(); 

    $retina = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumb-retina'); ?> 

    <a class="arhive-grid" href="<?php bloginfo('url'); the_time('/Y/m/'); ?>" style="background-image:<?php echo $retina[0]; ?>;"> 

     <span><?php the_time('F Y') ?></span> 

    </a> 

<?php endwhile; unset($arhiveGrid); endif; ?> 

은 분명히이 쿼리 내 설치에 모든 것들을 돌아갑니다 ... 내가 지금까지 가지고 올 한 내용을 참조하십시오. 위의 코드는 내 아카이브 페이지 (archive.php 아님)에 대한 내 아카이브 그리드를 작성하는 데 사용할 것입니다.

그리드는 각 달의 이미지를 배경으로 사용하고 월 및 연도를 텍스트 오버레이로 표시해야하며 올바른 월을 연결해야합니다.

위의 쿼리를 매월 임의 게시물에 적용 할 수있는 경우에만 코드가 작동합니다.

도움이나 조언을 보내 주셔서 감사합니다.

답변

-1

이 쿼리는 임의의 게시물을 표시합니다. 당신은 'numberposts'게시물

<?php 
$args = array('numberposts' => 1, 'orderby' => 'rand'); 
$rand_posts = get_posts($args); 
?> 

편집의 번호를 변경할 수 있습니다 : 당신은 시간 범위에서와에서 임의의 게시물을 얻고 싶은 경우에, 당신은 사용자 지정 쿼리를 사용해야합니다.

$wpdb->query("SELECT * FROM $wpdb->posts where post_data >= '2012-03-01' AND post_data < '2012-03-31' ORDER BY RAND() limit 1 "); 

이 쿼리는 이제 당신은 당신이 원하는 매월 무작위 게시물을 얻기 위해 루프에서이 쿼리를 사용할 필요가 당신에게

2012 년 3 월 달에 게시 된 임의의 게시물을 제공 할 것입니다.

+0

안녕하세요. 나는 혼란 스럽다. 매월 무작위로 게시 할 것인가? – Joshc

+0

아니요, 게시 된 게시물 모음 전체에서 하나의 임의 게시물을 반환합니다. 매월 한 개의 무작위 게시물을 얻으려면 이것을 연장해야합니다. – Sudar

+0

감사합니다 Sudar - 광범위한 비트가 내가 붙어 버린 곳입니다, 나는 그것을 어떻게 할 생각이 없습니다. – Joshc

관련 문제