در وردپرس، به طور پیشفرض نتایج جستجو شامل پستهایی میشود که عبارت جستجو شده در هر قسمت از محتوا یا عنوان آنها قرار دارد. اما گاهی اوقات ممکن است بخواهید نتایج جستجو تنها صفحاتی را نشان دهند که عبارت جستجو شده دقیقاً در عنوان و تایتل آن ها وجود داشته باشد. در این مقاله، با یک کد ساده به شما نشان میدهیم که چطور این کار را انجام دهید.
نمایش نتایج جستجو وردپرس فقط با کلمات تایتل
برای اینکه فقط صفحاتی که عبارت جستجو شده دقیقاً در عنوان آنها وجود دارد نمایش داده شوند، ما نیاز داریم تا کد جستجو را تغییر دهیم. با استفاده از کدی که در ادامه آمده، شما میتوانید جستجو را دقیقتر کنید و فقط نتایج مرتبط با عنوان پستها را ببینید.
کد PHP برای جستجوی دقیق بر اساس عنوان:
کد زیر را در فایل functions.php قالب خود قرار دهید:
/**
* @snippet نمایش نتایج جستجوی وردپرس فقط با عنوان
* @author Mohammad Rahimi , https://t.me/MohammadRahimi
* @community https://www.mihantheme.ir/
*/
function wpb_search_by_exact_title( $search, $wp_query ) {
global $wpdb;
if ( $wp_query->is_search && !is_admin() ) {
$search_term = $wp_query->get('s');
if ( ! empty( $search_term ) ) {
$search = $wpdb->prepare(
" AND {$wpdb->posts}.post_title REGEXP %s",
'[[:<:]]' . $search_term . '[[:>:]]'
);
}
}
return $search;
}
add_filter( 'posts_search', 'wpb_search_by_exact_title', 10, 2 );نحوه استفاده از کد:
- افزودن کد به functions.php: کد بالا را در فایل functions.php قالب خود قرار دهید.
- ذخیره تغییرات: پس از اضافه کردن کد، تغییرات را ذخیره کنید.
- آزمایش جستجو: حالا میتوانید جستجو را امتحان کنید. خواهید دید که فقط پستهایی نمایش داده میشوند که عبارت جستجو شده دقیقاً در عنوان آنها وجود داشته باشد. نتیجه:
بعد از اعمال این تغییرات، جستجو در سایت شما دقیقتر میشود و فقط نتایج مربوط به عنوانهایی که عبارت جستجو شده را بهطور کامل دارند، نمایش داده میشود. این کار به کاربران کمک میکند تا نتایج مرتبطتر و دقیقتری پیدا کنند.
اگر نمیدانید چگونه کدهای php را به فایل فانشن قالب خود اضافه کنید ، آموزش افزودن کدهای PHP سفارشی به المنتور را ببینید.
این کد فقط برای جستجوهای معمولی در سایت است. اگر از جستجوهای Ajax یا ابزارهای خاص دیگری استفاده میکنید، ممکن است نیاز به تغییرات بیشتری داشته باشید.
نتیجهگیری:
با استفاده از این روش، میتوانید جستجو در سایت وردپرسی خود را دقیقتر کنید و تجربه بهتری برای کاربران فراهم آورید.
اگر نیاز به تغییرات بیشتر دارید، میتوانید این کد را طوری تنظیم کنید که جستجو شامل بخشهای دیگری از سایت مانند محتوا یا برچسبها هم بشود.
