Skip to content

Allt om WordPress, webbutveckling — och mer därtill

🗂️ Hur du exkluderar sidor från Yoast SEO-webbplatskartan

🗂️ Hur du exkluderar sidor från Yoast SEO-webbplatskartan

Du öppnar Search Console och ser: av 200 sidor på webbplatsen är 340 indexerade. De extra 140 är arkivtaggar, dubbletter med UTM-svansar, teststubbar och bifogningssidor. Google lägger crawl-budget på skräp medan dina riktiga webbadresser får vänta veckor på sin tur.

Problemet är inte Google. Sitemap-filen som Yoast SEO genererar rapporterar ärligt allt den ser till boten. Och som standard ser den en hel del onödigt. Din uppgift är att tala om för tillägget vilka sidor som inte ska hamna i sitemap-filen.

Här är fyra sätt att rensa upp din XML-sitemap: från ett enda klick i gränssnittet till filter i functions.php. Med riktiga skärmdumpar och aktuell kod.

💡 Snabb översikt:

  • Exkludera en enskild sida via fliken "Avancerat" i Yoast SEO-metaboxen, ingen kod behövs.
  • Ta bort dussintals webbadresser i bulk via filtret wpseo_exclude_from_sitemap_by_post_ids, en array.
  • Inaktivera hela taxonomier under Sökutseende eller via wpseo_sitemap_exclude_taxonomy.
  • Kontrollera resultatet i sitemap_index.xml och lägg till noindex vid behov.

Varför du överhuvudtaget behöver rensa din sitemap

En sitemap är inte bara en lista med länkar. Det är en instruktion till sökroboten: "här är sidorna som faktiskt betyder något, indexera dem först." När skräp hamnar i sitemap-filen ställs Google inför tre problem.

För det första, dubbletter. Samma innehåll på två webbadresser (till exempel /blog/ och /blog/?utm_source=telegram) signalerar en webbplats av låg kvalitet till sökmotorn. För det andra, tunt innehåll. Stubbsidor, tomma författararkiv och bifogningssidor tillför inget värde för sök men äter upp crawl-budget. För det tredje, service-URL:er. Testlandningssidor, tack-sidor efter köp och användarpaneler har inget i sök att göra överhuvudtaget.

Regelbundna sitemap-genomgångar är grundläggande SEO-hygien. Särskilt om webbplatsen är mer än ett år gammal: extra webbadresser läcker nästan oundvikligen in i sitemap-filen.

Yoast SEO erbjuder flera kontrollnivåer, från punktvis exkludering av en enskild sida till filtrering av hela taxonomier via en hook. Låt oss gå igenom var och en.

Hur man exkluderar en enskild sida från sitemap-filen

Det enklaste scenariot: ta bort ett specifikt inlägg eller en sida från indexet. Yoast SEO låter dig göra detta direkt från WordPress-redigeraren, utan en enda rad kod.

Öppna önskad post i adminpanelen, scrolla ner till Yoast SEO-metaboxen och gå till fliken "Avancerat". Leta reda på frågan "Tillåt sökmotorer att visa detta inlägg i sökresultat?" och ändra från "Ja" till "Nej". Klicka på "Uppdatera."

Växla sidindexering i fliken Avancerat i Yoast SEO

Efter att du sparat kommer Yoast att ta bort posten från sitemap-filen, och en metatagg <meta name="robots" content="noindex, follow"> visas i sidans källkod. Själva sidan förblir tillgänglig via direktlänk. Den kommer att exkluderas från sök och sitemap-filen.

Detta är standardmetoden och den säkraste. Den fungerar för att dölja en eller två sidor. För bulk-exkludering av dussintals webbadresser, se nästa avsnitt.

Hur man bulk-exkluderar sidor via kod

När du behöver exkludera 20-30 sidor på en gång är det slöseri med tid att klicka igenom var och en manuellt. Yoast SEO tillhandahåller filtret wpseo_exclude_from_sitemap_by_post_ids: det tar en array med post-ID:n och tar bort dem från sitemap-filen.

Lägg till koden i ditt aktiva temas functions.php eller via tillägget Code Snippets:

1add_filter( 'wpseo_exclude_from_sitemap_by_post_ids', function() {
2 return array( 311, 322, 450, 512 );
3} );
PHP-kod för bulkexkludering av sidor via wpseo_exclude_from_sitemap_by_post_ids-filtret

Hur hittar du en sidas ID? I WordPress adminpanel, öppna listan över sidor eller inlägg, för muspekaren över titeln så ser du post=311 i länkens webbadress. Siffran efter post= är ID:t.

Efter att du lagt till filtret, gå till yourdomain.com/sitemap_index.xml, öppna den underordnade sitemap-filen (till exempel page-sitemap.xml) och verifiera: de angivna ID:na har försvunnit från listan.

Viktigt: filtret tar bara bort ID:n från sitemap-filen. Det lägger inte till noindex på själva sidan. Om sidan redan finns i Googles index, sätt dessutom noindex via gränssnittet (föregående avsnitt) eller begär borttagning av webbadress via Google Search Console.

Hur man ökar sitemap-filens länkgräns

Som standard inkluderar Yoast SEO upp till 1000 länkar i en enda underordnad sitemap-fil. För en stor webbplats (en butik med 5000 produkter eller en katalog med tiotusentals artiklar) innebär detta antingen fler filer (minska gränsen) eller fler webbadresser i en fil (öka gränsen).

Inställningen finns under Yoast SEO → Inställningar → Innehållstyper:

Innehållstyper och inställningar för sitemaplänkbegränsning i Yoast SEO

Vad du kan justera här:

  • Inaktivera onödiga innehållstyper. Om du till exempel bara publicerar inlägg och använder sidor som servicesidor, ta bort "Sidor" från sitemap-filen.
  • Konfigurera media. Fliken Media (bifogningar) ingår i sitemap-filen som standard. För fotobloggar är detta vettigt; för en vanlig webbplats slösar det crawl-budget.
  • Länkgräns. Tekniskt sett låter filtret wpseo_sitemap_entries_per_page dig ange ett godtyckligt antal poster per sitemap-fil:
1add_filter( 'wpseo_sitemap_entries_per_page', function() {
2 return 500;
3} );

Standard 1000 är sweet spot för de flesta projekt. Ändra bara gränsen om du fullt ut förstår konsekvenserna för indexeringens hastighet.

Hur du tar bort kategorier och taxonomier från sajtkartan

Kategorier, taggar och anpassade taxonomier fyller ofta sajtkartan med tomma eller värdelösa arkiv. Detta är särskilt relevant för WooCommerce-butiker: produktattribut ("färg", "storlek") genererar hundratals URL:er utan något självständigt sökvärde.

Den första, visuella metoden är fliken Taxonomier i Yoast SEO-inställningarna:

Taxonomier-fliken i Yoast SEO:s sitemapinställningar

Varje taxonomi har en "Visa i sökresultat?"-växel. "Ja" betyder att taxonomin hamnar i sajtkartan, "Nej" betyder att den exkluderas. För de flesta sajter är det vettigt att bara ha kategorier i sajtkartan och stänga av taggar och produktattribut.

Lista över taxonomier med söksynlighetsväxlare i Yoast SEO

Om taxonomin du behöver inte finns i listan (den är registrerad av anpassad kod eller ett tredjepartsplugin), använd ett filter. Kod för att exkludera en enskild taxonomi via dess slug:

1/* Exclude one taxonomy from Yoast SEO sitemap */
2function sitemap_exclude_taxonomy( $value, $taxonomy ) {
3 if ( $taxonomy === 'taxonomy_slug' ) {
4 return true;
5 }
6 return $value;
7}
8add_filter( 'wpseo_sitemap_exclude_taxonomy', 'sitemap_exclude_taxonomy', 10, 2 );

För flera taxonomier samtidigt:

1/* Exclude multiple taxonomies from Yoast SEO sitemap */
2function sitemap_exclude_taxonomies( $value, $taxonomy ) {
3 $taxonomy_to_exclude = array(
4 'taxonomy_slug1',
5 'taxonomy_slug2',
6 'taxonomy_slug3'
7 );
8 if ( in_array( $taxonomy, $taxonomy_to_exclude, true ) ) {
9 return true;
10 }
11 return $value;
12}
13add_filter( 'wpseo_sitemap_exclude_taxonomy', 'sitemap_exclude_taxonomies', 10, 2 );
PHP-kod för att exkludera flera taxonomier via Yoast SEO:s sitemapfilter

Ersätt taxonomy_slug1, taxonomy_slug2 och taxonomy_slug3 med de faktiska slugsen för dina taxonomier. Efter att du sparat koden, gå till sitemap_index.xml och kontrollera den underordnade sajtkartan: arkiv för de exkluderade taxonomierna bör vara borta.

⁉️🤔 Vanliga frågor

En sida som uteslutits från webbplatskartan dyker ändå upp i sökresultaten. Varför?

En webbplatskarta är bara en rekommendation till Google, inte ett direktiv. Att utesluta en sida från webbplatskartan är inte samma sak som noindex. Om sidan redan är indexerad och har externa länkar som pekar till den kan Google fortsätta att visa den. Lösning: tillsammans med att utesluta från webbplatskartan, aktivera noindex (samma reglage under Yoasts "Avancerat"-flik) och, om nödvändigt, begär borttagning av webbadressen via Google Search Console.

Kan man helt utesluta en innehållstyp från webbplatskartan utan kod?

Ja. Under Yoast SEO → Inställningar → Innehållstyper har varje registrerad innehållstyp ett reglage för "Visa i sökresultat?". Ställ in det på "Nej", så slutar hela typen (till exempel "Sidor" eller "Produkter") att visas i webbplatskartan helt och hållet. Detta fungerar även för taxonomier via fliken Taxonomier.

Hur kontrollerar man att en sida faktiskt har tagits bort från webbplatskartan?

Öppna yoursite.com/sitemap_index.xml i en webbläsare, så ser du en lista över underordnade webbplatskartor. Hitta den du behöver (till exempel page-sitemap.xml eller post-sitemap.xml), följ länken och sök efter titel eller webbadress. Om sidan inte finns där fungerade filtret. För bulkjämförelse är Screaming Frog eller Sitebulb praktiska: de visar avvikelser mellan webbplatskartan och de faktiska sidorna på webbplatsen.

Vad gör man om filterkoden inte fungerar?

Kontrollera tre saker. För det första: koden är tillagd i det aktiva temat (functions.php) eller via Code Snippets, och filen är sparad utan syntaxfel (öppna webbplatsen i en annan flik; en vit skärm = PHP-fel). För det andra: sid-ID:n är angivna korrekt, utan extra mellanslag inuti arrayen. För det tredje: cache. Yoast SEO cachar webbplatskartan; efter ändringar, rensa plugin-cachen (SEO → Verktyg → Optimera SEO-data) eller vänta upp till 24 timmar.

Påverkar uteslutning från webbplatskartan intern länkning?

Nej. Webbplatskartan och interna länkar är oberoende signaler. En sida som uteslutits från webbplatskartan förmedlar fortfarande länkkraft via interna länkar om andra sidor på webbplatsen länkar till den. Men Google kommer att indexera om den mindre frekvent: den har försvunnit från den huvudsakliga informationskällan om webbplatsstrukturen.

Vad man ska prioritera: gränssnitt eller kod

För tre till fem sidor, använd endast gränssnittet. Det är snabbt, säkert och kräver inte tillgång till temafiler.

För dussintals sidor, använd filtret wpseo_exclude_from_sitemap_by_post_ids. En array med ID:n istället för att manuellt växla varje inlägg.

För taxonomier, använd det visuella reglaget i Sökutseende om taxonomin finns i listan. Om den inte gör det (anpassad taxonomi), använd filtret wpseo_sitemap_exclude_taxonomy.

Och viktigast av allt: uteslutning från webbplatskartan är inte liktydigt med uteslutning från indexet. Om en sida ska försvinna från sökresultaten helt, lägg alltid till noindex. Yoast SEO tillhandahåller ett enhetligt gränssnitt för detta; försumma det inte.

🔗 Yoast SEO på WordPress.org