Mam pola tytułu (varchar), opisu (tekst), słów kluczowych (varchar) w mojej tabeli mysql.
Zachowałem pole słów kluczowych, ponieważ myślałem, że będę wyszukiwać tylko w tym polu. Ale teraz muszę przeszukać wszystkie trzy pola. więc dla słów kluczowych „słowo1 słowo2 słowo3” moje zapytanie brzmi
WYBIERZ * Z myTable GDZIE (nazwa JAK "%word1%" LUB opis JAK "%word1%" LUB słowa kluczowe JAK "%word1%" LUB nazwa JAK "%word2%" LUB opis JAK "%word2%" LUB słowa kluczowe JAK "% słowo2%” LUB nazwa JAK „%word3%” LUB opis JAK „%word3%” LUB słowa kluczowe JAK „%word3%”) ORAZ status = „aktywny”
Wygląda trochę niechlujnie, ale to działa. Ale teraz muszę zaimplementować wyszukiwanie synonimów. więc dla danego słowa, zakładając, że dostępnych jest kilka synonimów, to zapytanie staje się bardziej nieuporządkowane, gdy przeglądam wszystkie słowa. Ponieważ wymagania stają się coraz wyraźniejsze, będę musiał dołączyć tę tabelę myTable również do innych tabel.
- Czy możesz mi polecić jakąś inną metodę/technikę?
Czy uważasz, że powyższy sposób jest chaotyczny i będzie powodować problemy w miarę wzrostu danych?
Jak mogę uniknąć powyższego bałaganu? Czy jest jakieś czystsze rozwiązanie, które mogę zastosować? Każdy przykład będzie mi pomocny.
EDYTOWAĆ
@Peter Stuifzand zasugerował mi, że mogę utworzyć jedną tabelę search_index i przechowywać w niej informacje o wszystkich 3 polach (tytuł, słowo kluczowe, opis) i przeprowadzać wyszukiwanie pełnotekstowe. Rozumiem, że dodatkowo ta tabela będzie zawierać również odniesienie do klucza podstawowego myTable.
Ale moje zaawansowane wyszukiwanie może obejmować połączenie mytable z tabelą kategorii, tabelą lokalizacji geograficznej (do wyszukiwania w promieniu 10, 20 mil itp.), filtrowanie według innych kryteriów i oczywiście sortowanie wyników wyszukiwania. Czy myślisz, że użycie pełnotekstowego mysql nie spowolni tego?
Przez Ibrahim Diallo
Opublikowano 2 lipca 2014 r. ~ 16 minut czytaniaWyszukiwanie jest ważną funkcją witryny internetowej. Kiedy kilku moich czytelników chce poszukać konkretnego fragmentu na moim blogu, korzysta z pola wyszukiwania. Kiedyś był obsługiwany przez wyszukiwarkę Google, ale od tego czasu zmieniłem go na własną, warzoną w domu wersję nie dlatego, że potrafię lepiej, ale dlatego, że było to ciekawe wyzwanie.
Jeśli się spieszysz i chcesz, aby Twoją witrynę można było przeszukiwać, zrób to samo, co zrobiłem wcześniej, użyj Google.
// W pliku search.php $term = isset($_GET["zapytanie"])?$_GET["zapytanie"]: ""; $termin = kod urlen($termin); $witryna = urlencode("www.twojastrona.com"); $redirect = "https://www.google.com/search?q=site%3A($website)+($term)"; header("Lokalizacja: $przekierowanie"); Wyjście;
To, co robi, jest całkiem proste. Uzyskaj hasło przekazane przez użytkownika i prześlij je na stronę wyszukiwania Google. Zawęź wynik wyszukiwania do naszej aktualnej domeny, używając słowa kluczowego site: w zapytaniu wyszukiwania. Wszystkie Twoje strony zaindeksowane przez Google będą teraz dostępne w wyszukiwarce. Jeśli jednak chcesz zająć się wyszukiwaniem w domu, czytaj dalej.
Domowe rozwiązanie wyszukiwania
Zanim przejdziemy dalej, spróbuj skorzystać z pola wyszukiwania na tym blogu. Wykorzystuje ten sam proces, który opiszę poniżej. Jeśli czujesz, że tego właśnie chcesz, czytaj dalej.
To rozwiązanie jest przeznaczone dla małych witryn internetowych. Używam LIKE z symbolami wieloznacznymi na obu końcach, co oznacza, że Twoje wyszukiwanie nie może zostać zindeksowane. Oznacza to, że rozwiązanie będzie działać dobrze w przypadku Twojego bloga lub osobistej witryny internetowej, która nie zawiera ton danych.Przenieś je do większej witryny i może działać bardzo wolno.MySQL oferuje wyszukiwanie pełnotekstowe, czego tutaj nie robimy.
Notatka: Jeśli masz 5000 postów na blogu, nadal wszystko jest w porządku. .
Jako punkt odniesienia przyjmiemy strukturę tego bloga. Każdy wpis na blogu zawiera:
- Tytuł p_title
- Adres URL p_url
- Podsumowanie p_summary
- Treść wpisu p_content
- Oraz kategorie kategoria.tagname
Za każde pole pasujące do wyszukiwanego hasła przyznamy mu ocenę. Wynik będzie ustalany na podstawie ważności meczu:
// dokładne dopasowanie terminu znajduje się w tytule $scoreFullTitle = 6; // dopasuj tytuł do części $scoreTitleKeyword = 5; // dokładne dopasowanie terminów znajduje się w podsumowaniu $scoreFullSummary = 5; // dopasowuje podsumowanie w części $scoreSummaryKeyword = 4; // dokładne dopasowanie terminu znajduje się w treści $scoreFullDocument = 4; // dopasowuje dokument do części $scoreDocumentKeyword = 3; // pasuje do kategorii $scoreCategoryKeyword = 2; // dopasowuje adres URL $scoreUrlKeyword = 1;
Zanim zaczniemy, należy usunąć kilka słów, które nie wnoszą większego wkładu w wyszukiwanie. Przykład „w”, „to”, „a”, „the”, „of”… . Odfiltrujemy je i możesz dodać dowolne słowo, które Twoim zdaniem jest nieistotne. Inną rzeczą jest to, że chcemy ograniczyć długość naszego zapytania. Nie chcemy, aby użytkownik napisał powieść w polu wyszukiwania i spowodował awarię naszego serwera MySQL.
// Usuń niepotrzebne słowa z wyszukiwanego hasła i zwróć je jako funkcję tablicową filterSearchKeys($query)( $query = trim(preg_replace("/(\s+)+/", " ", $query)); $words = array(); // rozwiń tę listę swoimi słowami $list = array("in","it","a","the","of","or","I","ty", „on”, „ja”, „nas”, „oni”, „ona”, „do”, „ale”, „to”, „to”, „te”, „wtedy”); $c = 0; foreach(explode(" ", $query) as $key)( if (in_array($key, $list))(kontynuuj; ) $words = $key; if ($c >= 15)( break; ) $c++ ; ) return $words; ) // ogranicz liczbę słów w słowach funkcja limitChars($query, $limit = 200)( return substr($query, 0,$limit); )
Nasze funkcje pomocnicze mogą teraz ograniczać liczbę znaków i filtrować niepotrzebne słowa. Sposób, w jaki zaimplementujemy nasz algorytm, polega na przyznawaniu punktów za każdym razem, gdy znajdziemy dopasowanie. Będziemy dopasowywać słowa za pomocą instrukcji if i gromadzić punkty w miarę dopasowywania kolejnych słów. Na koniec możemy użyć tego wyniku do posortowania wyników
Notatka: Nie będę pokazywał jak połączyć się z bazą danych MySQL. Jeśli masz problemy z efektywnym połączeniem się z bazą danych, polecam przeczytanie tego.
Nadajmy najpierw naszej funkcji strukturę. Uwaga: zostawiłem symbole zastępcze, abyśmy mogli oddzielnie implementować sekcje.
Funkcja search($query)( $query = trim($query); if (mb_strlen($query)===0)( // nie ma potrzeby pustego wyszukiwania, prawda? return false; ) $query = limitChars($query) ; // Wyniki ważenia $scoreFullTitle = 6; $scoreTitleKeyword = 5; $scoreFullSummary = 5; $scoreSummaryKeyword = 4; $scoreFullDocument = 4; $scoreDocumentKeyword = 3; $scoreCategoryKeyword = 2; $scoreUrlKeyword = 1; $keywords = filtrKlucze wyszukiwania( $query); $escQuery = DB::escape($query); // zobacz uwagę powyżej, aby uzyskać obiekt db $titleSQL = array(); $sumSQL = array(); $docSQL = array(); $categorySQL = array (); $urlSQL = array(); /** Pasujące pełne wystąpienia PLACE HOLDER **/ /** Pasujące słowa kluczowe PLACE HOLDER **/ $sql = "SELECT p.p_id,p.p_title,p.p_date_published,s. p_url, p.p_summary,p.p_content,p.thumbnail, ((-- Wynik tytułu ".implode(" + ", $titleSQL).")+ (-- Podsumowanie ".implode(" + ", $sumSQL) .")+ (-- dokument ".implode(" + ", $docSQL).")+ (-- tag/kategoria ".implode(" + ", $kategoriaSQL).")+ (-- url ". implode(" + ", $urlSQL).")) jako trafność OD postu p GDZIE p.status = "opublikowany" MAJĄcy trafność >
W zapytaniu wszystkie wyniki zostaną zsumowane jako zmienna trafności i możemy jej użyć do sortowania wyników.
Dopasowywanie pełnych wystąpień
Najpierw upewniamy się, że mamy kilka słów kluczowych, a następnie dodajemy nasze zapytanie.
If (count($keywords) > 1)( $titleSQL = "if (p_title LIKE "%".$escQuery."%",($scoreFullTitle),0)"; $sumSQL = "if (p_summary LIKE "%" .$escQuery."%",($scoreFullSummary),0)"; $docSQL = "if (p_content LIKE "%".$escQuery."%",($scoreFullDocument),0)"; )
To mecze z wyższą punktacją. Jeśli wyszukiwane hasło pasuje do artykułu, który je zawiera, szanse na pojawienie się na górze będą większe.
Wystąpienia pasujących słów kluczowych
Przeglądamy wszystkie słowa kluczowe i sprawdzamy, czy pasują do któregoś z pól. Do dopasowania kategorii użyłem zapytania podrzędnego, ponieważ post może mieć wiele kategorii.
Foreach($keywords as $key)( $titleSQL = "if (p_title LIKE "%.DB::escape($key)."%",($scoreTitleKeyword),0)"; $sumSQL = "if (p_summary LIKE "%".DB::escape($key).."%",($scoreSummaryKeyword),0)"; $docSQL = "if (p_content LIKE "%".DB::escape($key)."% ",($scoreDocumentKeyword),0)"; $urlSQL = "if (p_url LIKE "%".DB::escape($key).."%",($scoreUrlKeyword),0)"; $categorySQL = " if ((WYBIERZ liczbę(kategoria.tag_id) Z kategorii DOŁĄCZ post_kategoria ON post_kategoria.tag_id = kategoria.tag_id GDZIE post_kategoria.post_id = p.post_id ORAZ kategoria.nazwa = "".DB::escape($key).") > 0,($scoreCategoryKeyword),0)"; )
Jak zauważył komentator poniżej, musimy się upewnić, że te zmienne nie są pustymi tablicami, w przeciwnym razie zapytanie zakończy się niepowodzeniem.
// Na wypadek, gdyby było puste, dodaj 0 if (empty($titleSQL))( $titleSQL = 0; ) if (empty($sumSQL))( $sumSQL = 0; ) if (empty($docSQL))( $docSQL = 0; ) if (pusty($urlSQL))( $urlSQL = 0; ) if (pusty($tagSQL))( $tagSQL = 0; )
Na koniec wszystkie zapytania są łączone i sumowane, aby określić związek postu z wyszukiwanym hasłem.
// Usuń niepotrzebne słowa z wyszukiwanego hasła i zwróć je jako funkcję tablicową filterSearchKeys($query)( $query = trim(preg_replace("/(\s+)+/", " ", $query)); $words = array(); // rozwiń tę listę swoimi słowami $list = array("in","it","a","the","of","or","I","ty", „on”, „ja”, „nas”, „oni”, „ona”, „do”, „ale”, „to”, „to”, „te”, „wtedy”); $c = 0; foreach(explode(" ", $query) as $key)( if (in_array($key, $list))(kontynuuj; ) $words = $key; if ($c >= 15)( break; ) $c++ ; ) return $words; ) // limit słów liczba znaków funkcja limitChars($query, $limit = 200)( return substr($query, 0,$limit); ) funkcja search($query)( $query = trim ($query); if (mb_strlen($query)===0)( // nie ma potrzeby pustego wyszukiwania, prawda? return false; ) $query = limitChars($query); // Wyniki ważenia $scoreFullTitle = 6; $ scoreTitleKeyword = 5; $scoreFullSummary = 5; $scoreSummaryKeyword = 4; $scoreFullDocument = 4; $scoreDocumentKeyword = 3; $scoreCategoryKeyword = 2; $scoreUrlKeyword = 1; $keywords = filterSearchKeys($query); $escQuery = DB::escape($zapytanie); // zobacz uwagę powyżej, aby uzyskać obiekt db $titleSQL = array(); $sumSQL = tablica(); $docSQL = tablica(); $kategoriaSQL = tablica(); $urlSQL = tablica(); /** Pasujące pełne wystąpienia **/ if (count($keywords) > 1)( $titleSQL = "if (p_title LIKE "%".$escQuery."%",($scoreFullTitle),0)"; $sumSQL = "if (p_summary LIKE "%".$escQuery."%",($scoreFullSummary),0)"; $docSQL = "if (p_content LIKE "%".$escQuery."%",($scoreFullDocument), 0)"; ) /** Pasujące słowa kluczowe **/ foreach($keywords as $key)( $titleSQL = "if (p_title LIKE "%".DB::escape($key)."%",($scoreTitleKeyword ),0)"; $sumSQL = "if (p_summary LIKE "%".DB::escape($key)."%",($scoreSummaryKeyword),0)"; $docSQL = "if (p_content LIKE "% ".DB::escape($key)."%",($scoreDocumentKeyword),0)"; $urlSQL = "if (p_url LIKE "%".DB::escape($key).."%", ( $scoreUrlKeyword),0)"; $categorySQL = "if ((WYBIERZ liczbę(kategoria.tag_id) Z kategorii DOŁĄCZ post_kategoria ON post_kategoria.tag_id = kategoria.tag_id GDZIE post_kategoria.post_id = p.post_id ORAZ nazwa.kategorii = "" . DB::escape($key)."") > 0,($scoreCategoryKeyword),0)"; ) // Na wypadek, gdyby było puste, dodaj 0 if (empty($titleSQL))( $titleSQL = 0 ; ) if (pusty($sumSQL))( $sumSQL = 0; ) if (pusty($docSQL))( $docSQL = 0; ) if (pusty($urlSQL))( $urlSQL = 0; ) if (pusty($tagSQL))( $tagSQL = 0; ) $sql = " WYBIERZ p.p_id,p.p_title,p.p_date_published,p.p_url, p.p_summary,p.p_content,p.thumbnail, ((-- Wynik tytułu ".implode(" + ", $titleSQL). ")+ (-- Podsumowanie ".implode(" + ", $sumSQL).")+ (-- dokument ".implode(" + ", $docSQL).")+ (-- tag/kategoria ".implode (" + ", $categorySQL).")+ (-- url ".implode(" + ", $urlSQL).")) jako istotność OD postu p WHERE p.status = "opublikowany" MAJĄcy trafność > 0 ZAMÓW PRZEZ znaczenie DESC,p.page_views DESC LIMIT 25"; $wyniki = DB::query($sql); if (!$results)( return false; ) return $results; )
Teraz Twój plik search.php może wyglądać następująco:
$term = isset($_GET["zapytanie"])?$_GET["zapytanie"]: ""; $search_results = search($term); if (!$search_results) ( echo "Brak wyników"; exit; ) // Wydrukuj tutaj stronę z wynikami.
Stworzyliśmy prosty algorytm wyszukiwania, który może obsłużyć znaczną ilość treści. Arbitralnie wybrałem wynik dla każdego meczu, możesz go dostosować do czegoś, co będzie dla Ciebie najlepsze. I zawsze jest miejsce na ulepszenia.
Dobrym pomysłem jest śledzenie wyszukiwanych haseł pochodzących od użytkowników, dzięki czemu możesz sprawdzić, czy większość użytkowników szuka tego samego. Jeśli istnieje wzór, możesz zapisać im podróż i po prostu zapisać wyniki w pamięci podręcznej Memcached.
Jeśli chcesz zobaczyć ten algorytm wyszukiwania w działaniu, spróbuj poszukać artykułu w polu wyszukiwania na górze strony. Dodałem dodatkowe funkcje, takie jak zwracanie części tekstu, w której znaleziono dopasowanie. Zachęcamy do dodawania funkcji do swoich.
Czy podobał Ci się ten artykuł? Możesz subskrybować, aby przeczytać więcej niesamowitych. .
A propos, oto kilka interesujących artykułów.
Czas raz na zawsze rozprawić się z funkcjami mysql_*. Metody te są przestarzałe i powolne. Czas aktualizacji już dawno minął, a wciąż widzimy to wszędzie. Ponieważ nie mogę zmusić każdego autora do aktualizacji swoich tutoriali i blogów, zdecydowałem się napisać post, który, miejmy nadzieję, poprawi ranking i dostarczy niezbędnych informacji, aby pomóc nowym użytkownikom.
Utworzenie własnej witryny internetowej nie powinno być zbyt trudne. Firmy hostingowe, takie jak Godaddy lub Hostgator, bardzo ułatwiają każdemu rozpoczęcie pracy; pozwalają stworzyć całą witrynę internetową bez konieczności pisania kodu. Większości ludzi wystarczy uruchomienie Blog WordPress. Jeśli tego właśnie szukasz, powinieneś już teraz udać się na Godaddy.com. Na tym skończyliśmy. Ale z drugiej strony, jeśli chcesz mieć kontrolę i nie być ograniczonym przez wady hostingu współdzielonego bez rujnowania portfela, trafiłeś we właściwe miejsce.
Vim to mój ulubiony edytor tekstu na terminalu. Po krótkiej zabawie z nano i emacsem w końcu zdecydowałem się na vima ze względu na jego prostotę (proszę mi pomóc). Chociaż można go dostosować i używać jak całego IDE, używam go głównie do edycji plików na moich serwerach i wprowadzania drobnych, ale kluczowych zmian. Nie wdawajmy się w wojnę z redaktorami i zaczynajmy.
Komentarze(45)
Zaryel 12 sierpnia 2015:
Iana Mustafę 26 września 2015:
Obrabować 29 września 2015:
przyznaję 11 lutego 2016:
Iwan Wenediktow 9 kwietnia 2016 r.
Oczywiście o znaczeniu metatagów wie każdy, kto choć trochę ma pojęcie o promocji w wyszukiwarkach. Każdy zdaje sobie sprawę, jak ważne są tytuł, opis, h1-h6, alt i inne tagi. Nikt nie zaprzecza, że wpływają one na optymalizację serwisu. Jednak wyszukiwarki mają ambiwalentny stosunek do jednego z tagów – tagu słów kluczowych.
W ostatnich latach w Internecie toczy się gorąca dyskusja, która trwa do dziś: czy w ogóle warto stosować metatag słów kluczowych? Niestety nikt nie jest w stanie udzielić dokładnej odpowiedzi. Rozważmy różne punkty widzenia i spróbujmy zrozumieć tę kwestię.
Co to są słowa kluczowe?
Słowa kluczowe to słowa kluczowe (nie więcej niż 20 na jedną stronę serwisu) odpowiadające treści strony.
W kodzie strony ten metatag wygląda następująco:
Początkowo tag miał znaczący wpływ na trafność stron serwisu, a co za tym idzie, na jego ranking na najwyższych pozycjach w wyszukiwarkach.
Wiedząc o tym, właściciele witryn zaczęli oszukiwać - nadużywać słów kluczowych lub dodawać do tego tagu dużą liczbę nieodpowiednich słów. Wyszukiwarki odkryły to dość szybko.
Co się dzieje teraz?
Jak mówią, ze skrajności w skrajność: w rezultacie wyszukiwarki przestały w ogóle przywiązywać jakiekolwiek znaczenie do tego tagu.
Yandex
Przedstawiciele Yandex tak stwierdzili na temat słów kluczowych: „...można wziąć pod uwagę przy ustalaniu, czy strona jest istotna dla wyszukiwanych haseł”.
Należy pamiętać, że słowem kluczowym jest tutaj Może. Mimo wszystko Może wcale nie znaczy uwzględnić.
System nie pozostawia żadnych wątpliwości i nie daje podstaw do myślenia. Tutaj wszystko jest zwięzłe i jasne: „Nie używamy metatagów słów kluczowych w rankingach wyszukiwania”, „Google ignorowało metatagi słów kluczowych od lat i obecnie nie widzimy potrzeby zmiany tej polityki”.
„Nie używamy metatagu słów kluczowych w rankingach wyszukiwania”, „Google ignorowało metatag słów kluczowych przez wiele lat i obecnie nie ma potrzeby zmiany tej polityki”.
Rambler, Yahoo, Mail.ru
Podzielają zdanie Google i uważają, że metatag słów kluczowych wyczerpał swoją przydatność. Dlatego też nie jest ona w ogóle brana pod uwagę przez te wyszukiwarki.
Ale dlaczego wiele osób nadal używa słów kluczowych?
Najprawdopodobniej wynika to z niejednoznacznego sformułowania Yandex na temat tagu. Logika właścicieli witryn jest następująca: jeśli istnieje nadzieja, że Yandex weźmie tag pod uwagę, a Google, Rambler, Yahoo i Mail.ru są neutralne w stosunku do metatagu, to jego wypełnienie nie pogorszy sytuacji.
A co jeśli tak się stanie?
Wśród optymalizatorów panuje opinia, że wypełnienie tagu słów kluczowych może być szkodliwe. Jeśli wyszukiwarki nie traktują tagu jako tagu, wówczas zawarty w nim tekst jest odczytywany jako zwykły tekst witryny. A jeśli użyłeś już tych kluczy w innych tagach i w treści tekstu, istnieje ryzyko „nadmiernego spamowania” strony kluczami. Cóż, nadmierny spam (nadmierne nudności) może wrzucić Cię pod filtr.
Punkt widzenia 1PS
Jak dotąd opisaliśmy ogólną sytuację i różne opinie na ten temat. Każdy ma swój własny punkt widzenia. Chodzi nam o to, że lepiej nie wypełniać tagu słów kluczowych. Na pewno nie ma z tego żadnych korzyści, ale nadal istnieje ryzyko wpadnięcia pod filtr.
Lepiej promować swoją witrynę za pomocą odpowiednich treści i tagów
P.S. Powodzenia w promowaniu swojego zasobu.
Pomagamy różnym klientom w zakresie marketingu internetowego i witryn internetowych, a często zadawane nam pytanie brzmi: „Jak dodać słowa kluczowe do witryny internetowej?” Możesz sobie wyobrazić, jak dodajemy niezwykle skomplikowane formuły i kody na ekran komputera.
Ale prawda jest taka, że podstawy są łatwiejsze, niż mogłoby się wydawać. Uczymy nawet naszych klientów prowadzących własne blogi biznesowe, jak dobierać słowa kluczowe do swoich stron internetowych, aby łatwiej było je znaleźć w wyszukiwarkach. Celem tego artykułu na blogu jest nauczenie Cię podstaw dodawania słów kluczowych do witryny internetowej. Nie jesteś pewien, czy chcesz tracić czas? Zapoznaj się z naszymi usługami SEO, chętnie Ci pomożemy.
Dlaczego warto wiedzieć, jak dodawać słowa kluczowe do witryny internetowej?
Ucząc się, jak dodawać słowa kluczowe do witryny internetowej, będziesz mógł dodawać słowa kluczowe do własnych blogów, stron internetowych i innych materiałów marketingu internetowego. Zyskasz także kontekst wyjaśniający, dlaczego SEO jest tak ważne dla Twojej firmy.
W jaki sposób dodanie słów kluczowych do mojej witryny internetowej może pomóc mojej firmie?
Dodanie słów kluczowych do Twojej witryny pomaga wyszukiwarkom zrozumieć, co Twoja witryna może zaoferować osobom poszukującym, a ostatecznie zapewnić bardziej wykwalifikowany ruch. Jak? Z identyfikatorami, takimi jak słowa kluczowe. Bez słów kluczowych na stronach Twojej witryny wyszukiwarka nie będzie w stanie sklasyfikować Twojej witryny i wyświetlić jej właściwym osobom wyszukującym Pomyśl o tym w ten sposób: dobrze napisany artykuł zawiera tezę i powiązane z nią argumenty. Czytelnicy dobrze napisanych artykułów mają jasne pojęcie o temacie i treści artykułu. Jest to ta sama teoria, która stoi za Google i innymi wyszukiwarkami. Tak naprawdę dwóch studentów ze Stanford stworzyło Google z myślą o tym samym pomyśle.
Dobrze wykonana strona internetowa ma główny temat i często ma podkategorie powiązane z głównym tematem, a dodając słowa kluczowe do każdego z tych obszarów, jesteśmy w stanie dać jasny obraz wyszukiwarkom, a osoby szukające będą mogły łatwiej Cię znaleźć . Na przykład:
Twoim głównym tematem może być: Pączki
Twoje podkategorie lub tematy mogą być: Ciasto, Dziurki Dougnut, Batony,…
Wybór słów kluczowych dla Twojej witryny
Teraz, gdy rozumiesz już strukturę witryny i jej znaczenie, czas wybrać słowa kluczowe. Jak? Korzystamy z szeregu narzędzi i przeprowadzamy szeroko zakrojone badania naszych słów kluczowych; jednakże jednym z bezpłatnych narzędzi jest Narzędzie propozycji słów kluczowych Google. Po prostu wprowadź informacje o lokalizacji i kategorię, a następnie wpisz główny temat swojej witryny. Narzędzie wygeneruje wiele słów kluczowych i wyświetli następujące statystyki:
Konkurs:(Niski, Średni, Wysoki) Informuje, ile osób próbuje określić słowo kluczowe dla tego słowa lub frazy. Im większa konkurencja, tym trudniej jest uzyskać wysoką pozycję w Google dla tego wyszukiwanego hasła.
Globalny miesięczny wolumen: Liczba wyszukiwań tego hasła miesięcznie na całym świecie.
Lokalny miesięcznik: Jest określana na podstawie informacji wprowadzonych do wyszukiwania. Jeśli jako lokalizację podałeś Stany Zjednoczone byłaby to liczba miesięcznych wyszukiwań tego hasła w USA.
Chociaż to narzędzie jest łatwe w użyciu, nie wszystkie słowa kluczowe są traktowane tak samo. W rzeczywistości niektóre słowa kluczowe generują większy ruch niż inne, a niektóre mogą generować duży ruch, który nigdy nie powoduje konwersji. Dlatego zdecydowanie zalecamy właścicielom firm wynajęcie agencji przeszkolonej w zakresie SEO i słów kluczowych, która pomoże im w marketingu internetowym.
Ile słów kluczowych muszę dodać na stronę?
Po przeprowadzeniu badania słów kluczowych będziesz musiał dokonać wyboru jedno słowo kluczowe dla każdej Twojej strony internetowej lub bloga. Słowa kluczowe powinny być specyficzne dla tematu strony i odnosić się do ogólnego tematu witryny.
Przykład dobrego wyboru słowa kluczowego:
Główny motyw witryny: Pączek
Strona internetowa: Klonowy Pączek
Przypisane słowo kluczowe: Najlepszy pączek klonowy
Przykład złego wyboru słowa kluczowego:
Główny motyw witryny: Pączek
Strona internetowa: Klonowy Pączek
Przypisane słowo kluczowe: Przepisy na pączki
Jak dodać słowa kluczowe do swojej strony internetowej:
Dodając słowa kluczowe do swojej witryny, ważne jest, aby umieścić je w 6 miejscach na każdej stronie witryny. Umieszczenie słowa kluczowego w tych 6 obszarach pomoże wyszukiwarkom zidentyfikować temat Twojej strony i uszeregować ją w wynikach wyszukiwania.
- Tytuł strony
- Metaopis
- nagłówek
- Nagłówek podrzędny
- Akapity treściowe
- Tagi alternatywne obrazu
Tytuł strony i metaopis:
Tytuły stron i metaopisy to bardziej techniczna część słów kluczowych w Twojej witrynie. Jednak ważne jest, aby zdać sobie sprawę, jak cenne mogą być one dla Twoich działań marketingowych w Internecie. Co to są tytuły stron i metaopisy? Te części strony Twojej witryny faktycznie pojawiają się w wynikach wyszukiwania i stanowią pierwsze wrażenie, jakie uzyskuje osoba wyszukująca Twoją stronę.
Jeśli nie masz dostępu do tytułów stron ani meta opisów swojej witryny, ważne będzie, aby sprawdzić u firmy zarządzającej witryną, czy te obszary są poprawnie wypełnione pod kątem SEO.
Nagłówki:
Nagłówki przypominają billboardy dla wyszukiwarek. Są jednym z najlepszych sposobów pokazania wyszukiwarkom, jaki jest główny temat Twojej strony. Ważne jest, aby w nagłówku umieścić całe słowo kluczowe.
Nagłówki podrzędne:
Podnagłówki to kolejny obszar, który informuje wyszukiwarki, po co chcesz, aby strona została znaleziona. Pomyśl o tym obszarze jak o nieruchomościach. Jeśli nie spróbujesz umieścić słów kluczowych w podnagłówku, wiele stracisz.
Pkt ciała:
Pisząc treść strony internetowej, powinieneś spróbować uwzględnić słowo kluczowe lub przynajmniej jego część. Pamiętaj, aby Twoje pisanie było naturalne. Wyszukiwarki ukarają Cię, jeśli Twoje teksty będą zawierały zbyt dużo słów kluczowych i będą wyglądać nienaturalnie. Kiedy po raz pierwszy spróbujesz pisać ze słowami kluczowymi, może to być trudne, ale ćwicz dalej! To naprawdę staje się łatwiejsze i będziesz lepiej kształtować treść pod kątem dodawania słów kluczowych.
Tagi alternatywne obrazu:
Obrazy są doskonałym dodatkiem do każdej strony internetowej, a nawet mogą pomóc wyszukiwarkom w pozycjonowaniu Twojej witryny. Tagi Alt to w zasadzie etykieta przypisana do obrazu, dzięki czemu wyszukiwarki mogą go odczytać. Jeśli nie użyjesz tagów Alt do obrazów, wyszukiwarki ich nie zobaczą. Dodając słowa kluczowe do tych obrazów, tagi Alt informują wyszukiwarki: „Użyłem obrazu i jest on powiązany z tematem mojej strony”.
To już wszystko. Teraz znasz podstawy dodawania słów kluczowych do witryny internetowej. Wiemy, że wygląda to zniechęcająco, ale jeśli masz czas na pisanie własnych blogów lub treści na stronach internetowych, zdecydowanie zalecamy skorzystanie z niektórych wskazówek wymienionych powyżej. Te taktyki mogą zwiększyć ruch w Twojej witrynie i pomóc w zakwalifikowaniu potencjalnych klientów. Oznacza to brak zbędnych wizyt i więcej klientów dla Twojej firmy.
Jeśli uważasz, że ten artykuł był w jakikolwiek sposób pomocny, „udostępnij” go znajomemu.
Już kilka razy proszono mnie o napisanie artykułu na ten temat jak zaimplementować wyszukiwanie na stronie internetowej za pomocą PHP. Nie jest to łatwe zadanie, powiedziałbym nawet bardzo trudne, ponieważ istnieje ogromna liczba niuansów i przeszkód. W tym artykule przeanalizuję algorytm wyszukiwania stron internetowych.
Załóżmy, że na naszej stronie znajduje się wiele różnych materiałów (artykuły, aktualności, notatki itp.). Wszystko to jest w bazie danych. A naszym zadaniem jest zaimplementuj wyszukiwanie w witrynie. Najprostszy algorytm jest następujący:
- Tworzyć Formularz HTML z paskiem wyszukiwania, a także przyciskiem „ Składać„. Użytkownicy wpisują wyszukiwane hasło w polu tekstowym, a następnie klikają przycisk.
- Pobierz zapytanie wyszukiwania (zwykle przekazywane metodą DOSTAWAĆ, ale czasami też używają POST), a także w celu ochrony przed XSS, przepuść go przez funkcję htmlspecjalneznaki().
- Z odpowiednich tabel (z artykułami, aktualnościami, notatkami itp.) wybierz te rekordy, które zawierają wyszukiwane hasło. Pokazuję przykładowe zapytanie SQL dla takich przypadków: SELECT * FROM artykułów GDZIE `tekst_artykuł` LIKE %search% Odpowiednio zamiast szukaj szukany ciąg jest podstawiony.
- Po otrzymaniu zapisów prezentujemy je w wymaganej formie, najlepiej według aktualności. Zrobiłem to na przykład na mojej stronie internetowej: tam, gdzie jest najwięcej dopasowań, ten artykuł jest najbardziej odpowiedni, dlatego umieściłem go na pierwszym miejscu. Najprawdopodobniej ta metoda oceny trafności również będzie Ci odpowiadać.
Wielu z Was powie, że nie ma tu nic skomplikowanego. I po części będą mieli rację, spójrzmy jednak na ten przykład szukanego ciągu: „ Szukam tego tekstu". Nasuwa się pytanie: " Czego dokładnie szukasz?„. Szukane jest dokładne wystąpienie tekstu” Szukam tego tekstu”. Lub być może przeszukiwany jest tekst, w którym obecne są wszystkie trzy słowa, ale które nie mogą następować po sobie. Być może przeszukiwany jest tekst, w którym występuje co najmniej jedno z tych słów.
I tu zadanie staje się znacznie bardziej skomplikowane. Można stworzyć złożony system składni (jak w wyszukiwarkach), np. przeszukiwane będzie dokładne wystąpienie, jeśli zapytanie zostanie podane w cudzysłowie. Możesz także dać użytkownikom wybór, w jaki sposób chcą przeprowadzić wyszukiwanie (za pomocą przycisków opcji). Tak to zostało zrobione na mojej stronie. Dlatego do poprzedniego algorytmu dodano jeszcze jeden punkt: kompilacja zapytania SQL. Oto przykład zapytania SQL, gdy trzeba wyciągnąć z zapytania wszystkie materiały zawierające przynajmniej jedno słowo „ Szukam tego tekstu":
WYBIERZ * Z artykułów GDZIE (`text_article` JAK "%szukam%" LUB `text_article` JAK "%this%" LUB `text_article` JAK "%text%")
Odpowiednio w skrypcie wyszukiwania powinieneś wygenerować podobny Zapytania SQL, wyślij do bazy danych, odbierz odpowiedź i wyprowadź ją. Sprawa staje się jeszcze bardziej skomplikowana, jeśli wyświetlasz posty według trafności, ponieważ trudno od razu stwierdzić, które powinny być bardziej trafne: 3 dokładne wystąpienia żądania, lub 10 wystąpienia części zapytania. Na mojej stronie zawsze preferowane są dokładne zdarzenia, ale ten punkt jest już dość kontrowersyjny. Oczywiście jest to trudne i jeśli robisz to po raz pierwszy, na pewno spędzisz na tym kilka godzin. Mam nadzieję, że mój algorytm realizacji wyszukiwania stron WWW poprzez PHP To ci pomoże.