PINQ - Sorğulanmış məlumat dəstləri. Faset axtarışı. Inline Facet Index JQuery UI Slider Patch: İstiqamətləndirmənin qurulması
( "sorğu": ( "və": [ ( "şərtlər": ("ölkə": ["ol", "fr"]) ), ( "şərtlər": ("kateqoriya": ["kitablar", "filmlər" "]))) ] ))
Sayğaclar üçün biz Elasticsearch-in daxili aqreqatlarından istifadə edə bilərik. İki aspektin hər biri indeksdə bir sahə kimi saxlanılır, ona görə də bu sahələrin hər birində terminlərin birləşməsindən istifadə edə bilərik. Toplama bu sahənin dəyəri üçün sayğac qaytaracaq.
( "sorğu": ( "və": [ ( "şərtlər": ("ölkə": ["ol", "fr"]) ), ( "şərtlər": ("kateqoriya": ["kitablar", "filmlər" "]) ) ] ), "aqreqasiyalar": ( "ölkələr": ( "terminlər": ("sahə": "ölkə") ), "kateqoriyalar": ( "terminlər": ("sahə": "kateqoriya") )))
Bu sorğunu icra etsəniz, sayğacların söndürüldüyünü görərdiniz. Seçilməyən iki ölkənin, Portuqaliyanın və Braziliyanın 0 sayları var. Baxmayaraq ki, biz onları seçmək istəsək, faktiki nəticələr var (və ya daxili kənara görə). Bunun səbəbi, defolt olaraq, Elasticsearch öz toplamalarını nəticə dəstində yerinə yetirməsidir. Bu o deməkdir ki, Fransanı seçsəniz, digər ölkə filtrləri 0 balı olacaq, çünki nəticə dəstində yalnız Fransa elementləri var.
Bunu düzəltmək üçün biz Elasticsearch-a sorğuya məhəl qoymadan bütün verilənlər bazasında aqreqasiyanı yerinə yetirməyi tapşırmalıyıq. Biz bunu klasterlərimizi qlobal olaraq təyin etməklə edə bilərik.
( "sorğu": ( "və": [ ( "şərtlər": ("ölkə": ["ol", "fr"]) ), ( "şərtlər": ("kateqoriya": ["kitablar", "filmlər" "]) ) ] ), "toplamalar": ( "bütün_məhsullar": ( "qlobal": (), "toplamalar": ( "ölkələr": ( "şərtlər": ("sahə": "ölkə") ), " kateqoriyalar": ( "terminlər": ("sahə": "kateqoriya") ) ) ) ) )
Sadəcə bunu etsəydik, sayğaclarımız həmişə eyni olardı, çünki filtrlərimizdən asılı olmayaraq həmişə bütün məlumat dəstinə arxalanırdılar. Aqreqatlarımız bir az daha mürəkkəbləşməlidir, bunun işləməsi üçün onlara filtrlər əlavə etməliyik. Hər bir aqreqasiya özündən başqa bütün filtrlərin tətbiq olunduğu verilənlər bazasına etibar etməlidir. Beləliklə, Fransada hesab üçün aqreqasiya ölkə filtrinə deyil, kateqoriya filtrinin tətbiq olunduğu verilənlər toplusuna əsaslanır:
( "sorğu": ( "və": [ ( "şərtlər": ("ölkə": ["ol", "fr"]) ), ( "şərtlər": ("kateqoriya": ["kitablar", "filmlər" "]) ) ] ), "toplamalar": ( "bütün_məhsullar": ( "qlobal": (), "toplamalar": ( "ölkələr": ( "filtr": ( "və": [ ( "şərtlər": ( "kateqoriya": ["kitablar","filmlər"]) ) ] ), "toplamalar": ( "süzülmüş_ölkələr": ( "terminlər": ("sahə": "ölkə") ) ) ), "kateqoriyalar": ( "filtr": ( "və": [ ( "şərtlər": ("ölkə": ["olmaq","fr"]) ) ] ), "toplamalar": ( "filtered_categories": ( "terms": (" sahə": "kateqoriya") )))
( "aldı": 153, "vaxt bitdi": false, "_shards": ( "cəmi": 5, "uğurlu": 5, "uğursuz": 0 ), "vuruşlar": ( "cəmi": 3, "maksimum_score" ": 0, "hits": ["..."] ), "aqreqasiyalar": ( "bütün_məhsullar": ( "sənəd_hesabı": 21, "süzülmüş kateqoriyalar": ( "sənəd_sayısı": 13, "kateqoriyalar": ( "doc_count_error_upper_bound": 0, "sum_other_doc_count": 0, "buckets": [ ( "açar": "filmlər", "doc_count": 6 ), ( "açar": "music", "sənəd_sayısı": 4 ), ( "açar": "kitablar", "sənəd_hesabı": 3 ) ] ) ), "filtrlənmiş_ölkələr": ( "sənəd_hesabı": 15, "ölkələr": ( "doc_count_error_upper_bound": 0, "sum_other_doc_count": 0, "buckets": [ ( "açar": "fr", "doc_count": 6 ), ( "açar": "br", "doc_count": 4 ), ( "açar": "ol", "sənəd_hesabı": 3 ), ( "açar": "pt", "doc_count": 2 ) ] ))) ) )
Yii2 çərçivəsi $terms = QueryHelper::terms("categories.name" , "mənim kateqoriyam" ); $nested = QueryHelper:: nested ("string_facet" , QueryHelper:: filter ([ QueryHelper:: termin ("string_facet.facet_name" , [ "value" => $id , "boost" => 1 ] ) , QueryHelper:: termin ("string_facet.facet_value" , [ "value" => $value , "boost" => 1 ] ) , ] ) ); $filter = QueryHelper:: should ($nested ) ;Faceted naviqasiya bütün e-ticarət saytları üçün problemdir. Eyni elementin müxtəlif varyasyonları üçün istifadə edilən həddindən artıq sayda səhifə axtarışın effektivliyinə təhlükə yaradır. Bu, SEO-ya mənfi təsir göstərə bilər və istifadəçi təcrübəsi. Faceted naviqasiya nədir və onu necə təkmilləşdirmək olar, SEO Hacker bloqunun mütəxəssisləri bildiriblər.
Faceted naviqasiya: tərifBu növ naviqasiya adətən e-ticarət saytlarının yan panellərində tapılır, filtrlər və aspektləri ehtiva edir - istifadəçinin istədiyi kimi konfiqurasiya etdiyi seçimlər. onlayn mağazaların müştərilərinə istifadəçilər ehtiyac duyduqlarını tapana qədər məhsulları süzgəcdən keçirəcək atributların birləşməsindən istifadə edərək istədikləri məhsulu axtarmağa imkan verir.
Fasetlər və filtrlər fərqlidir. Budur fərq:
- Fasetlər indekslənmiş kateqoriyalardır. Onlar məhsul siyahılarını dəqiqləşdirməyə kömək edir və əsas kateqoriyaların uzantısı kimi çıxış edirlər. Fasetlər istifadəçinin etdiyi hər seçim üçün unikal dəyər əlavə edir. Fasetlər indeksləşdirildiyi üçün, səhifədə bütün vacib atributların olmasını təmin edərək, axtarış sisteminə müvafiq siqnallar göndərməlidirlər.
- Filtrlər siyahılardakı elementləri çeşidləmək və dəqiqləşdirmək üçün istifadə olunur. Onlar istifadəçilər üçün lazımdır, lakin axtarış motorları üçün deyil. Filtrlər indeksləşdirilmir, çünki onlar səhifənin məzmununu dəyişdirmirlər, sadəcə onu fərqli qaydada çeşidləyirlər. Bu, dublikat məzmuna malik çoxlu URL ilə nəticələnir.
Hər bir mümkün faset birləşməsinin özünəməxsus URL-i var. SEO baxımından bəzi problemlər yarada bilər. Əsas olanlar bunlardır:
- Dublikat məzmun.
- Skanlama üçün büdcə xərcləmək.
- Bağlantı fərqlərini aradan qaldırın.
Saytınız böyüdükcə dublikat səhifələrin sayı da artır. Daxil olan keçidlər müxtəlif dublikat səhifələrə gedə bilər. Bu, bağlantıların dəyərini azaldır və səhifə sıralama imkanlarını məhdudlaşdırır.
O, həmçinin cannibalizasiya ehtimalını artırır. açar sözlər. Birdən çox səhifə eyni açar sözlər üçün sıralamağa çalışır, nəticədə daha az stabil və daha aşağı reytinqlər əldə edilir. Hər bir açar söz yalnız bir səhifəni hədəfləsəydi, bu problemdən qaçınmaq olar.
Fasetli naviqasiya üçün həllərÜzlü naviqasiya probleminin həllini seçərkən, son məqsədinizi unutmayın: indeksləşdirilmiş səhifələrin sayını artırın və ya indeksləşdirilməsini istəmədiyiniz səhifələrin sayını azaldın. Budur sizin üçün faydalı ola biləcək bəzi həllər:
AJAXAJAX istifadə etsəniz, istifadəçi bir faset və ya filtrə kliklədikdə yeni URL yaradılmır. Fasetlərin hər bir mümkün kombinasiyası üçün unikal URL-lər olmadığından, dublikat məzmun problemi, açar sözlərin cannibalizasiyası və indeksləşdirmə xərclərinin xərclənməsi potensial olaraq aradan qaldırılır.
AJAX yalnız e-ticarət saytının işə salınmasından əvvəl təsirli ola bilər. Onsuz da mövcud resursların problemlərini həll etmək üçün istifadə edilmir. Həmçinin, bu üsul sizin tərəfinizdən müəyyən xərclər tələb edir.
noindex etiketiNoindex teqi botlara müəyyən bir səhifəni indeksdən çıxarmaq üçün istifadə olunur. Buna görə də Google axtarış nəticələrində görünməyəcək. Bu, indeksdə və axtarış nəticələrində görünən dublikat məzmunun miqdarını azaldır.
Bu, tarama büdcəsi məsələlərini həll etməyəcək, çünki botlar hələ də səhifənizi ziyarət edəcək. O, həmçinin link dəyərini paylamağa kömək etmir.
rel = kanonik atributBu atributla siz Google-a indeksləşdirmək və sıralamaq üçün bir əsas üstünlük verdiyiniz səhifənizin olduğunu və həmin səhifədəki bütün digər məzmun versiyalarının sadəcə olaraq indeksləşdirilməsinə ehtiyac olmayan dublikat olduğunu bildirirsiniz.
Sofiya İbrahimova
Məzmun marketoloqu
Saytınızdakı eyni səhifəyə birdən çox URL-dən daxil olmaq olarsa, axtarış motorları hər bir URL-i ayrıca səhifə kimi nəzərdən keçirəcək. Botlar saytınızdakı məzmunun unikal olmadığına qərar verəcək və bu, reytinqə mənfi təsir göstərəcək və SERP-də mövqenizi aşağı salacaq. Bunun qarşısını almaq üçün HEAD blokuna aşağıdakı simvol ardıcıllığını daxil etməklə əsas kanonik səhifəni təyin edin:
Dublikat məzmun problemini həll etmək üçün kanonik səhifələrdən istifadə edə bilərsiniz və paylaşım linki əsas səhifənizlə birləşdiriləcək. Ancaq botların yenə də dublikat səhifələri tarama şansı var və bu, tarama büdcəsinin israfıdır.
Robots.txtBəzi səhifələri indeksləşdirmədən bağlamaq sizə nail olmağa imkan verir yaxşı nəticələr. Bu sadə, sürətli və etibarlı yol. Blok etmək istədiyiniz bütün mümkün faset və filtr birləşmələrini təyin etmək üçün fərdi seçim qurmaq ən əlverişlidir. Onu gizlətmək istədiyiniz hər bir URL-in sonuna daxil edin (http://tam səhifə ünvanı/robots.txt) və ya səhifə kodunun HEAD sahəsində Robotlar meta teqindən istifadə edin.
URL-i dəyişdirərkən xatırlamaq lazımdır ki, robotların bu dəyişiklikləri fərq etməsi və onlara reaksiya verməsi 3-4 həftə çəkir.
Burada da müəyyən problemlər var. Bağlantıların dəyəri məhdud olacaq, həmçinin xarici keçidlərin olması səbəbindən bloklanmış URL indeksləşdirilə bilər.
Konsol Google axtarışBu, daha yaxşı və daha rahat naviqasiya sistemi qurmaq üzərində işləyərkən problemlərinizi müvəqqəti həll etmək üçün əla bir yoldur. Google Axtarış Konsolundan istifadə edərək axtarış sisteminə saytınızı necə taramaq lazım olduğunu söyləyə bilərsiniz.
- Daxil olun hesab konsolu açın və "Skanlama" bölməsini seçin (Tarama):
- "URL Parametrləri" düyməsini basın:
- Parametrlərinizin hər birinin səhifəyə təsirini və Google-un bu səhifələrlə necə davranacağını göstərin.
Unutmayın ki, bu üsul yalnız Google tarayıcılarından dublikat məzmunu gizlədir. Bing və Yahoo səhifələri hələ də görünəcək.
Faceted naviqasiyanı necə təkmilləşdirmək olarDüzgün üzlü naviqasiya yaratmağa imkan verən bütün üsulları qısaca nəzərdən keçirək:
- AJAX istifadə
- Heç bir məzmunu olmayan kateqoriyalara və ya filtr səhifələrinə keçidləri silin və ya gizləyin.
- Yüksək axtarış həcminə malik olan müəyyən faset birləşmələrinin indeksləşdirilməsinə icazə verin
- Kateqoriyalar və alt kateqoriyalardakı çörək qırıntıları vasitəsilə sayt iyerarxiyasını qurun.
- Dublikat məzmun üçün kanonik (əsas) səhifələrin yaradılması.
- rel = "next" və rel = "prev" ilə səhifə işarələməsindən istifadə edərək komponent səhifələrindən bütün sıraya indeksləşdirmə xassələrinin konsolidasiyası.
Qeyd olunan həllərin hər birinin öz üstünlükləri və mənfi cəhətləri var. Universal bir həll yoxdur, hamısı işinizin xüsusiyyətlərindən və konkret vəziyyətdən asılıdır. Optimallaşdırılmış üzlü naviqasiya saytınıza daha geniş açar sözləri hədəf almağa imkan verəcək. Riskdən qaçmaq üçün naviqasiyanın təkcə axtarış robotlarının tələblərinə cavab vermədiyinə, həm də istifadəçi təcrübəsi baxımından rahat olduğuna əmin olun.
Müasir insan alış-verişə getdikcə daha az vaxt sərf etməyə çalışır. Yavaş məhsul kataloqları müştəriləri dəf edir, mağaza müştərilərini və qazancının bir hissəsini itirir. Faceted texnologiya ilə onlayn mağazanızı daha cəlbedici edin əvvəlcədən təyin edilmiş. axtarış. Üzlü indekslər yaradın və məhsulların axtarışını və bütün kataloqun işini əhəmiyyətli dərəcədə sürətləndirin.
Qeyd: Fasetli axtarış mexanizmi İnformasiya Blokları modulunun 15.0.1 versiyasından mövcuddur və Komponent komponenti ilə inteqrasiya olunub - bu, məlumatları İctimaiyyətdə göstərmək üçün modulun xüsusi funksiyasını yerinə yetirən vizual qabıq kimi hazırlanmış proqram kodudur. Hissə. Bu kod blokunu birbaşa kod yazmadan sayt səhifələrinə yerləşdirə bilərik. Ağıllı filtr Komponent infoblokdan seçmək üçün filtr hazırlayır və elementləri süzmək üçün filtr formasını göstərir. Komponent kataloq elementinin çıxış komponentindən əvvəl birləşdirilməlidir, əks halda elementlərin siyahısı filtrlənməyəcək. Komponent standartdır, modulun paylama dəstinə daxildir və üç şablondan ibarətdir: .default , visual_horizontal və visual_vertical . (Son iki nümunə dəstəklənmir və uyğunluq səbəbi ilə buraxılır.)
IN vizual redaktor komponent yol boyu yerləşir Məzmun > Kataloq > Ağıllı Filtr.
Komponent İnformasiya Blokları moduluna aiddir.
Bir misala baxaq: Onlayn mağazaya gedirik və filtrdə qırmızı köynək lazım olduğunu seçirik:
|
Bir neçə sadə addımda üzlü indekslər yaradaq:
Faceted indekslər avtomatik olaraq yenidən yaradılır və ya yerinə yetirilən hərəkətlərdən asılı olaraq onları əl ilə yenidən yaratmalısınız:
|
Faceted axtarış məhsul kataloqunun işini yaxşılaşdırır. Onu istifadə etmək üçün sizə lazımdır:
Bugünkü dərsimizdə Javascript-dən istifadə edərək simulyasiya edilmiş üzlü (fasetli) axtarışı yenidən yaratmağa çalışacağıq. Demək istəyirəm ki, siz bu təlimatı oxumaqla üzlü axtarışın nə olduğunu artıq bilirsiniz, əks halda google-a daxil olun və ya amazon və ya demomu yoxlayın. Əvvəlcə github.com/eikes/facetedsearch kitabxanasına ehtiyacımız var. Onu endirin və facetedsearch.js faylını layihəmizə daxil edin. Bizə jQuery və Underscore kitabxanaları da lazım olacaq. İmtina: Mən başa düşürəm ki, JQ artıq tort deyil, amma mən onu adi sintaktik şəkər kimi istifadə edirəm, siz onu daha tanış kitabxanalara və ya vanil JS-ə kəsə bilərsiniz. Beləliklə, əvvəlcə əlaqəli asılılıqlarla sadə bir işarələmə edək: Sənəd // Burada üzlü filtrləri göstərəcəyik // Burada bizim elementlərimiz olacaq İndi tətbiqimizin parametrlərini təsvir etməliyik və fasetlərdən istifadə edərək çeşidləyəcəyimiz massiv elementlərini göstərmək üçün şablon yaratmalıyıq: $(function()( var item_template = // "" + " şablonunun təsviri Yaxşı, əslində JSON massivinin özünü JS-də üzlü axtarışımızda göstərmək üçün elementlərlə yaradın: Var maddələr = [ ( "ad": "Məryəm", "soyad": "Smith", "imageURL": "http://lorempixel.com/150/150/cats/2", "təsvir": "Sed Ea Amet. Stet Voluptua. Nonumy Magna Takimata ", "kateqoriya": "Siçan", "dil": ["Smalltalk", "XSLT"], "kontinent": "Afrika"), ( "ad": "Patricia" ", "soyad": "Johnson", "imageURL": "http://lorempixel.com/150/150/cats/3", "description": "Ut Takimata Sit Aliquyam Labore Aliquyam Sit Sit Lorem Amet. Ipsum Rebum ." , "kateqoriya": "Aslan", "qitə": "Şimali Amerika"), ... ]; Verilmiş massiv Mən onu, məsələn, verilənlər bazasından dinamik şəkildə formalaşacaq ayrı bir JS faylına qoyardım. Hamısı budur, biz JavaScript-də üzlü axtarış əldə edirik və biz onu fərdiləşdirə bilərik. Sonra, sizə lazım olan tetikleyicileri görə biləcəyiniz kitabxananın tərcümə edilmiş sənədlərini təqdim edirəm. Sənədləşdirmə Xüsusiyyətləriİki funksiya jQuery ad sahəsinə ixrac olunur. facetelize Verilmiş parametrlərlə üzlü axtarışı başlamaq üçün istifadə olunur. facetUpdate Faset axtarış vəziyyətini kənardan dəyişmək istəyirsinizsə istifadə edilə bilər. Obyekt parametrlərielementlər: Prosesdə süzülməli və çeşidlənəcək elementlər massivi. Fasetlər: Düymələri element açarlarına və dəyərlərinə uyğun gələn obyekt bu fasetin başlığıdır. Elementlər həmin açarlar üçün hansı dəyərə malik olduğuna görə filtrlənəcək. orderByOptions: Fasetlərə bənzər, bu açar/dəyər cütləri istisna olmaqla, yalnız çeşidləmə üçün istifadə olunur. RANDOM açarı aktiv olduqda, nəticələr təsadüfi ola bilər. facetSelector: Bu, faset filtrlərinin seçildiyi DOM nodeunu tapmaq üçün istifadə edilən seçicidir. resultSelector: Bu, nəticələrin göstərildiyi DOM nodeunu tapmaq üçün istifadə edilən seçicidir. resultTemplate: Maddələr massivindən hər bir elementi göstərmək üçün Alt Çizgi şablon mühərriki tərəfindən istifadə edilən sətir. Şablonda da istifadə oluna bilən hər bir elementə aşağıdakı atributlar əlavə olunur: batchItemNr , batchItemCount və totalItemCount . dövlət: Bu obyekt cari filtrləri saxlayır, çeşidləyir: currentResult və başqaları. Onları əvvəlcədən konfiqurasiya etmək üçün orderBy sətri və ya filtrlər obyekti təqdim edə bilərsiniz. enablePagination: paginalor və "daha çox yükləmə" düyməsini aktivləşdirmək üçün Boolean, defolt olaraq doğrudur. paginationCount: Səhifələşdirmə aktivdirsə, hər səhifəyə elementlərin sayını təyin edir, standart 50-dir. facetSortOption: Faset elementlərinin sırasını dəyişmək üçün bu funksiyadan istifadə edin. Düymələrin faset adlarına və dəyərlərə uyğun olduğu obyekti görmək istədiyiniz ardıcıllıqla düzülə bilən faset dəyərləri massivinə aparır. Bu nümunə qitələri fərqli ardıcıllıqla sıralayacaq, massivdə olmayan elementlər əlifba sırası ilə əlavə olunacaq: FacetSortOption: ("qitə": ["Şimali Amerika", "Cənubi Amerika"]) Daha bir neçə şablon var, hamısını görmək üçün facetedsearch.js mənbə koduna baxın mövcud variantlarşablon. HadisələrSiz bəzi tədbirlər baş verdikdə bildiriş göndərməli olan bəzi hadisələri bağlaya bilərsiniz. Bunun üçün jQuery hadisə sistemindən istifadə edirik: facetuicreated: Siz bu funksiyanı DOM elementi settings.facetSelector ilə əlaqələndirə bilərsiniz və bu UI yaradılan zaman xəbərdar edilməlidir. facetedsearchresultupdate: Yeniləmə nəticələrindən xəbərdar olmaq üçün bu funksiyanı settings.resultSelector DOM elementinə bağlaya bilərsiniz. facetedsearchfacetclick: Bu hadisə faset kliklədikdə və settings.facetSelector elementində işə salındıqda işə salınır. Hansı ki, faset identifikatorunu arqument kimi alır. facetedsearchorderby: Bu hadisə, settings.facetSelector elementində çeşidləmə elementi kliklədikdə işə salınır. O, arqument kimi şəxsiyyət vəsiqəsi sifarişini alır. $(settings.resultSelector).bind("facetedsearchresultupdate", function()( // nəsə etmək, bəlkə də )); Bu yazıda (webmaster səviyyəsi - qabaqcıl), biz sözdə müxtəlif yollarla kəsişən haqqında danışacağıq. üzlü naviqasiya. Materialın mənimsənilməsini asanlaşdırmaq üçün mən Wikipedia məqaləsini nəzərdən keçirməyi məsləhət görürəm "Facet təsnifatı" və nəşrlər Ingilis dili(lakin şəkillərlə!) "Veb saytlarınız üçün daha yaxşı yönlü naviqasiya dizayn edin ". Rəng və ya qiymət diapazonuna görə süzgəcdən keçirilmiş üzlü naviqasiya ziyarətçiləriniz üçün faydalı ola bilər, lakin çox vaxt dublikat məzmunlu çoxsaylı ünvan kombinasiyaları yaratmaqla axtarışa zərər verir. Dublikatlara görə Axtarış motorları onlar müvafiq olaraq indeksləşdirməyə təsir edən məzmun yeniləmələri üçün saytı tez bir zamanda skan edə bilməyəcəklər. Bu problemi minimuma endirmək və veb ustalarına üzlü naviqasiyanı axtarışa uyğunlaşdırmağa kömək etmək üçün biz istərdik: İstifadəçilər və Google axtarışı üçün idealdır Məhsullara/məqalə səhifələrinə gedən yolu təmizləyin: Kateqoriya səhifəsi üçün URL-i təmsil edən: Müəyyən bir məhsul üçün URL-i təmsil etmək: Üzlü naviqasiyanın səbəb olduğu arzuolunmaz dublikatlar Eyni səhifəyə müxtəlif internet ünvanlarından daxil olmaq mümkündür: Kanonik səhifə URL: example.com/product.php? maddə = isveç-balıq Dublikat səhifə URL:example.com/product.php? item=isveç-balıq&kateqoriya=saqqızlı-şirniyyat&qiymət=5-10 kateqoriya=saqqızlı-şirniyyatlar&dad=turş&qiymət=5-10 Səhvlər:
URL: example.com/category.php? kateqoriya=saqqızlı konfetlər&dad=turş&qiymət=10-dan çox Səhvlər:
Nümunə №1: URL-də qeyri-standart parametrlər istifadə olunur: vergüllər və mötərizələr, əvəzinə açar=dəyər&:
example.com/category?category=gummy-candy&sort=low-to-high&sid=789 Nümunə №2: Səhifənin məzmununu dəyişdirməyən dəyərlər siyahısında seçimlər əvəzinə qovluqlardan və ya fayl yollarından istifadə: Yaxşı qərar:
Səhifənin məzmununu dəyişdirməyən və URL parametrləri kimi qeyd edilməli olan ümumi dəyərlərə aşağıdakılar daxildir:
Taranan və indekslənmiş URL-lərdə sayt istifadəçiləri tərəfindən yaradılan kiçik məlumatlardan (məsələn, uzunluq/enlem və ya "günlər əvvəl") istifadə:
İstifadəçi-agent: * İcazə vermə: /filtrləmə/ Nümunə №4. Məntiqsiz URL parametrlərinin əlavə edilməsi.
Nümunə №5: Boş nəticələr olduqda əlavə dəqiqləşdirmələr (süzgəc) təklif edin. Pis: İstifadəçiləri məyus edən və axtarış motorları üçün lazımsız sorğulara səbəb olan sıfır nəticələri olan səhifənin dəqiqləşdirilməsi (məsələn, qiymət=10-dan yuxarı). Necə: Sıfır nəticə ilə səhifənin göstərilməsi (məsələn, qiymət=10-dan yuxarı) icazə verilmir, üstəlik istifadəçilərin lazımsız kliklər etməsi qadağandır və axtarış motorları bunu taramaz. faydalı səhifə. Yalnız məhsullar mövcud olduqda URL yaratmaqla lazımsız URL-lərin qarşısını almaq və ziyarətçi yerini minimuma endirmək lazımdır. Bu, istifadəçilərin saytınızda məşğul olmasına kömək edəcək (heç bir məhsul tapılmadıqda geri düyməsinə daha az klik), axtarış motorlarına məlum olan mümkün URL-lərin sayını azaldacaq. Həmçinin, əgər səhifə sadəcə "müvəqqəti olaraq tükənib" deyilsə, lakin heç vaxt müvafiq məlumatı ehtiva etməyəcəksə, ona 404 cavab kodu verməyi düşünün. 404 səhifəsində daha çox naviqasiya variantı və ya axtarış qutusu olan istifadəçilər üçün faydalı mesaj tərtib edə bilərsiniz ki, istifadəçilər əlaqəli məhsulları tapa bilsinlər. Veb ustaları üzlü naviqasiya tətbiq etməyi düşünən yeni saytlar üçün unikal məzmun səhifələrinin taramasını (saytınızdakı ünvanlar toplusu Googlebot-a məlumdur) optimallaşdırmaq və dublikat səhifələrin axtarış sistemində indeksləşdirilməsini (indeksləşdirmə siqnallarının konsolidasiyası) azaltmaq üçün bir neçə variant var. Axtarış motorlarının məzmunun hər bir fərdi səhifəsini taraması üçün hansı URL parametrlərinin tələb olunduğunu müəyyənləşdirin (yəni, hər bir elementə ən azı bir klik yolunu yaratmaq üçün hansı parametrlərin tələb olunduğunu müəyyənləşdirin). Tələb olunan parametrlərə element-id, kateqoriya-id, səhifə və s. daxil ola bilər. Hansı parametrlərin sorğuları ilə ziyarətçilərə faydalı olacağını və hansı parametrlərin tarama və indeksləşdirmə zamanı təkrarlanmaya səbəb olacağını müəyyənləşdirin. Şirniyyat (marmelad) nümunəsində "dad" URL parametri nümunədə dad=turş sorğuları olan istifadəçilər üçün dəyərli ola bilər. Bununla belə, "qiymət" parametrini kateqoriya=gummy-condies&taste=sour&price=over-10-un lazımsız təkrarlanmasına səbəb olduğunu düşünmək məntiqlidir. Digər ümumi nümunələr:
Seçim 1: və daxili bağlantılar Bütün lazımsız URL-ləri ilə işarələyin. Bu, əmək xərclərini azaldacaq axtarış robotu və tarama sürətinin düşməsinin qarşısını alır. Siz robots.txt vasitəsilə taramanı qlobal şəkildə idarə etməlisiniz (Tərcüməçinin qeydi: "" məqaləsinə baxın). Seçim 2: Robots.txt və Disallow Lazımsız parametrləri olan URL-lər robots.txt-də bağlanacaq /filtrləmə/ kataloquna daxil edilir (qadağan olunmur). Bu, bütün axtarış motorlarına saytın yalnız "düzgün" daxili keçidini (məzmunu) taramasına imkan verəcək, lakin bir anda istənməyən URL-lərin taranmasını bloklayacaq. Məsələn (example.com/category.php?category=gummy-candies ), dəyərli parametrlər element, kateqoriya və dad olsaydı və sessiya id və qiyməti lazımsız olsaydı, zövq üçün URL belə olardı: Seçim 3: Hostları ayırın Buna əmin olun ən yaxşı həllər, yuxarıda sadalanan (məsələn, lazımsız ünvanlar üçün) hələ də tətbiq olunur. Əks halda, axtarış motorları artıq indeksdə böyük bir keçid kütləsi formalaşdırıb. Beləliklə, işiniz gələcək artımı azaltmağa yönəldiləcəkdir. lazımsız səhifələr ilə baxılır google robotu və indeksləşdirmə siqnallarının konsolidasiyası. Standart kodlaşdırma və açar=dəyər formatı ilə parametrlərdən istifadə edin. Səhifənin məzmununu dəyişdirməyən dəyərlərin, məsələn, sessiya identifikatorlarının kataloqlar deyil, açar=dəyər kimi həyata keçirildiyinə əmin olun. Filtr etmək üçün heç bir element olmadıqda kliklərə icazə verməyin və URL-lər yaratmayın. URL parametrlərinin xəritələşdirilməsinə məntiq əlavə edin: hər zaman dəyər əlavə etmək əvəzinə lazımsız parametrləri silin (məsələn, belə bir keçid yaratmaqdan çəkinin: example.com/product?cat=gummy-candy&cat=lollipops &cat=gummy-candy&item=swedish- balıq). Dəyərli parametrləri əvvəlcə siyahıya salmaqla URL-də saxlayın (çünki URL-lər axtarış nəticələrində görünür) və daha az uyğun parametrləri isə sonuncu (məsələn, sessiya ID-si). Nə vaxt əmin olun JavaScript istifadə edərəküçün dinamik nəzarət URL-i yeniləmədən məzmun (çeşidləmə/filtr/gizlətmək) üçün saytınızda axtarış dəyərinə malik real veb ünvanlar var, məsələn, tarama və indeksləşdirilə bilən əsas kateqoriyalar və məhsul səhifələri. Yalnız istifadə etməməyə çalışın ana səhifə Bütün saytınız üçün (yəni bir URL) və naviqasiyanın məzmununu dinamik şəkildə dəyişdirmək üçün JavaScript vasitəsilə - bu, təəssüf ki, istifadəçilərə axtarışda yalnız bir URL verəcəkdir. Həmçinin dinamik filtrləmənin performansa təsir etmədiyinə əmin olun ən pis tərəfi, çünki istifadəçinin saytla işləməsinə mane olacaq. Səhifənin imtiyazlı versiyasında rel="canonical" atributunu göstərməklə eyni məzmunlu müxtəlif səhifələrin indeksləşdirilməsini təkmilləşdirin. rel="canonical" atributu bir və ya bir neçə domen daxilində istifadə edilə bilər. "Səhifələnmiş" məzmunun indeksləşdirilməsini (məsələn, "saqqızlı konfetlər" kateqoriyasından səhifə=1 və səhifə=2) (hər ikisi) ilə optimallaşdırın:
|