Відобразити кількість результатів пошуку


13

До цих пір я використовував код нижче, щоб отримати кількість результатів, коли хтось шукає, і відобразити цю кількість.

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

Але це не здається дійсним кодом. Нижче показано помилку:

Застаріле: присвоєння значення повернення нового за посиланням застаріле

Може хто-небудь, будь ласка, підкаже правильний спосіб, коли я отримую підрахунок пошуку. Вищевказаний код розміщується у заголовку мого файлу index.php теми в умовному заяві для відображення різних заголовків залежно від типу сторінки, на якій користувач.


allsearch = new WP_Queryбез "&", щоб уникнути застарілого повідомлення.
gmazzap

Відповіді:


32

Якщо ви знаходитесь в шаблоні пошуку, тобто пошуковий запит - ваш основний запит. Тоді ви зможете отримувати результати пошуку з глобальних даних, $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 / * Кількість пошуку * / $ count = $ wp_query-> post_count; echo $ count. ''; wp_reset_query (); ?> '
Харіш Чухан

Зробити ваш $ allsearch = new WP_Query ("s = $ s & showposts = 0"); echo $ allsearch -> found_posts. ' знайдені результати. '; відображатиметься лише кількість поточних сторінок, а не загальна кількість. Наприклад, це буде лише 10, якщо також буде 20 постів.
Suyash Jain
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.