wPHP - wordpress, woocommerce - kodowanie bez wtyczek
WordPress - zakoduj to sam w PHP

Wyszukiwanie postów tylko po tytułach

Grzegorz Chodacki1 kwietnia 2022layout, woocommerceposts_where, wp_query

Temat wydawał się dość prosty, a jednak zajął mi trochę czasu. Wujek Google wcale nie jest tak łaskawy w odpowiedzi na pytanie co zrobić aby wyniki wyszukiwania w wordpress obejmowały jedynie szukanie po tytułach postów (produktów) a nie po całej treści (opisie).

I w tym miejscu anegdota. Dawno temu miałem taką przygodę ze sklepem handlującym artykułami spożywczymi i klient zgłasza, że wyszukiwarka źle działa. Pytam się jak to źle działa? Ano po wpisaniu słowa “ser” wyszukują się wszystkie produkty. I rzeczywiście jak się okazało w opisie każdego produktu widniał akapit “produkt dla koneserów”. Dlatego też czasami przydatne jest ograniczenie wyszukiwania do samych tytułów, czy też nazw produktów.

Z pomocą przychodzi tutaj filtr posts_where pozwalający na modyfikację zapytania. W internecie jest kilka rozwiązań tego tematu, ale większość zawiera błędy. Tutaj działający kod:

add_filter( 'posts_where', 'gc_posts_where', 10, 2 );
function gc_posts_where( $where, $wp_query )
{
 global $wpdb;
 if ( $title = $wp_query->get( 's' ) ) {
 $where .= " AND " . $wpdb->posts . ".post_title LIKE '%" . esc_sql( $wpdb->esc_like( $title ) ) . "%'";
 }
 return $where;
}
Related product – produkty podobne w woocommerce

Related Posts

layout

Related product – produkty podobne w woocommerce

Produkty powiązane w woocommerce to sekcja w większości szablonów, która pobiera produkty z naszego sklepu. Domyślnie mają one te same tagi lub kategorie co przeglądany produkt. Przy dużej ilości produktów w sklepie, a co gorsza dużej ilości kategorii, bardzo losowy dobór produktów podobnych może być dość kłopotliwy. Tym bardziej, że nie możemy ich teoretycznie ustawić […]

optymalizacja, woocommerce

Jak przyspieszyć stronę wyłączając odświeżanie koszyka woocoomerce

Bardzo często zdarza się, że nasza strona z woocommerce działa wolno. Narzędzia do testowania prędkości typu GTMetrix, często pokazują, że wpływ na prędkość ładowania strony może mieć skrypt wc-ajax=get_refreshed_fragments. Generuje on opóźnienia i obciążenie serwera. Do czego jest on potrzebny, czy jest potrzebny i jak go wyłączyć?

layout, woocommerce

Dodanie niestandardowych pól do produktu WooCoomerce

Zagadnienie dotyczy innego podejścia niż przy poprzednim wpisie. Poprzednio dla produktów prostych i produktów z wariantami wyliczana była cena za 1m2 na podstawie wymiarów produktu po czym wyświetlana na karcie produktu. Tym razem dodamy dodatkowe pola od strony zaplecza, tj. cenę (pole input) oraz jednostkę (pole wyboru select). Trudność polega na tym, że w zależności […]

Ostatnie wpisy

  • Wyszukiwanie postów tylko po tytułach
  • Related product – produkty podobne w woocommerce
  • Jak przyspieszyć stronę wyłączając odświeżanie koszyka woocoomerce
  • Dodanie niestandardowych pól do produktu WooCoomerce
  • Wyliczenie ceny produktu za 1m2 dla danej kategorii produktów

Najnowsze komentarze

    Archiwa

    • kwiecień 2022
    • marzec 2022
    • październik 2021
    • wrzesień 2021
    • kwiecień 2021
    • marzec 2021
    • grudzień 2020
    • lipiec 2020
    • marzec 2020
    • luty 2020
    • styczeń 2020
    • maj 2019
    • luty 2019
    • listopad 2018
    • sierpień 2018
    • czerwiec 2018
    • maj 2018
    • marzec 2018
    • luty 2018
    • styczeń 2018

    Kategorie

    • dla admina
    • layout
    • optymalizacja
    • woocommerce

    Meta

    • Zaloguj się
    • Kanał wpisów
    • Kanał komentarzy
    • WordPress.org
    Strony na Wordpress - uKONTENTowani.pl
    TO NIE JEST STRONA DLA INSTALATORÓW WTYCZEK