2010-08-03 3 views
1

하위 카테고리 (이벤트 개최 도시)별로 검색 할 수있는 이벤트 카테고리가 있습니다. 나는 '미래가 지금이다!' 플러그인을 사용하여 미래의 날짜가 게시 된 게시물을 게시 할 수 있지만 게시물이 만료되면 더 이상 루프/아카이브에 나타나지 않는 페이지 매김 된 템플릿을 설정할 수 있기를 바랍니다.(Wordpress) 아카이브 및 검색 결과에만 향후 게시물 표시

검색 결과에서도 이러한 게시물을 필터링 할 수 있는지 궁금합니다.

이 도움이된다면 이건 내 현재 이벤트 페이지 코드 :

<h2>Upcoming Events</h2> 
     <ul class="posts"> 
      <?php 
      $limit = get_option('posts_per_page'); 
      $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
      query_posts('showposts=' . $limit . '&paged=' . $paged .'&cat=1&order=ASC'); 
      $wp_query->is_archive = true; $wp_query->is_home = false; 
      ?> 
      <?php if (have_posts()) : while (have_posts()) : the_post(); ?> 
       <li class="events_ticker" id="post-<?php the_ID(); ?>"> 
       <span class="left"> 
       <h3><?php the_time('F jS, Y') ?></h3> 
       <p><?php if (strlen($post->post_title) > 25) { echo substr(the_title($before = '', $after = '', FALSE), 0, 25) . '...';} else {the_title();} ?></p> 
       <?php global $more; $more = 0; the_excerpt(); ?> 
       <p><a href="<?php echo get_permalink(); ?>">Read More</a></p> 
       </span> 
        <a href="<?php echo get_permalink(); ?>"><?php if (function_exists("has_post_thumbnail") && has_post_thumbnail()) { the_post_thumbnail(array(143,110), array("class" => "right post_thumbnail")); } ?></a> 
       </li> 
       <img src="<?php bloginfo('stylesheet_directory'); ?>/images/content_breaker_wide.png" alt=" breaker" class="content_breaker" /> 
      <?php endwhile; ?> 
     </ul> 
     <!-- end events loop --> 
     <div class="navigation"> 
      <p class="alignleft"><?php next_posts_link('< Next') ?></p> 
      <p class="alignright"><?php previous_posts_link('Next >') ?></p> 
     </div> 

<?php endif; ?> 

답변

0

나는 "이 날짜까지 모든 게시물"당신이 posts_where_paged 필터를 구현해야합니다 그렇게 말 할 수있는 쉬운 매개 변수가 있다고 생각하지 않습니다. 이 두 가지가 계속 정상적으로 진행될 수 있으므로 !(is_archive() || is_search())을 확인할 수 있습니다. 다른 부분에서는 " AND $wpdb->posts.post_date < NOW()" 또는 그와 비슷한 것을 추가합니다 (그러나 지금 사용하지 마십시오. 그러면 나중에 발생하는 이벤트가 숨겨지기 때문에 사용하지 않을 것입니다).

A similar question was asked on the WordPress Answers Stack Exchange site (2010 년 8 월 20 일까지 비공개 베타 버전이므로 사전 등록하지 않으면 방문 할 수 없습니다.) 당신이하고 싶은 모든이 '쇼 타임'에 대한 별도의 날짜를 추가하는 경우는 정확히 을하는 메타 상자를 추가 쉬울 수도,

-를 사용하여 : 조 호일의 제안은 간단 있었다 당신이 마다 A를 후킹되어야 할 것이다, 그래서 워드 프레스, 그것은 가 미래 게시 날짜가 업데이트 될 때마다 "미래"상태 (I 생각 )로 설정됩니다, 그것은 잠재적으로 문제가 될 수 스푸핑 날짜 게시 소식이 업데이트되어 다시 으로 설정됩니다. 또한 의 내용에 대해 에서 "게시일"을 예약 할 수 있습니다.

meta_key, 및 맞춤 메타 상자를 사용했을 것입니다. 비록 그것 얼마나 복잡한 귀하의 검색어는 그 게시물을 표시에 따라 다릅니다. 당신이 타임 스탬프로 meta_value을 설정하면

, 당신은 여전히 ​​쇼 시간 날짜를 기준으로 주문하거나 선택할 수있는 특정 날짜 이후/ 전 :

$events = get_posts('post_type=events&meta_key=show_time&meta_value=' 
. strtotime('+1 week') . 
'&meta_compare=<&orderby=meta_value'); 

이 모든 "이벤트"를 얻을 것인가 showtime 아니요. 그 다음 주일부터 현재 까지입니다. 위가 검증되지 않은,하지만 해야 일 :

참고 : (이 대답은 그래서 난 그냥 조 말한 다시 게시에 대한 담당자 포인트를 획득하지 않습니다 커뮤니티 위키입니다.)
관련 문제