ارزدیجیتال
حراجی دامنه های ویژهمشاهده





پلتفرم رپورتاژ آگهی و بک لینک تسمینو
تبلیغات
تبلیغات تبلیغات
تبلیغات ژاکت, مرجع خرید قالب و افزونه وردپرسی اورجینال

۸ هک کاربردی برای بهبود جستجوی وردپرس

سئو , مقالات,آموزش,ترفند , وردپرس

قسمت جستجوی وردپرس همیشه یک نقطه ضعف برای این سیستم بزرگ بوده ، امروز تصمیم گرفتیم چند هک برای بهبود موتور جستجوی وردپرس به شما آموزش بدیم.

۸ هک کاربردی برای بهبود جستجوی وردپرس

1.ریدایرکت کردن خودکار در صورتی که فقط یک مطلب یافت شد!

اولین کد رو با یک Snippet کاربردی شروع می کنیم ، فرض کنید کاربر شما برای متنی جستجو کند که فقط یک نتیجه برای آن یافت شود. بهتر نیست به طور خودکار به پست یافت شده بره؟؟

کدهای زیر را در functions.php قالبتان قرار دهید (اگر قالبتان functions.php ندارد یکی بسازید)

add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
    if (is_search()) {
        global $wp_query;
        if ($wp_query->post_count == 1) {
            wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
        }
    }
}

 

2. نمایش تعداد نتایج یافت شده!

شاید بخواهید در هر جستجو تعداد نتایج یافت شده را نشان دهید :

فایل search.php را باز کنید و دنبال چیزی شبیه به این بگردید

<h2 class="pagetitle">نتایج جستجو</h2>

و آن را به قطعه کد زیر جایگزین کنید

<h2 class="pagetitle">نتایج جستجو برای <?php
/* Search Count */
$allsearch = &new WP_Query("s=$s&showposts=-1");
$key = wp_specialchars($s, 1);
$count = $allsearch->post_count; _e('');
_e('<span class="search-terms">');
echo $key; _e('</span>'); _e(' — ');
echo $count . ' '; _e('مطلب');

wp_reset_query(); ?></h2>

 

 ۳٫ هایلایت کردن متن های جستجو شده!

با این کد میتونید بخش جستجوی وبلاگتان را کاربرپسندتر کنید ، برای این کار فایل search.php را باز کنید و تابع the_title() را پیدا کنید و آن را با کد زیر جایگزین کنید

echo $title;

حالا دقیقا قبل از خطی که ویرایش کردید قطعه کد زیر را اضافه کنید

<?php
    $title     = get_the_title();
    $keys= explode(" ",$s);
    $title     = preg_replace('/('.implode('|', $keys) .')/iu',
        '<strong class="search-excerpt">\0</strong>',
        $title);
?>

حالا فایل search.php را ذخیره کنید و فایل style.css را باز کنید و کد زیر را اضافه کنید

strong.search-excerpt { background: yellow; }

 

 ۴٫ محدود کردن تعداد نتایج در هر صفحه

به طور پیش فرض ، وردپرس در هر صفحه ۱۰ نتیجه را نشان می دهد اگر میخواهید این مقدار را تغییر دهید کدهای زیر را به functions.php اضافه کنید

function limit_posts_per_search_page() {
    if ( is_search() )
        set_query_var('posts_per_archive_page', 20);
}

add_filter('pre_get_posts', 'limit_posts_per_search_page');

 

5. جستجو بین نوع خاصی از پست!

اگر میخواهید که جستجو فقط بین نوع خاصی از پست صورت گیرد کد زیر را به functions.php اضافه کنید

در خط ۴ میتوانید نوع را تغییر دهید

function SearchFilter($query) {
  if ($query->is_search) {
    // Insert the specific post type you want to search
    $query->set('post_type', 'feeds');
  }
  return $query;
}

// This filter will jump into the loop and arrange our results before they're returned
add_filter('pre_get_posts','SearchFilter');

 

6. جستجو بین یک “دسته” خاص

این امکان وجود دارد که نتایج جستجو را فقط به یک دسته خاص محدود کرد برای این کار کد زیر با search.php اضافه کنید

و در خط سوم آی دی دسته هایی که میخواهید جستجو در آنها انجام شود را بنویسید ( آی دی ها را با کاما , جدا کنید)

<?php if( is_search() )  :
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts("s=$s&paged=$paged&cat=1,2,3");
endif; ?>

 

7. نامحدود کردن تعداد نتایج جستجو

شاید صفحه صفحه کردن نتایج جستجو کمی آزاردهنده به نظر برسد و شما بخواهید تمامی نتایج را در یک صفحه نشان دهید برای این کار کافیست کد زیر را در search.php پیدا کنید

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

و با این کد جایگزین کنید

<?php $posts=query_posts($query_string . '&posts_per_page=-1'); ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

 

8. خاموش کردن امکان جستجو

شاید این که موتور جستجوی وردپرس را به طور کلی خاموش کنید چیز خوبی نباشد اما برای اینکار کافیست کد زیر را به functions.php اضافه کنید

function fb_filter_query( $query, $error = true ) {
    if ( is_search() ) {
        $query->is_search = false;
        $query->query_vars[s] = false;
        $query->query[s] = false;

        // to error
        if ( $error == true )
            $query->is_404 = true;
    }
}

add_action( 'parse_query', 'fb_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

این هم از آموزش امروز ، موفق باشید.

این مقاله چقدر براتون مفید بود؟

از ۱ تا ۵ امتیاز بدید.

میانگین رتبه 0 / 5. تعداد رای : 0

تا حالا کسی رای نداده! اولین نفر شما باشید.

دانلود

هاست ارزان، لایت اسپید، سرور مجازی منطبق با اسکریپت های 20script کلیک کنید >

خرید ارز
مطلب مفیدی بود ؟
نویسنده : تیم محتوای 20اسکریپت 4 سئو , مقالات,آموزش,ترفند , وردپرس
لینک کوتاه مطلب : https://www.20script.ir/?p=358
کلمات کلیدی پست :
مطالب مرتبط
25,647جستجو ای‌جکس ووکامرس با افزونه فارسی فیلتر محصولات تاریخ : 2014/10/9
7,828آموزش حذف سایت از گوگل و اینترنت تاریخ : 2019/09/9
12,579نمایش وضعیت مدیر در اسکایپ تاریخ : 2013/10/20
9,449افزونه وردپرسی مقایسه و بررسی Reviewer نسخه 3.10.0 تاریخ : 2016/02/23
17,382دانلود قالب دیزاینر نسخه سال 95 برای وردپرس تاریخ : 2016/04/1
12,208نحوه راست چین و چپ چین کردن در ووکامرس با افزونه WooCommerce RTL تاریخ : 2018/11/20
10,150دانلود قالب وردپرس رستوران داری Resca نسخه 1.11 تاریخ : 2016/02/21
22,330دانلود قالب وردپرس اندروید سون تاریخ : 2015/02/27
10,703افزونه ایجاد فرم نظرسنجی در وردپرس WP Customer Reviews تاریخ : 2016/03/2
9,004مدیریت Heartbeat وردپرس با افزونه Heartbeat Control تاریخ : 2019/04/8
6,852ویرایش دسته جمعی نوشته ها در وردپرس تاریخ : 2019/08/10
8,247نحوه تغییر رنگ نوار آدرس مرورگرهای موبایل برای هماهنگی با رنگ وردپرس تاریخ : 2016/03/30
برخی از قالب های وبلاگ - بیست اسکریپت
قالب عشق بین انگشت هاقالب عشق بین انگشت ها
قالب دخترونه و آرایشقالب دخترونه و آرایش
قالب زیبای ماشینقالب زیبای ماشین
قالب فانتزی و طنز چِشمقالب فانتزی و طنز چِشم
قالب دختر رویاییقالب دختر رویایی
قالب وبلاگ دکوراسیونقالب وبلاگ دکوراسیون
قالب وبلاگ کلبه و درختقالب وبلاگ کلبه و درخت
قالب دختر زیباقالب دختر زیبا
قالب پسرونه غمگینقالب پسرونه غمگین
قالب عاشقانه قلبقالب عاشقانه قلب
بیست اسکریپت
اسکریپت
profile
sourceforge
profile webmaster
profile check
checker list
checker
checker
upload file