Imam polja za naslov (varchar), opis (tekst), ključne riječi (varchar) u mojoj mysql tabeli.
Zadržao sam polje ključnih riječi jer sam mislio da ću pretraživati samo u ovom polju. Ali sada tražim između sva tri polja. tako da za ključne riječi "riječ1 riječ2 riječ3", moj upit postaje
ODABERITE * IZ moje tabele GDJE (ime KAO "%word1%" ILI opis KAO "%word1%" ILI ključne riječi poput "%word1%" ILI ime KAO "%word2%" ILI opis KAO "%word2%" ILI ključne riječi KAO "% word2%" ILI naziv KAO "%word3%" ILI opis KAO "%word3%" ILI ključne riječi poput "%word3%") I status = "uživo"
Izgleda malo neuredno, ali ovo funkcionira. Ali sada moram implementirati pretragu sinonima. tako da za datu riječ pod pretpostavkom da postoji nekoliko dostupnih sinonima, ovaj upit postaje neuredniji dok prelazim kroz sve riječi. Kako zahtjevi postaju jasniji, morat ću pridružiti ovu myTable i nekim drugim tabelama.
- Postoji li neka druga metoda/tehnika koju mi možete preporučiti?
Mislite li da je gornji način neuredan i da će uzrokovati probleme kako podaci rastu?
Kako mogu izbjeći gore navedeni nered? Postoji li neko rješenje za čišćenje koje mogu koristiti? Svaki primjer će mi pomoći.
EDIT
@Peter Stuifzand mi je predložio da mogu kreirati jednu tabelu search_index i pohraniti informacije za sva 3 polja (naslov, ključnu riječ, desc) i pretražiti cijeli tekst. Razumijem da će ova tabela dodatno uključivati i referencu na myTable primarni ključ.
Ali moja napredna pretraga može uključivati spajanje mytable sa tabelom kategorija, geographic_location tablica (za pretraživanje unutar 10, 20 milja itd.), filtriranje prema nekim drugim kriterijima i naravno, sortiranje rezultata pretraživanja. Mislite li da korištenje mysql punog teksta neće usporiti?
By Ibrahim Diallo
Objavljeno 2. jula 2014. ~ 16 minuta čitanjaPretraga je važna karakteristika na web stranici. Kada nekoliko mojih čitatelja želi potražiti određeni odlomak na mom blogu, koriste okvir za pretragu. Nekada ga je pokretala Google pretraga, ali sam je od tada promijenio u svoju vlastitu verziju, ne zato što mogu bolje, već zato što je to bio zanimljiv izazov.
Ako ste u žurbi i samo želite da se vaša stranica može pretraživati, uradite ono što sam ranije radio, koristite Google.
// U search.php datoteci $term = isset($_GET["query"])?$_GET["query"]: ""; $term = urlencode($term); $website = urlencode("www.yourwebsite.com"); $redirect = "https://www.google.com/search?q=site%3A($website)+($term)"; header("Lokacija: $redirect"); Izlaz;
Ono što radi je prilično jednostavno. Uzmite termin koji je korisnik proslijedio i proslijedite ga na Google stranicu za pretraživanje. Ograničite rezultat pretrage na našu trenutnu domenu koristeći ključnu riječ site: u upitu za pretraživanje. Sve vaše stranice koje je indeksirao Google sada će biti dostupne putem pretrage. Međutim, ako želite da obavite pretragu u kući, nastavite čitati.
Homemade Search Solution
Prije nego što krenemo dalje, pokušajte koristiti okvir za pretragu na ovom blogu. Koristi isti proces koji ću opisati u nastavku. Ako smatrate da je to ono što želite, nastavite čitati.
Ovo rješenje je namijenjeno malim web stranicama. Koristim LIKE sa zamjenskim oznakama na oba kraja, što znači da se vaša pretraga ne može indeksirati. To znači da će rješenje dobro funkcionirati za vaš blog ili osobnu web stranicu koja ne sadrži tone podataka. Prenesite ga na veću web stranicu i moglo bi postati vrlo sporo MySQL nudi potpunu pretragu teksta što nije ono što mi ovdje radimo.
Bilješka: Ako imate 5000 postova na blogu i dalje ste u redu. .
Strukturu ovog bloga ćemo uzeti kao referencu. Svaki blog post ima:
- Naslov p_title
- URL p_url
- Sažetak p_summary
- Sadržaj objave p_content
- I kategorije kategorija.oznaka
Za svako polje koje se poklapa s našim pojmom za pretraživanje, dat ćemo mu ocjenu. Rezultat će biti zasnovan na važnosti utakmice:
// tačan termin se nalazi u naslovu $scoreFullTitle = 6; // odgovara naslovu u dijelu $scoreTitleKeyword = 5; // tačan termin se nalazi u sažetku $scoreFullSummary = 5; // odgovara rezimeu u dijelu $scoreSummaryKeyword = 4; // tačan termin se nalazi u sadržaju $scoreFullDocument = 4; // odgovara dokumentu u dijelu $scoreDocumentKeyword = 3; // odgovara kategoriji $scoreCategoryKeyword = 2; // odgovara url-u $scoreUrlKeyword = 1;
Prije nego što počnemo, postoji nekoliko riječi koje ne doprinose mnogo pretraživanju koje bi trebalo ukloniti. Primjer "in","it","a","the","of" ... . Mi ćemo ih filtrirati i slobodno dodajte bilo koju riječ za koju smatrate da je nebitna. Druga stvar je da želimo ograničiti dužinu našeg upita. Ne želimo da korisnik napiše roman u polju za pretragu i sruši naš MySQL server.
// Uklonite nepotrebne riječi iz pojma za pretraživanje i vratite ih kao funkciju niza filterSearchKeys($query)( $query = trim(preg_replace("/(\s+)+/", " ", $query)); $words = array(); // proširite ovu listu vašim riječima. $list = array("in","it","a","the","of","or","ja","ti", "on","ja","nas","oni","ona","do","ali","ono","ovo","oni","onda"); $c = 0; foreach(explode(" ", $query) kao $key)( if (in_array($key, $list))( nastavi; ) $words = $key; if ($c >= 15)( break; ) $c++ ; ) return $words; ) // ograničiti broj riječi broj znakova funkcija limitChars($query, $limit = 200)( return substr($query, 0,$limit); )
Naše pomoćne funkcije sada mogu ograničiti broj znakova i filtrirati beskorisne riječi. Način na koji ćemo implementirati naš algoritam je davanje bodova svaki put kada pronađemo podudaranje. Uparivat ćemo riječi koristeći if naredbu i skupljati bodove kako uparimo više riječi. Na kraju možemo koristiti taj rezultat za sortiranje naših rezultata
Bilješka: Neću pokazivati kako se povezati na MySQL bazu podataka. Ako imate problema da se efikasno povežete sa bazom podataka, preporučujem da pročitate ovo.
Prvo dajmo našoj funkciji strukturu Napomena: ostavio sam čuvare mjesta da bismo mogli zasebno implementirati sekcije.
Pretraživanje funkcije($query)( $query = trim($query); if (mb_strlen($query)===0)( // nema potrebe za praznom pretragom zar ne? vrati false; ) $query = limitChars($query) ; // Vaganje rezultata $scoreFullTitle = 6; $scoreTitleKeyword = 5; $scoreFullSummary = 5; $scoreSummaryKeyword = 4; $scoreFullDocument = 4; $scoreDocumentKeyword = 3; $scoreDocumentKeyword = 3; $scoreSummaryCateyword = 3; $scoreSummaryKeyword = 4; = filter ključevi za pretragu( $query); $escQuery = DB::escape($query); // pogledajte gornju napomenu da dobijete db objekat $titleSQL = array(); $sumSQL = array(); $docSQL = array(); $categorySQL = array (); $urlSQL = array(); /** Poklapanje punih pojavljivanja PLACE HOLDER **/ /** Odgovarajuće ključne riječi PLACE HOLDER **/ $sql = "SELECT p.p_id,p.p_title,p.p_date_published,p. p_url, p.p_summary,p.p_content,p.thumbnail, ((-- Rezultat naslova ".implode(" + ", $titleSQL).")+ (-- Sažetak ".implode(" + ", $sumSQL) .")+ (-- dokument ".implode(" + ", $docSQL).")+ (-- oznaka/kategorija ".implode(" + ", $categorySQL).")+ (-- url ". implode(" + ", $urlSQL).")) kao relevantnost OD posta p WHERE p.status = "objavljeno" IMAJUĆI relevantnost >
U upitu će svi rezultati biti sumirani kao varijabla relevantnosti i možemo je koristiti za sortiranje rezultata.
Podudaranje punih pojavljivanja
Prvo se pobrinemo da imamo neke ključne riječi, a zatim dodamo naš upit.
If (count($keywords) > 1)( $titleSQL = "if (p_title KAO "%".$escQuery."%",($scoreFullTitle),0)"; $sumSQL = "if (p_summary KAO "%" .$escQuery."%",($scoreFullSummary),0)"; $docSQL = "if (p_content KAO "%".$escQuery."%",($scoreFullDocument),0)"; )
To su utakmice sa većim rezultatom. Ako se pojam za pretraživanje podudara sa člankom koji ih sadrži, imat će veće šanse da se pojave na vrhu.
Podudaranje ključnih riječi
Prolazimo kroz sve ključne riječi i provjeravamo da li se podudaraju s nekim od polja. Za podudaranje kategorije koristio sam podupit jer objava može imati više kategorija.
Foreach($keywords kao $key)( $titleSQL = "if (p_title KAO "%.DB::escape($key)."%",($scoreTitleKeyword),0)"; $sumSQL = "if (p_summary LIKE). "%".DB::escape($key).."%",($scoreSummaryKeyword),0)"; $docSQL = "if (p_content KAO "%".DB::escape($key)."% ",($scoreDocumentKeyword),0)"; $urlSQL = "if (p_url KAO "%".DB::escape($key)."%",($scoreUrlKeyword),0)"; $categorySQL = "ako ((SELECT count(category.tag_id) IZ kategorije JOIN post_category ON post_category.tag_id = category.tag_id GDJE post_category.post_id = p.post_id I category.name = ".DB::escape($key).") > 0 0 ,($scoreCategoryKeyword),0)"; )
Takođe, kao što je komentator istakao u nastavku, moramo biti sigurni da ove varijable nisu prazne nizove ili upit neće uspjeti.
// Samo označite da je "prazan, dodajte 0 if (empty($titleSQL))( $titleSQL = 0; ) if (empty($sumSQL))( $sumSQL = 0; ) if (empty($docSQL))( $docSQL = 0; ) if (prazno($urlSQL))( $urlSQL = 0; ) if (prazno($tagSQL))( $tagSQL = 0; )
Na kraju se svi upiti spajaju i sabiraju kako bi se utvrdila relevantnost objave za pojam za pretraživanje.
// Uklonite nepotrebne riječi iz pojma za pretraživanje i vratite ih kao funkciju niza filterSearchKeys($query)( $query = trim(preg_replace("/(\s+)+/", " ", $query)); $words = array(); // proširite ovu listu vašim riječima. $list = array("in","it","a","the","of","or","ja","ti", "on","ja","nas","oni","ona","do","ali","ono","ovo","oni","onda"); $c = 0; foreach(explode(" ", $query) kao $key)( if (in_array($key, $list))( nastavi; ) $words = $key; if ($c >= 15)( break; ) $c++ ; ) return $words; ) // limit riječi broj znakova funkcija limitChars($query, $limit = 200)( return substr($query, 0,$limit); ) funkcija pretraga($query)( $query = trim ($query); if (mb_strlen($query)===0)( // nema potrebe za praznom pretragom zar ne? vrati false; ) $query = limitChars($query); // Vaganje rezultata $scoreFullTitle = 6; $ scoreTitleKeyword = 5; $scoreFullSummary = 5; $scoreSummaryKeyword = 4; $scoreFullDocument = 4; $scoreDocumentKeyword = 3; $scoreCategoryKeyword = 2; $scoreUrlKeyword = 1; $keywords = filterSearchKeys($query); $escQuery = DB::escape($query); // vidi gornju napomenu da dobiješ db objekt $titleSQL = array(); $sumSQL = niz(); $docSQL = niz(); $categorySQL = niz(); $urlSQL = niz(); /** Podudaranje svih pojavljivanja **/ if (count($keywords) > 1)( $titleSQL = "if (p_title KAO "%".$escQuery."%",($scoreFullTitle),0)"; $sumSQL = "if (p_summary KAO "%".$escQuery."%",($scoreFullSummary),0)"; $docSQL = "if (p_content KAO "%".$escQuery."%",($scoreFullDocument), 0)"; ) /** Ključne riječi koje se podudaraju **/ foreach($keywords kao $key)( $titleSQL = "if (p_title KAO "%".DB::escape($key)."%",($scoreTitleKeyword). ),0)"; $sumSQL = "if (p_summary KAO "%".DB::escape($key)."%",($scoreSummaryKeyword),0)"; $docSQL = "if (p_content KAO "%"); ".DB::escape($key)."%",($scoreDocumentKeyword),0)"; $urlSQL = "if (p_url KAO "%".DB::escape($key).."%", ( $scoreUrlKeyword),0)"; $categorySQL = "ako ((SELECT count(category.tag_id) IZ kategorije PRIDRUŽITE se post_category NA post_category.tag_id = category.tag_id GDJE post_category.post_id = p.post_id I category.name = " . DB::escape($key)."") > 0,($scoreCategoryKeyword),0)"; ) // Samo ako je prazan, dodajte 0 if (empty($titleSQL))( $titleSQL = 0 ; ) if (prazno($sumSQL))( $sumSQL = 0; ) if (prazno($docSQL))( $docSQL = 0; ) if (prazno($urlSQL))( $urlSQL = 0; ) if (prazno($tagSQL))( $tagSQL = 0; ) $sql = " SELECT p.p_id,p.p_title,p.p_date_published,p.p_url, p.p_summary,p.p_content,p.thumbnail, ((-- Rezultat naslova ".implode(" + ", $titleSQL). ")+ (-- Sažetak ".implode(" + ", $sumSQL).")+ (-- dokument ".implode(" + ", $docSQL).")+ (-- oznaka/kategorija ".implode). (" + ", $categorySQL).")+ (-- url ".implode(" + ", $urlSQL).")) kao relevantnost OD posta p GDJE p.status = "objavljeno" IMAJUĆI relevantnost > 0 ORDER BY BY. relevantnost DESC,p.page_views DESC LIMIT 25"; $results = DB::query($sql); if (!$results)( return false; ) return $results; )
Sada vaš search.php fajl može izgledati ovako:
$term = isset($_GET["query"])?$_GET["query"]: ""; $search_results = pretraga($term); if (!$search_results) ( echo "Nema rezultata"; izlaz; ) // Ispiši stranicu s rezultatima ovdje.
Napravili smo jednostavan algoritam za pretraživanje koji može podnijeti priličnu količinu sadržaja. Proizvoljno sam odabrao rezultat za svaki meč, slobodno ga podesite na nešto što vam najbolje odgovara. I uvijek ima prostora za napredak.
Dobra je ideja pratiti pojam za pretraživanje koji dolazi od vaših korisnika, na taj način možete vidjeti da li većina korisnika traži istu stvar. Ako postoji obrazac, možete im spremiti putovanje i samo keširati rezultate koristeći Memcached.
Ako želite vidjeti ovaj algoritam pretraživanja na djelu, samo naprijed i pokušajte potražiti članak u okviru za pretraživanje na vrhu stranice. Dodao sam dodatne funkcije kao što je vraćanje dijela u kojem je pronađeno podudaranje u tekstu. Slobodno dodajte svoje funkcije.
Da li vam se svidio ovaj članak? Možete se pretplatiti da čitate još sjajnih. .
S tim u vezi, evo nekoliko zanimljivih članaka.
Vrijeme je da se jednom zauvijek pozabavimo funkcijama mysql_*. Ove metode su zastarjele i spore. Vrijeme za nadogradnju je odavno prošlo, ali ga još uvijek vidimo posvuda. Budući da ne mogu natjerati svakog autora da ažurira svoje tutorijale i blogove, odlučio sam da napišem post kako bi se, nadamo se, bolje rangirao i pružio bitne informacije koje će pomoći novim korisnicima.
Izrada vlastite web stranice ne bi trebala biti previše teška. Kompanije za hosting kao što su Godaddy ili Hostgator olakšavaju svakome da započne; omogućavaju vam da kreirate cijelu web stranicu bez pisanja koda. Za većinu ljudi, to je dovoljno za pokretanje WordPress blog. Ako je ovo ono što tražite, trebali biste odmah otići na Godaddy.com. Ovdje smo završili. Ali s druge strane, ako želite imati kontrolu i ne biti ograničeni nedostacima zajedničkog hostinga a da ne uništite novčanik, došli ste na pravo mjesto.
Vim je moj omiljeni uređivač teksta na terminalu. Nakon što sam se neko vrijeme igrao sa nano-om i emacs-om, konačno sam se nagodio sa vim-om zbog njegove jednostavnosti (golo sa mnom, molim). Iako se može prilagoditi i koristiti kao cijeli IDE, koristim ga uglavnom za uređivanje datoteka na mojim serverima i za unošenje malih, ali ključnih promjena. Hajde da ne ulazimo u rat urednika i počnimo.
Komentari(45)
Zaryel 12. avgusta 2015.:
Ian Mustafa 26. septembar 2015:
Rob 29. septembar 2015:
adeem 11. februar 2016.:
Ivan Venediktov 9. april 2016.
Naravno, svi koji imaju barem neku ideju o promociji na pretraživačima znaju za značenje meta tagova. Svi su svjesni važnosti title, description, h1-h6, alt i drugih oznaka. Niko ne poriče da utiču na optimizaciju web stranice. Ali pretraživači imaju ambivalentan stav prema jednom od tagova – oznaci ključnih reči.
Posljednjih godina na internetu se vodi žestoka debata koja traje do danas: vrijedi li uopće koristiti meta tag ključnih riječi? Nažalost, još niko ne može dati tačan odgovor. Hajde da razmotrimo različite tačke gledišta i pokušajmo da razumemo ovo pitanje.
Šta su ključne riječi?
Ključne riječi su ključne riječi (ne više od 20 za jednu stranicu stranice) koje odgovaraju sadržaju stranice.
U kodu stranice ovaj meta tag izgleda ovako:
U početku, oznaka je imala značajan uticaj na relevantnost stranica sajta, a samim tim i na rangiranje sajta na najvišim pozicijama pretraživača.
Znajući to, vlasnici sajtova su počeli da varaju - zloupotrebljavaju ključne reči ili dodaju veliki broj neprikladnih reči ovoj oznaci. I tražilice su to vrlo brzo otkrile.
Šta se sada dešava?
Kako kažu, iz jedne krajnosti u drugu: kao rezultat toga, pretraživači su prestali da pridaju bilo kakvo značenje ovoj oznaci.
Yandex
Predstavnici Yandexa izjavili su sljedeće o ključnim riječima: “...može biti uzeto u obzir prilikom utvrđivanja da li je stranica relevantna za upite pretraživanja”.
Imajte na umu da je ključna riječ ovdje Možda. Nakon svega Možda ne znači uopšte uzeti u obzir.
Sistem ne ostavlja nikakve sumnje i ne daje osnove za razmišljanje. Ovde je sve sažeto i jasno: “Ne koristimo meta-oznaku ključnih riječi u rangiranju pretraživanja”, “Google je godinama ignorisao meta oznaku ključnih riječi i trenutno ne vidimo potrebu da mijenjamo tu politiku”.
“Ne koristimo meta oznaku ključnih riječi u rangiranju pretraživanja”, “Google je ignorisao meta oznaku ključnih riječi dugi niz godina i trenutno nema potrebe za promjenom ove politike”.
Rambler, Yahoo, Mail.ru
Oni dijele mišljenje Googlea i smatraju da je meta tag ključnih riječi iscrpio svoju korisnost. Stoga, ovi pretraživači to uopće ne uzimaju u obzir.
Ali zašto mnogi ljudi još uvijek koriste ključne riječi?
Najvjerovatnije je to zbog Yandexove dvosmislene formulacije o oznaci. Logika vlasnika sajtova je sledeća: ako postoji nada da će Yandex uzeti u obzir oznaku, a Google, Rambler, Yahoo i Mail.ru su neutralni po pitanju meta oznake, onda njeno popunjavanje neće pogoršati stvari.
Šta ako bude?
Među optimizatorima postoji mišljenje da popunjavanje oznake ključnih riječi može biti štetno. Ako pretraživači ne smatraju oznaku oznakom, onda se tekst uključen u nju čita kao običan tekst stranice. A ako ste već koristili ove ključeve u drugim oznakama i u tijelu teksta, postoji rizik od „prekomernog spama“ stranice ključevima. Pa, prekomjerna neželjena pošta (pretjerana mučnina) može vas uvući ispod filtera.
1PS tačka gledišta
Do sada smo opisali opću situaciju i različita mišljenja o tom pitanju. Svako ima svoje gledište. Naša poenta je da je bolje ne popunjavati tag ključnih riječi. Definitivno nema nikakve koristi od toga, ali i dalje postoji rizik od pada pod filter.
Bolje je promovirati svoju web stranicu s pravim sadržajem i oznakama
P.S. Sretno u promoviranju vašeg resursa.
Pomažemo raznim klijentima s njihovim internet marketingom i web stranicama, a jedno pitanje koje često dobijemo je „Kako dodati ključne riječi na web stranicu?“ Možete zamisliti kako dodajemo izuzetno komplikovane formule i kodove na ekran računara.
Ali istina je da su osnove lakše nego što mislite. Čak učimo naše klijente koji vode vlastite poslovne blogove kako da ključne riječi na svojim web stranicama daju lakše na pretraživačima. Cilj ovog članka na blogu je naučiti vas nekim osnovama o tome kako dodati ključne riječi na web stranicu. Niste sigurni da ne želite da uložite vrijeme? Pogledajte naše SEO usluge ovdje, rado ćemo vam pomoći.
Zašto biste trebali znati kako dodati ključne riječi na web stranicu?
Naučivši kako dodati ključne riječi na web stranicu, moći ćete da unesete ključne riječi u svoje blogove, web stranice i druge internet marketinške materijale. Takođe ćete dobiti kontekst zašto je SEO toliko važan za vaše poslovanje.
Kako dodavanje ključnih riječi na moju web stranicu može pomoći mom poslovanju?
Dodavanje ključnih riječi vašoj web stranici pomaže pretraživačima da shvate šta vaša web stranica može ponuditi nekome tko pretražuje i na kraju vam donijeti kvalificiraniji promet. Kako? Sa identifikatorima, poput ključnih riječi. Bez ključnih riječi na stranicama vaše web stranice nema načina da pretraživač kategorizira vašu web stranicu i prikaže je pravim ljudima koji pretražuju.Razmislite o tome na ovaj način, dobro napisan rad ima tezu i prateće argumente koji se odnose na tezu. Čitaoci dobro napisanih radova imaju jasno razumijevanje o čemu se radi i o čemu se radi. Ovo je ista teorija koja stoji iza Googlea i drugih pretraživača. U stvari, dva studenta sa Stanforda su kreirala Google sa istom idejom na umu.
Dobro napravljena web stranica ima glavnu temu, a često ima i podkategorije koje se odnose na glavnu temu, a ključnim riječima svakog od ovih područja možemo dati jasnu sliku pretraživačima, a ljudi koji pretražuju lakše će vas pronaći . Na primjer:
Vaša glavna tema može biti: Krofne
Vaše podkategorije ili teme mogu biti: Torta, Dougnut Holes, šipke,…
Odabir ključnih riječi za Vašu web stranicu
Sada kada ste razumjeli okvir web-mjesta i koliko je to važno, vrijeme je da odaberete ključne riječi. Kako? Koristimo brojne alate i vršimo opsežna istraživanja za naše ključne riječi; međutim jedan alat koji je besplatan je Google Keyword Tool. Jednostavno unesite informacije o vašoj lokaciji i kategoriju, a zatim unesite glavni predmet vaše web stranice. Alat će generirati brojne ključne riječi i dati vam statistiku poput ove:
Konkurencija:(Nisko, Srednje, Visoko) Ovo vam govori koliko ljudi pokušava ključnu riječ za tu riječ ili frazu. Što je veća konkurencija, teže je rangirati se visoko u Googleu za taj pojam za pretraživanje.
Globalni mjesečni obim: Koliko se globalno pretraži za taj pojam mjesečno.
Lokalni mjesečnik: Određuje se prema informacijama koje ste stavili u svoju pretragu. Ako ste naveli svoju lokaciju kao U.S. onda bi to bio broj mjesečnih pretraga tog pojma u SAD-u.
Iako je ovaj alat jednostavan za korištenje, sve ključne riječi se ne tretiraju isto. U stvari, neke ključne riječi vam donose više prometa od drugih, a neke bi vam mogle donijeti mnogo prometa koji se nikada ne pretvara. Zbog toga toplo preporučujemo vlasnicima preduzeća da angažuju agenciju koja je educirana za SEO i ključne riječi kako bi im pomogla u njihovom internet marketingu.
Koliko ključnih riječi trebam dodati po stranici?
Nakon što ste proveli istraživanje ključnih riječi, morat ćete odabrati jedna ključna reč za svaku vašu web stranicu ili blog. Ključne riječi treba da budu specifične za temu stranice i da se odnose na cjelokupnu temu vaše web stranice.
Primjer dobrog odabira ključne riječi:
Glavna tema web stranice: Krofna
Web stranica: Maple Donut
Dodijeljena ključna riječ: Najbolja javorova krofna
Primjer lošeg izbora ključne riječi:
Glavna tema web stranice: Krofna
Web stranica: Maple Donut
Dodijeljena ključna riječ: Recepti za krofne
Kako dodati ključne riječi na svoju web stranicu:
Kada dodajete ključne riječi na Vašu web stranicu, važno je da Vašu ključnu riječ uključite na 6 mjesta na svakoj stranici Vaše web stranice. Uključivanje vaše ključne riječi u ovih 6 područja pomoći će pretraživačima da identificiraju predmet vaše stranice i rangiraju vašu stranicu u rezultatima pretraživanja.
- Naslov stranice
- Meta Description
- Header
- Sub Header
- Stavovi tijela
- Image Alt Tags
Naslov stranice i meta opis:
Naslovi stranica i meta opisi su više tehnički dio ključnih riječi vaše web stranice. Međutim, važno je prepoznati koliko oni mogu biti vrijedni za vaše napore internet marketinga. Šta su naslovi stranica i meta opisi? Ovi dijelovi vaše web stranice se zapravo pojavljuju u rezultatima pretraživanja, oni su prvi utisak koji korisnik koji pretražuje dobije o vašoj web stranici.
Ako nemate pristup naslovima stranica ili meta opisima vaše web stranice, onda će biti važno da provjerite sa svojom kompanijom za upravljanje web lokacijom da li su ta područja ispravno popunjena za SEO.
Zaglavlja:
Zaglavlja su u velikoj mjeri poput bilborda za pretraživače. Oni su jedan od najvećih načina da se pretraživačima pokaže šta je vaš glavni predmet vaše stranice. Važno je da uključite cijelu ključnu riječ u zaglavlje.
Pod-zaglavlja:
Pod-zaglavlja su još jedno područje koje pretraživačima govori za šta želite da se stranica na web stranici pronađe. Zamislite ovu oblast kao nekretninu, ako ne pokušate da uključite svoje ključne reči u pod-zaglavlje, onda propuštate.
Stavak tijela:
Kada pišete osnovni sadržaj stranice vaše web stranice, trebali biste pokušati uključiti svoju ključnu riječ ili barem dijelove vaše ključne riječi. Ne zaboravite da vaše pisanje bude prirodno, pretraživači će vas zapravo kazniti ako pišete preko ključnih riječi i izgleda neprirodno. Kada prvi put pokušate pisati s ključnim riječima, možda će vam biti teško, ali nastavite da vježbate! Zaista postaje lakše, a vi ćete postati bolji u oblikovanju sadržaja za dodavanje ključnih riječi.
Image Alt Tags:
Slike su odličan dodatak svakoj web stranici, čak mogu pomoći tražilicama da vas rangiraju. Alt oznake su u suštini oznaka koju dodjeljujete svojoj slici tako da pretraživači mogu pročitati sliku. Ako ne koristite Alt oznake za slike, pretraživači to neće vidjeti. Ključnim riječima ovih slika Alt Tags govorite pretraživačima "Koristio sam sliku i ona se odnosi na temu moje stranice."
Evo ga, sada znate osnove kako dodati ključne riječi na web stranicu. Znamo da izgleda zastrašujuće, ali ako imate vremena za pisanje vlastitih blogova ili sadržaja na web stranici, toplo preporučujemo da koristite neke od gore navedenih savjeta. Ove taktike mogu vam donijeti više prometa na vašu web stranicu i pomoći vam da kvalificirate potencijalne klijente vaše web stranice. To znači da nema izgubljenih posjeta i više klijenata za vaše poslovanje.
Ako vam je ovaj članak ipak pomogao, molimo vas da ga 'podijelite' s prijateljem.
Već su me nekoliko puta pitali da napišem članak o tome kako implementirati pretragu na web stranici koristeći PHP. Ovo nije lak zadatak, čak bih rekao i vrlo težak, jer postoji ogroman broj nijansi i prepreka. U ovom članku ću analizirati algoritam pretraživanja web stranice.
Pretpostavimo da naša web stranica ima mnogo različitih materijala (članaka, vijesti, bilješki itd.). Sve ove stvari su u bazi podataka. A naš zadatak je implementirati pretragu na sajtu. Najjednostavniji algoritam je sljedeći:
- Stvoriti HTML forma sa trakom za pretragu, kao i dugmetom " Submit". Korisnici će unijeti upit za pretragu u tekstualno polje, a zatim kliknuti na dugme.
- Dobijte upit za pretraživanje (obično ga prosljeđuje metoda GET, ali ponekad i koriste POŠTA), a takođe i u cilju zaštite od XSS, proslijediti ga kroz funkciju htmlspecialchars().
- Napravite izbor iz odgovarajućih tabela (sa člancima, vijestima, bilješkama, itd.) onih zapisa koji sadrže upit za pretraživanje. Prikazujem primjer SQL upita za takve slučajeve: SELECT * IZ članaka GDJE `text_article` LIKE %search% Prema tome, umjesto traži string za pretragu je zamenjen.
- Nakon što dobijemo zapise, prikazujemo ih u potrebnom obliku, po mogućnosti po relevantnosti. Na primjer, uradio sam ovo na svojoj web stranici: tamo gdje ima najviše podudaranja, taj članak je najrelevantniji, stoga sam ga stavio na prvo mjesto. Najvjerovatnije će vam odgovarati i ovaj način procjene relevantnosti.
Mnogi od vas će reći da tu nema ništa komplikovano. I djelomično će biti u pravu, međutim, pogledajmo ovaj primjer niza za pretraživanje: " Tražim ovaj tekst". Postavlja se pitanje: " Šta tačno tražite?". Ili se traži tačno pojavljivanje teksta" Tražim ovaj tekst“. Ili se, možda, traži tekst gdje su prisutne sve tri riječi, ali koje možda ne slijede jedna za drugom. Ili se, možda, traži tekst gdje je prisutna barem jedna od ovih riječi.
I tu zadatak postaje znatno komplikovaniji. Možete kreirati složen sistem sintakse (kao u pretraživačima), na primjer, traži se tačna pojava ako je upit naveden u navodnicima. I možete dati korisnicima izbor kako tačno žele da izvrše pretragu (pomoću radio dugmadi). Ovako je to urađeno na mojoj web stranici. Stoga se prethodnom algoritmu dodaje još jedna točka: kompajliranje SQL upita. Evo primjera SQL upita kada trebate izvući sve materijale koji sadrže barem jednu riječ iz upita " Tražim ovaj tekst":
ODABERITE * IZ članaka GDJE (`text_article` KAO "% tražim%" ILI `text_article` KAO "% ovaj%" ILI `text_article` KAO "%text%")
U skladu s tim, u skripti za pretraživanje trebali biste generirati slično SQL upiti, poslati u bazu podataka, primiti odgovor i poslati ga. Ovo postaje još komplikovanije ako prikazujete postove prema relevantnosti, jer je teško odmah reći koji bi trebao biti relevantniji: 3 tačna pojavljivanja zahtjeva, ili 10 pojavljivanja dijelova upita. Na mom sajtu se uvek daje prednost tačnim pojavama, ali ova tačka je već prilično kontroverzna. Naravno, ovo je teško, a ako to radite prvi put, sigurno ćete provesti nekoliko sati. Nadam se da moj algoritam za implementaciju pretraživanja web stranica putem PHP-a To će ti pomoći.