Blog

SEO-tanulságok a saját oldalunk javításából

Néhány napot töltöttünk azzal, hogy a saját oldalunkat úgy olvassuk, ahogy egy keresőmotor. Hat dolgot találtunk, amit érdemes javítani. Minden oldal két FAQ-blokkot deklarált, a Google egy dekoratív háttérfényt használt bélyegképként, egy sablonoldal-csoport olyan keresésekre rangsorolt, amelyekre nem válaszolt, az oldal egy új szekcióját pedig a saját edge-ünk blokkolta stagingen. Egyik sem volt drámai. Mindegyik csendben csökkentette a láthatóságunkat.

Az oldal egy bekezdésben

A mythex.ai egy egyoldalas app, amelyet build időben előrenderelünk: egy szkript bejárja az összes útvonalat, minden oldalhoz statikus HTML-fájlt ír, és beilleszti az oldal címét, leírását és strukturált adatait (a JSON-LD blokkot, amely megmondja a keresőmotoroknak, mi az oldal — lásd: mi a strukturált adat). A következők nagy része ebben az előrenderelési lépésben él, mert ezt a HTML-t olvassa a crawler.

1. Minden oldal a FAQ-oldalnak mondta magát

Tünet. A HTML-sablonunk egy oldalszintű FAQPage blokkot tartalmazott a strukturált adatai között, az URL-je a /faq-ra mutatott. Az előrenderelés ezután minden oldal saját FAQPage-ét hozzáadta. Így minden oldalon kettő volt — az adatvédelmi szabályzatunk pedig azt mondta a Google-nek, hogy ő a FAQ-oldal.

Miért számít. A Google oldalanként legfeljebb egy FAQPage-et vár. Egy második, máshová mutató jelölés nemcsak figyelmen kívül marad, hanem az oldal jelölését is leértékelheti.

Javítás. Az globális blokk megszűnt. Minden oldal FAQ-jelölése egy helyről jön, beleértve a /faq-ot is, amely a kérdések teljes listájából építi fel. Azok az oldalak, amelyeknek nincs FAQ-ja, már nem deklarálnak egyet, ami az őszinte válasz. Az előrenderelés pedig megbukik a build-et, ha bármelyik oldalon ismét több mint egy FAQPage lesz. Az a szabály, amely csak valakinek a fejében létezik, előbb-utóbb megszegődik; az a szabály, amelyet a build kikényszerít, nem.

2. A Google rossz képet használt rólunk

Tünet. A keresési találatokban a Mythex bélyegképe a főoldali hős mögötti lüktető fény volt — egy dekoratív háttérkép —, nem a megosztási kártyánk.

Miért történt. Soha nem mondtuk meg a Google-nek, melyik kép képviseli az oldalt, ezért azt választotta, amelyet talált.

Javítás. Ennek két oldala van:

  • Mondd meg, melyik kép az oldalé. A főoldalnak most van egy WebPage csomópontja, amelynek primaryImageOfPage mezője a megosztási kártyára mutat, és minden előrenderelt oldal strukturált adata saját képet hordoz (az oldal megosztási képe, vagy az alapértelmezett).
  • Rejtsd el a dekorációt. A háttérképek most tiltva vannak a robots.txt-ben, és noindex, noimageindex fejléccel szolgáljuk ki őket, így kimaradnak a képkeresésből és a bélyegképekből.

3. A keresőmotorok csak a logónkat ismerték

A Organization jelölésünkben volt név, logó és néhány közösségi link — márkaépítés, semmi más. A keresőmotorok a cégek tudáspaneljét nyilvántartásszerű adatokból építik, ezért hozzáadtuk azokat, amelyek a cégbejegyzési okiratunkon szerepelnek: a bejegyzett nevet, az alapítás dátumát, az alapítót és a bejegyzett székhelyet. A telefonszámot szándékosan kihagytuk.

4. A sablonoldalak rossz kérdésre válaszoltak

Tünet. A Search Console három sablonoldalt mutatott, amelyek megjelenéseket gyűjtöttek kattintás nélkül. Az egyik a „content strategist portfolio” és variánsai keresésére rangsorolt, egy másik a „best italian restaurant website design” keresésre, a harmadik pedig az „agile board” köré csoportosuló keresésekre — ezek fele tartalmazta a „free” szót. A pozíciók a 20-as évek közepétől az 50-es évekig terjedtek.

Miért. Minden oldal más kérdésre válaszolt, mint amit a keresők feltettek. Aki olasz étterem-dizájnra volt kíváncsi, egy építőt áruló oldalra került.

Javítás. Mindhárom most kapott egy szekciót, amely a keresésnek szól, nem a terméknek; a címet és leírást azokkal a szavakkal írtuk meg, amelyeket az emberek beírnak; és a már kibocsátott FAQ-jelölésükhöz méltó kérdéseket adtunk.

Ugyanez a commit egy csendesebb problémát is javított. A „kapcsolódó sablonok” blokk egy kategória első négy sablonját vette, így minden portfólió-sablon ugyanarra a négy portfólióra mutatott, a kategória többi része pedig egyáltalán nem kapott belső linket. Ezt egy alkategória szerint rendezett körre cseréltük: minden sablonoldal pontosan négy be- és négy kimenő linket kap. Az előrenderelt HTML most ezeket a linkeket is kiírja — korábban csak a JavaScript futása után léteztek, amit egy crawler soha nem biztos, hogy lefuttat.

5. Új oldalak azonnali jelzése a Bingnek

A Google figyelmen kívül hagyja az IndexNow-t, egy protokollt, amellyel a keresőmotorokat értesíthetjük egy URL változásáról. A Bing, a Yandex és a Seznam használja — és a Bing indexe az, amelyet a ChatGPT keresés olvas. Egy AI app-építő, amelyet az AI-asszisztensek nem találnak meg, sajátos típusú kudarc.

A nyilvánvaló megoldás, hogy minden telepítéskor elküldjük a teljes sitemapet, de így fojtható le a kulcs, és a legtöbb telepítés semmit nem változtat, amire a keresők figyelnek. Ezért egy szkript összehasonlítja az oldal által most kiszolgált sitemapet az éppen felépítettel, és csak a különbséget küldi el.

Két részlet tette működőképessé:

  • Pillanatkép a telepítés előtt. Az alapvonalat még az új build élesítése előtt kell rögzíteni. Utána az „élő” sitemap már az új lesz, és minden különbség üres.
  • Egelőre csak az új oldalak. A sitemapünkben nincsenek lastmod dátumok, ezért a szkript az új oldalakat jelzi, az átírtakat nem. Ha minden URL-t a build dátumával látnánk el, az egész oldal minden telepítésnél változottnak tűnne — pont az a spam, amelytől szabadulni akartunk.

Csak éles telepítéseknél fut, és soha nem bukik meg a build miatt: mire lefut, az oldal már él, és egy keresőmotoros értesítés nem ér meg egy piros telepítést.

6. Az edge-ünk „nem található”-t mondott

Amikor elindítottuk az /ai oldalakat (többet róluk: egy céloldal minden üzlettípusnak), a stagingen minden oldalon „Not found” jelent meg, miközben a statikus host rendesen kiszolgálta őket.

A marketing-hostjaink előtt álló szolgáltatás csak az útvonalak egy engedélyezőlistáját továbbítja; minden más kemény 404-et kap. Az /ai új volt, és nem szerepelt a listán. Hozzáadtuk az /ai és /ai/* útvonalakat egy teszttel, amely ellenőrzi, hogy átjutnak. Kis hiba, de pont az a fajta, amely láthatatlanná teszi az új szekciót a crawlerek számára, és senki nem veszi észre.

Amit ebből tanultunk

  • Olvasd azt a HTML-t, amelyet a crawler olvas. Ezek többsége böngészőben láthatatlan volt, az előrenderelt fájlban viszont nyilvánvaló.
  • Alakítsd az SEO-szabályokat build-ellenőrzéssé. Az „oldalanként egy FAQPage” szabály ma már kikényszerített, nem emlékezett.
  • Mondd meg a keresőknek, mit jelent. Ha nem mondod meg, melyik kép vagy melyik adatok képviselnek téged, kitalálják.
  • A Search Console megmondja, melyik kérdést tették fel az emberek. A kattintás nélküli megjelenés általában azt jelenti, hogy az oldal másik kérdésre válaszolt.
  • Csak a különbséget küldd el. Ha csak azt jelzed, ami változott, az a sebességkorlátok helyes oldalán marad.

Ha ugyanezt egy saját építésű weboldalon csinálnád, az SEO AI-val épített weboldalakhoz és a Google Search Console beállítása útmutató alapokat ad.

Mythex · Pricing · Építs bármit AI-val · Weboldal- és alkalmazássablonok · A Mythex összehasonlítva · AI-alapú alkalmazásépítési szószedet · Ingyenes eszközök AI-alapú alkalmazásépítéshez · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)