WooCommerce Sadece Ürün Adına Göre Arama Nasıl Yapılır?

Herkese Selamlar, Woocommerce üzerinde arama kullandığımızda genel olarak ürünün açıklaması hatta ürünün görselindeki alt değerlerine kadar arama yapabiliyor, buda son kullanıcının karşısına arama sonuçlarında anlamsız ürünler çıkmasını sağlıyor. Bu yüzden bu konuda en verimli yöntem aramayı yalnızca ürün adıyla kısıtlamak.

Aşağıdaki kod yardımıyla bunu kolayca yapabilirsiniz;

// Search titles only 
function __search_by_title_only( $search, $wp_query )
{
    global $wpdb;
    if(empty($search)) {
        return $search; // skip processing - no search term in query
    }
    $q = $wp_query->query_vars;
    $n = !empty($q['exact']) ? '' : '%';
    $search =
    $searchand = '';
    foreach ((array)$q['search_terms'] as $term) {
        $term = esc_sql($wpdb->esc_like($term));
        $search .= "{$searchand}($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')";
        $searchand = ' AND ';
    }
    if (!empty($search)) {
        $search = " AND ({$search}) ";
        if (!is_user_logged_in())
            $search .= " AND ($wpdb->posts.post_password = '') ";
    }
    return $search;
}
add_filter('posts_search', '__search_by_title_only', 500, 2);

Snippets eklentisi ile kod parçacığını dahil edebilirsiniz.

1 Beğeni