2011-04-26 6 views
0

이것은 WordPress의 질문입니다. 나는 나의 내부 페이지 템플릿 내 홈 페이지에서 잘 작동 코드의 비트를 사용하는 것을 시도하고있다 :Wordpress post-> ID 문제

query_posts('cat=4'); 
    // The Loop 
    echo '<div id="cal_details"><ul>'; 
    while (have_posts()) : the_post(); 
     $cal_date_j = date('j', intval(get_post_meta($post->ID, 'date_value', true))); 
     $cal_date_n = date('n', intval(get_post_meta($post->ID, 'date_value', true))); 
      $my_array[] = date('j, n', intval(get_post_meta($post->ID, 'date_value', true))); 


      $issetdate = get_post_meta($post->ID, 'date_value', true); 

      if (isset($issetdate)) { 
      echo '<li class="cal_event_li list_item_' . $cal_date_j . '_' . $cal_date_n . '">'; 
      echo '<a href="' . get_permalink() . '">'; 
      the_title();       
       echo '</a></li>'; 
      } 
    endwhile; 
    echo '</ul></div>'; 

그러나,이 내부-페이지에 작동하지 않습니다. 모든 제목 링크가 올바르게 출력되고 있지만 get_post_meta 부분이 올바르게 인쇄되지 않습니다.

목록 항목 나는 $ 포스트> ID 그러나 여기 세드릭 임 확실하지를 사용하도록 시도하는 방식에 어떤 문제가 아마 있다고 생각 <li class="cal_event_li list_item_1_1">

같은 모든 디스플레이 뭔가. 어떤 아이디어?

답변

1

같은 일이 query_posts 당신은 post_meta를 얻을 수 global $post를 호출해야합니다. 하나의 카테고리 만 호출하는 경우 왜 아카이브 템플릿을 사용하지 않습니까? 당신이 query_posts는 등 플러그인, 사이드 바는 여전히 조건문 등을위한 루프와 상호 작용할 수 있도록 afterwords 쿼리를 다시 확인 사용하려고하는 경우 또한

..

global %post; 
query_posts('cat=4'); 
    // The Loop 
    //more stuff 
endwhile; 
wp_reset_query(); 
+0

코드는 플러그인입니다 사이드 바의 캘린더에 날짜가 표시되므로 아카이브 페이지를 사용할 수 없습니다. – Thomas

-1

$ post-> ID를 내부 페이지의 the_ID()로 바꾸어보세요. 사용이

query_posts('cat=4'); 
// The Loop 
echo '<div id="cal_details"><ul>'; 
while (have_posts()) : the_post(); 
    $cal_date_j = date('j', intval(get_post_meta(the_ID(), 'date_value', true))); 
    $cal_date_n = date('n', intval(get_post_meta(the_ID(), 'date_value', true))); 
     $my_array[] = date('j, n', intval(get_post_meta(the_ID(), 'date_value', true))); 


     $issetdate = get_post_meta(the_id(), 'date_value', true); 

     if (isset($issetdate)) { 
     echo '<li class="cal_event_li list_item_' . $cal_date_j . '_' . $cal_date_n . '">'; 
     echo '<a href="' . get_permalink() . '">'; 
     the_title();       
      echo '</a></li>'; 
     } 
endwhile; 
echo '</ul></div>';