Skip to content

Kaikki WordPressistä, web-kehityksestä — ja paljon muuta

🚫 Kuinka estää sivutuksen indeksointi Yoast SEO:ssa

🚫 Kuinka estää sivutuksen indeksointi Yoast SEO:ssa

Kun sinulla on satoja julkaisuja, kymmeniä kategorioita ja pilvi avainsanoja, sivutussivut lisääntyvät huomaamatta. /page/2/, sitten /page/3/, sitten /page/15/, ja ennen kuin huomaatkaan, Google indeksoi tuhat roska-URL-osoitetta, joissa ei ole uniikkia sisältöä mutta jotka kuluttavat indeksointibudjettisi.

Yoast SEO -liitännäisen vanhemmissa versioissa oli sisäänrakennettu valintaruutu "Noindex subpages of archives". Yksi rasti ruutuun ja ongelma oli ratkaistu. Mutta vuonna 2020 Yoastin tiimi poisti tämän asetuksen käyttöliittymästä. Virallinen kanta: Google on kehittynyt älykkäämmäksi sivutettujen sarjojen käsittelyssä, eikä asetusta enää tarvita.

Käytännössä sitä tarvitaan. Erityisesti suurilla sivustoilla, joilla jokainen ylimääräinen sivu indeksissä syö indeksointikiintiötä URL-osoitteilta, joiden oikeasti pitäisi sijoittua hakutuloksissa.

Yoastin kehittäjät jättivät kiertotavan: wpseo_robots-suodattimen. Sen avulla voit ohjelmallisesti asettaa noindex, follow mille tahansa sivutussivulle. Alla on kaksi koodivaihtoehtoa: tiukka (kaikki /page/-URL-osoitteet) ja valikoiva (vain kategoria- ja avainsana-arkistot).

💡 Pikaopas:

  • Opi, miksi Yoast poisti sisäänrakennetun vaihtoehdon ja milloin se on yhä tarpeellinen
  • Saat valmiin koodin functions.php-tiedostoon: kaksi versiota wpseo_robots-suodattimesta
  • Opi tarkistamaan tulokset sivun lähdekoodista ja Google Search Consolesta

Miksi sivutussivut pitäisi estää indeksoinnilta

Jokaisella sivutussivulla on kolme ongelmaa. Ensinnäkin sisällön duplikaatio: /category/seo/, /category/seo/page/2/ ja /category/seo/page/3/ näyttävät samat esikatselut, vain eri sivuille jaettuna. Toiseksi ohut sisältö: sivutussivulla ei ole kokonaista artikkelia, vain lista otsikoita ja katkelmia. Kolmanneksi indeksointibudjetti: Googlebot käyttää indeksointikiintiönsä URL-osoitteisiin, joilla ei ole hakuarvoa, sen sijaan että se indeksoisi uudelleen tuoreita julkaisuja.

Yoast SEO ratkaisi tämän tehtävän aiemmin yhdellä valintaruudulla asetuksissa. Mutta versiosta 14.0 alkaen yritys arvioi lähestymistapansa uudelleen. Logiikka oli tämä: Google oppi tunnistamaan rel="prev"- ja rel="next"-määreet, ymmärtää sivutuksen rakenteen ja ohjaa käyttäjät itsenäisesti ensimmäiselle sivulle. Ja noindex alisivuilla vähentää Yoastin näkemyksen mukaan indeksointikertojen määrää ja estää hakukonetta löytämästä vanhoja artikkeleita uudelleen näiden sivujen linkkien kautta.

Tämä väite on kiistanalainen. Jos sinulla on pieni blogi, jossa on 30 julkaisua, hyvä on, Google selvittää sen. Mutta jos sivustosi on kasvanut useisiin tuhansiin URL-osoitteisiin kategoria-, avainsana- ja päivämääräarkistojen sivutuksen myötä, hakukone tuhlaa aikaa vääriin asioihin. Alisivujen estäminen indeksoinnilta koodin avulla on hallittu ja peruutettavissa oleva ratkaisu.

Vaihtoehto 1: noindex kaikille sivutussivuille

Yksinkertaisin ja radikaalein lähestymistapa. Suodatin tarkistaa is_paged()-ehdon, joka on tavallinen WordPress-funktio, joka palauttaa true millä tahansa sivutussivulla (arkistot, kategoriat, avainsanat, etusivu). Jos ehto on tosi, korvaamme arvon noindex, follow.

Lisää tämä koodi aktiivisen teemasi functions.php-tiedostoon tai Code Snippets -liitännäisen kautta:

1add_filter('wpseo_robots', function($robots) {
2 if (is_paged()) {
3 return 'noindex,follow';
4 }
5 return $robots;
6});

Mitä tapahtuu rivi riviltä:

  • add_filter('wpseo_robots', ...) kytkeytyy Yoast SEO -suodattimeen, joka vastaa robots-metatagin sisällöstä. Suodatin hyväksyy nykyisen $robots-arvon ja odottaa merkkijonoa takaisin.
  • is_paged() on sisäänrakennettu WordPress-ydinfunktio. Se laukeaa missä tahansa URL-osoitteessa, jossa paged-muuttuja on läsnä (eli /page/N/).
  • return 'noindex,follow' kertoo hakukoneelle: "älä indeksoi tätä sivua, mutta seuraa sillä olevia linkkejä." Sivutuksen sisäiset linkit jatkavat painoarvon välittämistä.
  • return $robots palauttaa Yoastin vakioarvon muuttumattomana kaikille muille sivuille.

Kun olet lisännyt koodin, vieraile millä tahansa sivulla, kuten /category/seo/page/2/, ja avaa HTML-lähdekoodi (Ctrl+U). Etsi rivi <meta name="robots". Jos näet content="noindex, follow", suodatin toimi.

Vaihtoehto 2: noindex vain kategoria- ja avainsana-arkistoille

Ensimmäinen vaihtoehto osuu kaikkiin sivutettuihin sivuihin erotuksetta, mukaan lukien etusivu (/page/2/). Jos etusivusi näyttää julkaisujen esikatselut ja haluat pitää sen alisivut indeksissä, tarvitset kohdennetumpaa logiikkaa.

Lisäämme toisen ehdon: is_archive(). Tämä WordPress-funktio palauttaa true vain arkistosivuilla: kategoriat, avainsanat, päivämääräarkistot, kirjoittaja-arkistot ja mukautetut taksonomiat.

1add_filter('wpseo_robots', function($robots) {
2 if (is_paged() && is_archive()) {
3 return 'noindex,follow';
4 }
5 return $robots;
6});

Ero ensimmäiseen vaihtoehtoon on ehtojen yhdistelmässä. is_paged() && is_archive() tarkoittaa: "sivutussivu JA arkistosivu samanaikaisesti." Etusivun sivutus (/page/2/) ei täytä is_archive()-ehtoa, joten sen indeksointi säilyy.

Mikä vaihtoehto valita:

Tilanne

Vaihtoehto

Suuri sivusto, tuhansia sivutus-URL-osoitteita, tarvitaan maksimaalinen hallinta

Vaihtoehto 1

Etusivu näyttää julkaisuvirran, etusivun alisivut ovat tärkeitä indeksoinnille

Vaihtoehto 2

Verkkokauppa WooCommercella, jossa on tuotekategorioita

Vaihtoehto 2

Ennustettavuus ja minimaaliset poikkeukset tarpeen

Vaihtoehto 1

Miten tulos varmistetaan

Kun olet lisännyt koodin, tarkista kolme asiaa.

Ensinnäkin lähdekoodi. Avaa mikä tahansa sivutussivu, Ctrl+U, etsi <meta name="robots". Varmista, että näet content="noindex, follow", et content="index, follow".

Toiseksi Google Search Console. Mene URL-tarkastustyökaluun, liitä sivutetun sivun osoite ja klikkaa "Testaa". "Indeksointi"-lohkossa näet tilan: "Sivua ei ole indeksoitu" syyllä "Suljettu pois noindex-tagilla". Tämä vahvistaa, että Googlebot vastaanotti ja käsitteli direktiivin.

Kolmanneksi indeksin dynamiikka. Avaa Search Consolessa "Indeksi" → "Sivut". 2-4 viikon kuluessa koodin käyttöönotosta näet kasvua sivuissa, joiden tila on "Suljettu pois noindex-tagilla", ja indeksoitujen sivutettujen URL-osoitteiden vähenemistä. Prosessi ei ole välitön: Googlebotin on indeksoitava jokainen URL-osoite uudelleen lukeakseen uuden tagin.

Tärkeitä rajoituksia ja varotoimia

Koodi muuttaa koko sivuston toimintaa. Ennen käyttöönottoa varmista, että ymmärrät seuraukset.

Tuhansien sivujen äkillinen pudottaminen indeksistä voi aiheuttaa väliaikaisen liikenteen laskun. Jos sivusto eli sivutuksen indeksoinnin kanssa useita vuosia ja jotkin alisivut saivat hakuliikennettä, menetät nuo käynnit. Vastineeksi vapautat indeksointibudjettia sivuille, joiden oikeasti pitäisi sijoittua. Mutta 3-6 viikon sopeutumisjakso on väistämätön.

Tee varmuuskopio functions.php-tiedostosta ennen muokkaamista. Syntaksivirhe PHP-koodissa kaataa koko sivuston (valkoinen kuolemanruutu). Jos käytät Code Snippets -liitännäistä, se havaitsee vakavan virheen ja deaktivoi pätkän. Jos muokkaat functions.php-tiedostoa suoraan, pidä FTP-yhteys käsillä tiedoston palauttamiseksi.

Jos sivustolla on välimuistiliitännäinen asennettuna (WP Rocket, W3 Total Cache), tyhjennä välimuisti koodin lisäämisen jälkeen. Muuten vanhoja HTML-kopioita sivuista ilman uutta robots-metatagia tarjoillaan kävijöille ja hakukoneille useiden tuntien tai päivien ajan.

Kattavampaa erittelyä kaikista Yoast SEO:n ominaisuuksista asennuksesta metatagien hienosäätöön löydät oppaastamme Yoast SEO:n määrittämiseen WordPressille.

⁉️🤔 Usein kysytyt kysymykset

Miksi Yoast SEO poisti sisäänrakennetun noindex-vaihtoehdon alisivuille?

Google oppi tunnistamaan sivutetut sarjat rel="prev"- ja rel="next"-tagien kautta ja ohjaamaan käyttäjät ensimmäiselle sivulle. Yoast päätti, että noindexin pakottaminen alisivuille vähentää indeksointikertoja ja häiritsee vanhojen artikkeleiden uudelleenindeksointia sivutettujen sivujen linkkien kautta. Yoastin virallinen dokumentaatio vahvistaa: asetus poistettiin käyttöliittymästä, mutta wpseo_robots-suodatin on yhä käytettävissä ohjelmallista hallintaa varten.

Tuetaanko wpseo_robots-suodatinta vielä vuonna 2026?

Kyllä. wpseo_robots-suodatin toimii nykyisissä Yoast SEO -versioissa (24.x, 2026) ja on dokumentoitu Metadata API:ssa osoitteessa developer.yoast.com. Tärkeä muutos: ennen versiota 19.8 suodatin salli false-arvon palauttamisen robots-metatagin poistamiseksi. Versiosta 19.8 alkaen false-arvon palauttaminen ohitetaan; suodatin odottaa vain merkkijonoa ('noindex,follow' tai $robots). Molemmat tämän artikkelin koodiversiot palauttavat merkkijonon ja ovat täysin yhteensopivia.

Toimiiko koodi, jos sivustolla on mukautettu sivutuksen rakenne?

is_paged()-funktio perustuu WordPressin standardiin kyselyparametriin paged. Jos sivutus on toteutettu mukautetulla parametrilla (esimerkiksi ?pg=2 tai virtuaalinen vieritys), ehto ei laukea. Mukautetulle sivutukselle korvaa is_paged() tarkistuksella tietylle query_var-muuttujalle: get_query_var('custom_page_var'). Liitännäiset, kuten WP-PageNavi, toimivat standardin paged-parametrin kautta, joten ristiriitaa ei ole.

Kuinka kauan kestää, että Google poistaa sivutetut sivut indeksistä?

Keskimäärin 2-6 viikkoa. Nopeus riippuu sivuston koosta ja indeksointitiheydestä: sivustolla, jolla on päivittäiset indeksoinnit, Googlebot indeksoi pääosiot uudelleen 7-10 päivässä; pienellä blogilla, jolla on viikoittaiset indeksoinnit, kuukaudessa. Voit nopeuttaa tätä manuaalisella uudelleenindeksointipyynnöllä Search Consolessa ("Indeksi" → "Sivut" → valitse URL → "Pyydä indeksointia"), mutta Google käsittelee tällaiset pyynnöt jonoperusteisesti.

Voiko sivutuksen estää robots.txt:n kautta noindexin sijaan?

Teknisesti kyllä: Disallow: */page/* robots.txt-tiedostossa kieltää sivutettujen URL-osoitteiden indeksoinnin. Mutta tämä on huonompi kuin noindex. Syy: robots.txt estää sivun indeksoinnin, ei sen indeksointia. Jos ulkoiset linkit osoittavat sivutetulle sivulle, Google saattaa indeksoida sen "sivuna ilman kuvausta". Samalla itse sivun linkkejä ei myöskään indeksoida, ja menetät painoarvon siirtymisen julkaisuihin. noindex, follow ratkaisee molemmat tehtävät: sivua ei indeksoida, mutta sen linkit indeksoidaan.

Pitäisikö sinun estää sivutuksen indeksointi omassa tapauksessasi

Vastaus tiivistyy kahteen tekijään: sivuston koko ja se, onko indeksointibudjetti niukka resurssi.

Jos sinulla on 50 julkaisua ja kolme kategoriaa, älä vaivaudu. Google selvittää, mitkä sivut näyttää hakutuloksissa, ja suodattaa vähemmän arvokkaat pois itsenäisesti. wpseo_robots-suodatin on tässä skenaariossa tarpeetonta monimutkaisuutta.

Jos sinulla on yli 500 julkaisua, kymmeniä kategorioita, aktiivinen blogi avainsanoineen ja päivämääräarkistoineen, sivutus luo satoja ja tuhansia URL-osoitteita, jotka hakukone indeksoi tuoreiden artikkeleiden sijaan. Ota käyttöön vaihtoehto 2 (arkistot) tai vaihtoehto 1 (kaikki), varmista tulos lähdekoodista ja Search Consolesta ja anna Googlelle 3-4 viikkoa aikaa indeksoida uudelleen.

Koodi on peruutettavissa: kommentoi suodatin pois, ja kuukauden kuluessa kaikki sivutetut sivut palaavat indeksiin. Ei peruuttamattomia seurauksia.