2014-12-13 4 views
0

쉼표로 구분 된 글 머리 기호 목록을 입력하여 Wordpress에서 맞춤형 게시물 집합을 표시하는 사용자 정의 위젯을 작성하고 있습니다. 게시물을 검색해야하는 PHP는 다음과 같습니다.Wordpress에서 게시물 집합 검색

<pre> 
if (have_posts()) : while (have_posts()) : the_post(); 
    $postid = get_the_ID(); 
    if (strpos($instance['posts_ids'], (string)$postid) !== false): 
    show the post 
</pre> 

불행히도, 이것은 항상 작동하지 않습니다. 내 ID 목록에 ID # 12497이 포함되어있는 경우 해당 게시물을 검색하지만 ID # 249 인 게시물을 검색 할 수도 있습니다. 이는 문자열이 일치하기 때문입니다.

제안 사항?

감사 JA

답변

0

당신은 그렇게 성공적으로 문자열의 위치를 ​​찾을 수 없습니다. 엄격 모드에서는 폭발 + in_array 만 사용하십시오.

if (have_posts()) : while (have_posts()) : the_post(); 

    $postid = get_the_ID(); 
    $ids = explode($instance['posts_ids'], ','); 

    if (in_array($ids, $postid, true) !== false){ 
    [...] 
    } 
} 
+0

작동하지 않았습니다. 블로그의 모든 게시물을 반환했습니다. – Jay

+0

in_array를 사용하여 작동하도록 만들었습니다. 팁 주셔서 감사합니다, 그것은 올바른 경로에 나를 넣어 – Jay

+0

수정, 당신은 환영합니다. – merlin

관련 문제