2011-07-27 4 views
0

이것이 이것을 처리하는 가장 좋은 방법인지 확실하지 않지만 루프에서 스틱 게시물을 제거해야 할 필요가 있습니다. 첫 페이지에 표시하려면 스티커가 필요하지만 끝없는 목록을 사용합니다. 두 번 나타나기를 원하지 않았습니다. 이 작업은 가능하지만 index.php 파일을 편집하여 조금 성숙한 느낌이 들었습니다 ... 다른 생각은 없습니까?루프에서 wordpress 스티커 포스트를 제거하십시오

//Get the current page number 
$url_args=explode('/',trim($_SERVER['REQUEST_URI'],'/')); 
$page_number=array_pop($url_args); 

$sticky=get_option('sticky_posts'); 

//if no page number, we are on the home page, so stickies are ok 
$print_it=($page_number=='')?true:(in_array(get_the_ID()*1,$sticky)?false:true); 

if 문을 경우 쉽게 읽을 수 :

if($page_number=='' || !in_array(get_the_ID(),$sticky)) $print_it=true; 
else $print_it=false; 

답변

1

첫째, 나는 현재 페이지를 설정하는 $page_number = (get_query_var('paged')) ? get_query_var('paged') : 1을 사용합니다.

나는 대해 조금 혼란 스러워요 당신의 문 (안 쉬운 읽을!)하지만이 기능은 읽고 유지하기 위해 좀 더 쉽게 생각하면 중첩 :

$print_it=print_it(); 

function print_it(){ 
if($page_number<=1){ 
    if (!in_array(get_the_ID(),$sticky){ 
    return true; 
    } 
return false; 
} 
} 
+0

이 끈적 게시물에 숨 깁니다 홈 페이지에 ... – Trey

+0

사실, 그 점은'get_query_var'을 사용하고 있었지만 그렇게해야합니다. 이것은 퍼머 링크 구조 변경에 유연 할 것이고 읽기가 더 쉽습니다. –

관련 문제