검색 결과 수 표시


13

지금까지 나는 누군가가 검색하고 그 수를 표시 할 때 결과 수를 얻기 위해 아래 코드를 사용했습니다.

<?php /* Search Count */ $allsearch =& new WP_Query("s=$s&showposts=-1"); $count = $allsearch->post_count; echo $count . ' '; wp_reset_query(); ?>

그러나 이것은 유효한 코드처럼 보이지 않습니다. 아래 오류가 표시됩니다.

더 이상 사용되지 않음 : 참조로 new의 반환 값을 할당하는 것은 더 이상 사용되지 않습니다

누구든지 검색 수를 얻는 적절한 방법을 제안 할 수 있습니까? 위의 코드는 조건문 내 테마의 index.php 파일 제목에 배치되어 사용자가있는 페이지 유형에 따라 다른 제목을 표시합니다.


allsearch = new WP_Query더 이상 사용되지 않는 통지를 피하기 위해 '&'없이
— gmazzap

답변:


31

검색 템플릿 내에있는 경우 즉, 검색 쿼리가 기본 쿼리입니다. 그런 다음 $wp_query추가 쿼리를 실행하지 않고도 글로벌 검색 결과를 얻을 수 있습니다.

global $wp_query;
echo $wp_query->found_posts.' results found.';

편집 1

검색 컨텍스트를 계산해야하는 경우 두 기술을 결합하여 효율적인 결과를 얻을 수 있습니다. 모든 게시물을 가져 오지는 않지만 검색 횟수를 얻을 수 있습니다.

$allsearch = new WP_Query("s=$s&showposts=0"); 
echo $allsearch ->found_posts.' results found.';

오류

발생하는 오류에 대해서는 여기에 있습니다.

$allsearch =& new WP_Query("s=$s&showposts=-1");

등호 옆의 "&"를 제거하여 오류를 제거하십시오. 이렇게 보일 것입니다

$allsearch = new WP_Query("s=$s&showposts=-1");

1
와우 감사합니다. 나는 이것을 시도하고 '<? php / * Search Count * / $ count = $ wp_query-> post_count; echo $ count. ''; wp_reset_query (); ?> '
— Harish Chouhan

$ allsearch = new WP_Query ( "s = $ s & showposts = 0"); echo $ allsearch-> found_posts. ' 결과를 찾았습니다. '; 총계가 아닌 현재 페이지 수만 표시합니다. 예를 들어 20 개의 게시물이 있으면 10 개만 있어야합니다.
— Suyash Jain
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.