2012-10-16 4 views
1

"highlight"태그가있는 최신 블로그 게시물 3 개 (제목, 미리보기 이미지, 더 많은 링크 읽기)를 반환하도록 설계된 functions.php에 shortcode를 만들었습니다. ". 내 단축 코드에있는 PHP는 태그 매개 변수를 성공적으로 인식하지만 한 개의 게시물 만 반환합니다.WP_Query 및 posts_per_page는 하나의 게시물 만 반환하는 짧은 코드 (WordPress)

"posts_per_page"매개 변수를 사용하여 반환 할 게시물 수를 정의하고 있습니다. 현재 1, 2 또는 3을 입력하면 간단하게 3 개의 최신 게시물보다는 날짜 순서대로 1, 2 또는 3 번째 게시물을 반환합니다. 나는 실패한 "numberposts"와 "showposts"(시행 착오를 시도했다!).

아무에게도 내가 여기에없는 것을 말해 줄 수 있습니까? 이건 내 functions.php 파일에 있습니다 :

function highlight_posts() { 
    $args = array('tag' => 'highlight' , 'posts_per_page' => 4); 
    $the_query = new WP_Query($args); 
     while ($the_query->have_posts()) : $the_query->the_post(); 
      $return_string = '<div class="blog-post-highlight"><div class="blog-post-img"><a href="'.get_permalink().'">'.get_the_post_thumbnail($page->ID, array(300, 168)).'</a></div><div class="blog-post-content"><h3><a href="'.get_permalink().'">'.get_the_title().'</a></h3><p class="read-more"><a href="'.get_permalink().'">Read More...</a></p></div><div class="clear"></div></div>'; 
     endwhile; 
    wp_reset_postdata(); 
    return $return_string; 
} 

add_shortcode('highlightposts', 'highlight_posts'); 

을 그리고 이것은 [highlightposts]

답변

3

이 시도 삽입하여 WYSIWYG 편집기에서 배포 :

function highlight_posts() { 
    $args = array('tag' => 'highlight' , 'posts_per_page' => 4); 
    $return_string =""; 
    $the_query = new WP_Query($args); 
     while ($the_query->have_posts()) : $the_query->the_post(); 
      $return_string .= '<div class="blog-post-highlight"><div class="blog-post-img"><a href="'.get_permalink().'">'.get_the_post_thumbnail($page->ID, array(300, 168)).'</a></div><div class="blog-post-content"><h3><a href="'.get_permalink().'">'.get_the_title().'</a></h3><p class="read-more"><a href="'.get_permalink().'">Read More...</a></p></div><div class="clear"></div></div>'; 
     endwhile; 
    wp_reset_postdata(); 
    return $return_string; 
} 

add_shortcode('highlightposts', 'highlight_posts'); 
당신은 새로운 가치를 부여했다

을 새 값을 추가하는 대신 $ return_string을 사용하십시오. 그랬는지 확인

+0

전설입니다. 완벽하게 작동했습니다. 고맙습니다. 나는 이것을 커버하는 StackOverflow에 이미 아무것도 찾을 수 없었습니다. 당신의 대답이 다른 사람들에게 도움이되기를 바랍니다 (제목과 설명이 충분하다고 가정 할 때!). –

+0

니스! 다행스럽게 도울 수있어! – CMoreira

관련 문제