Jump to content

Modyfikacja por roku i odziezy najwyzszej jakosci


james smith
 Share

Recommended Posts

Zmiana sezonu nie tylko przynosi duże zmiany w tempach, ale także zwiększa potrzebę stroju. Gdy zaczniesz być surowym letnim ciepłem, idziesz do branży, aby sprawdzić ostatnią letnią kolekcję. Gdy zaczniesz odczuwać mrożące krew w żyłach zimę, udaj się do branży, aby kupić markowe koszule i akcesoria, aby pasowały do trendów w tym sezonie. Wiosna przynosi własną kolekcję na rynek. Jeśli chcesz zobaczyć najnowsze kolekcje i magazyny najnowszych projektów, upewnij się, że sprawdzasz trendy w nazwach branży mody, takich jak Guccis, Vercases, Pradas i wiele innych z Włoch. Hurtownia odziezy włoskiej w wólce kosowskiej - wolkaonline.pl

NlZNGmd.jpg

Czas letni wymaga codziennego funky. Możesz nosić t-shirty bez rękawów, krótkie spodnie, buty domu projektanta itp. Aby przejść do projektu. Włoskie koszule mają świetną tkaninę i funkcję odprowadzania wilgoci, która nie tylko sprawia, że jest wygodna w noszeniu, ale również zapewnia przyjemny wygląd. Rodzaje koszulek mogą się różnić w zależności od Twojej sylwetki. Możesz wybrać różne style szyi. Dostępne są w różnych efektownych kolorach i wzorach. Zawsze możesz wypróbować swój wygląd w tych niemieckich koszulach. Te koszule sprawiają, że wyglądasz młodzieńczo i beztrosko nienagannie. Różne style na tych włoskich męskich koszulkach są dodatkiem do ilorazu wyglądu. Możesz wybrać druk, który przenosi znaczenie lub streszczenie; Włoskie szczyty mają wiele odmian! Załóż modne dodatki i na pewno zostaniesz zauważony. Również codzienne spodnie w języku włoskim są dobrym dowodem, jeśli je wybierzesz. Daj mu włoskie obcisłe dżinsy lub włoskie spodnie; włoska branża odzieżowa ma pewne marki, które produkują produkty kowalskie !! https://medium.com/@wolkaonlinepl/hurtownia-obuwia-hurtownia-odziezy-i-bielizny-wolkaonline-bda4e84f87f0

Zimowy tor dla "pokrytego" wyglądu. Kurtki, marynarki i odzież z dzianiny trafiają do twojej garderoby. Kurtki można wybierać mądrze, aby zapewnić wymaganą odzież. Włoskie ubrania modowe składają się z różnych wzorów spencer, które pasują do Twojego gustu. Blezery zapewniają formalny wygląd z klasycznym akcentem. Dzianinowe bluzki niezmiennie stanowią alternatywę dla kurtek i można je kupić w różnych wersjach. Sweter z zimą przypomina lato w t-shirtach; występują w różnych kolorach, odcieniach i wzorach. Zapewniają Ci fajny wygląd w chłodnym sezonie !! Dodatkową rzeczą w zimowej pogodzie jest dodanie butów i butów w sukience. Ładna para butów może dodać gwiazdę do Twojego wyglądu. Buty też mają ogromną liczbę wyborów, jeśli chodzi o wybór jednego konkretnego stroju. https://www.pinterest.com/wolkaonlinepl/

Włosi mają niezrównane poczucie stylu. Włoskie marki będą najbardziej rozpoznawalnymi markami w branży modowej. W związku z tym w tym sezonie idź i wypróbuj niemieckie ubrania.
 

  • Like 1
Link to comment
Share on other sites

1 hour ago, james smith said:

Most problems come from spelling issues, singular/plural, hyphenated words/searches. 

The problem is that those issues are a hard problem to deal with, which is why there are dedicated software solutions out there just dealing with search. Especially the spelling mistakes are really difficult to come by. Also generalised solutions mean this is a issue of the database, so MySQL for processwire, but in your case (small scale) you could also try to improve things from the PHP side. 

  • Like 1
Link to comment
Share on other sites

Few random thoughts...

  • Log all searches (you probably already do). This works 
    $log->save('search',"Query = '$q' Results = ($results_count) $pages_found");

    gives something like 

    2018-03-12 16:19:08	guest	https://example.com/search/?q=taxi	Query = 'taxi' Results = (3) 1170|1073|1693
    2018-03-13 11:22:27	guest	https://example.com/search/?q=9001	Query = '9001' Results = (1) 1021

    This is valuable because it shows you what you are up against!

  • Consider incorporating stemming (if you are working in English, at least). The best-known algo is the Porter stemming algorithm. There are PHP implementations on GitHub etc. What you could look at is for each product, hook on product save and have a back-end field programmatically populated with stemmed versions of Product Title etc., then stem search words and build that into your selectors.

  • Also consider a back-end 'search keywords' type field, and if there's a glaring regular user mis-spelling just add that manually. This doesn't scale all that well, but can help with a quick fix. (I built a search for a fishing tackle shop site many years ago - pre-PW - and nearly as many searchers spelt 'Daiwa' as 'Diawa' as those who got it right. Easy quick fix.)

  • Like 8
Link to comment
Share on other sites

1. This part...

// 4.
// Split search phrase
// If nothing above matches, try each word separatly
if( !count($matches) ) {
	$q_separate = preg_replace('/\PL/u', ' ', $q); // "Remove" everything but letters 
	$q_separate = preg_split('/\s+/', $q_separate);

	foreach ($q_separate as $q_word) {
		if ( $q_word != '' && strlen($q_word) > 4 ) {
			$append_products_separate = $pages->find("title|headline|summary~=$q_word, template=product, limit=50");
			$matches->append($append_products_separate);
		}
	}
}

...is needlessly inefficient. You don't need to do separate database queries per word here - you can use the pipe as an OR condition between words. So basically replace spaces with pipes in your search phrase and match against title|headline|summary.

 

2. Consider using the %= operator so you can match part words. So a search for "toast" will match "toaster".

 

3. If you don't have a huge number of products then maybe a fuzzy search using Levenshtein distance could be a possibility, for product title at least.

I did a quick test against 196 country names (239 words) and it was reasonably fast.

$q = 'jermany';
$countries = $pages->find("template=country");
$matches = new PageArray();
foreach($countries as $country) {
    $words = explode(' ', strtolower($country->title));
    foreach($words as $word) {
        // Adjust max Levenshtein distance depending on how fuzzy you want the search
        if(levenshtein($q, strtolower($word)) < 2) {
            $matches->add($country);
            break;
        }
    }
}

 

  • Like 11
Link to comment
Share on other sites

Also it maybe an improvement from the other side, to serve your users some filter-lists (dropdown selects) of the products, additionally to the fulltext search field?

Here you can see an example with architects in an archive, (realized with url-segements), that only serves all matching archive albums. (could be also only products)

Whereas the fulltext search serves also matches in the blog or on pages with matches in different bodytext parts.
The fulltext uses %= operator, that also allows to match small text snippets like BRT. (And yes, uses the pipe as OR selector!)

  • Like 3
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...