Screpy’s Hreflang-generator maakt HTML-tags, XML-sitemapfragmenten of HTTP-Link-verklaringen voor een groep equivalente taalpagina’s. Voer 2–50 ondersteunde taalcodes met hun URL’s in, kies een formaat en kopieer of download de uitvoer voor elke pagina. De generator maakt de annotaties op basis van je waarden; hij bezoekt geen URL’s, installeert geen code en bevestigt geen terugverwijzingen tussen gepubliceerde pagina’s.
Bereid één groep equivalente pagina’s voor
Gebruik één generatie voor versies van dezelfde pagina: hetzelfde product, artikel of dezelfde dienst in verschillende talen of markten. Een Franse homepage en een Engelse productpagina zijn geen equivalenten omdat ze een domein delen. Herhaal het proces voor het volgende stuk inhoud, in plaats van alle vertaalde URL’s van de website in één groep te zetten.
Voor een fictief product met Engelse en Turkse versies bereid je deze waarden voor:
| Veld | Waarde | Doel |
|---|---|---|
| Taal en URL | en — https://example.com/en/blue-shirt/ |
Engelse productpagina |
| Taal en URL | tr — https://example.com/tr/mavi-gomlek/ |
Equivalente Turkse productpagina |
| Optionele x-default-URL | https://example.com/choose-language/ |
Geschikte pagina voor taalkeuze |
Vertaalde paden mogen verschillen. Kopieer elke bedoelde openbare URL in plaats van hem te maken door de taalmap te veranderen. Gebruik het volledige HTTP- of HTTPS-adres en houd host, pad en afsluitende schuine streep consistent met het te publiceren doel. Inloggegevens in URL’s worden niet geaccepteerd. Het formulier verwijdert fragmenten zoals #details; gebruik pagina-adressen in plaats van links naar onderdelen.
Kies ondersteunde taalcodes
Deze generator accepteert een taal van twee letters, zoals en, tr of de, eventueel gevolgd door een ondersteunde regio van twee letters, zoals en-GB of pt-BR. Gebruik en als de pagina Engelstalige lezers in het algemeen bedient. Kies een regiocode als je werkelijk een aparte regionale versie onderhoudt. Een land op zichzelf, zoals GB, duidt geen taal aan.
Elke gewone rij heeft een andere code nodig. en-US en en-us gelden als dezelfde invoer: andere hoofdletters maken geen extra versie. De gegenereerde codes gebruiken kleine letters voor de taal en hoofdletters voor de regio. Controleer de waarden voor het kopiëren, vooral het verschil tussen de taal uk en de regio GB voor het Verenigd Koninkrijk.
Het formulier ondersteunt alleen taal- en taal-regiocodes. Schriftcombinaties zoals zh-Hant worden niet geaccepteerd, hoewel Google schriftannotaties in passende gevallen ondersteunt. Heeft jouw implementatie zulke combinaties nodig, bereid ze dan buiten deze generator voor. Een geaccepteerde code bevestigt ook niet dat de echte paginatekst bij die taal past.
Bepaal of je x-default wilt toevoegen
Een x-default-URL duidt een bestemming aan voor gebruikers van wie de taal of regio niet door de andere opties wordt gedekt. Dat kan een taalkeuzepagina zijn of een bestaande pagina die je als standaard kiest. Googles uitleg over x-default beschrijft beide opties. Kies een nuttig doel voor deze groep; stuur bezoekers van elk product niet naar een ongerelateerde pagina om alleen het veld te vullen.
Het veld is optioneel. Als het leeg blijft, wordt geen standaardannotatie toegevoegd. Een ingevulde URL voegt hreflang="x-default" aan elke gegenereerde set toe. Dit maakt geen browseromleiding of interface voor taalkeuze.
Met de twee taalrijen uit het voorbeeld levert de keuzepagina twee uitvoerblokken met elk drie alternatieven op: en, tr en x-default. Er komt geen derde blok voor de keuzepagina. Is het standaarddoel een aparte pagina, configureer dan zelf de bijbehorende annotaties. Is het al een URL in de gewone rijen, dan heeft die pagina al een gegenereerd blok. Controleer dit verschil voordat je aanneemt dat voor elke bestemming installatiecode bestaat.
Selecteer HTML- of HTTP-Link-uitvoer
Kies het formaat dat je kunt onderhouden op de plek waar de pagina’s van deze groep worden aangeboden. Je hoeft niet alle drie te genereren omdat ze beschikbaar zijn.
| Formaat | Installatieplek | Uitvoer |
|---|---|---|
| HTML | De <head> van elke pagina |
Een set <link>-elementen |
| HTTP Link | De HTTP-respons van elke pagina | Een Link:-headerverklaring |
| XML | Een sitemap met taalalternatieven | Een <url>-fragment per gewone pagina |
Voor HTML levert de fictieve groep deze set op, die in de head van beide productpagina’s hoort:
<link rel="alternate" hreflang="en" href="https://example.com/en/blue-shirt/" />
<link rel="alternate" hreflang="tr" href="https://example.com/tr/mavi-gomlek/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/choose-language/" />
De Engelse pagina bevat zichzelf en de Turkse pagina; de Turkse pagina krijgt dezelfde set. Gebruik in een CMS de template of het veld dat de head bepaalt. De tags in de zichtbare tekst van een artikel plakken is niet de bedoelde installatie.
HTTP-Link-uitvoer hoort in de responsheaders, ingesteld via je publicatiesysteem of server. Dit is nuttig voor documenten zoals PDF’s zonder HTML-head. Kopieer de hele verklaring, niet alleen een URL, en inspecteer de echte respons na installatie. Een gedownload tekstbestand verandert een respons niet vanzelf. Behoud bestaande, ongerelateerde headerverklaringen wanneer je de alternatieve links toevoegt.
Maak van XML-fragmenten een sitemap
De XML-download is een paginafragment, geen volledige sitemap die klaar is om in te dienen. Elk blok bevat een <loc> voor zijn gewone invoerpagina en herhaalt de alternatieven als <xhtml:link>-elementen. Voeg de blokken toe aan een sitemap met zowel de sitemap- als de XHTML-namespace.
Voor het voorbeeld op dezelfde host ziet een volledig bestand met twee pagina’s er zo uit:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://example.com/en/blue-shirt/</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/blue-shirt/" />
<xhtml:link rel="alternate" hreflang="tr" href="https://example.com/tr/mavi-gomlek/" />
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/choose-language/" />
</url>
<url>
<loc>https://example.com/tr/mavi-gomlek/</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/blue-shirt/" />
<xhtml:link rel="alternate" hreflang="tr" href="https://example.com/tr/mavi-gomlek/" />
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/choose-language/" />
</url>
</urlset>
De twee <loc>-waarden verschillen; hun alternatievensets zijn gelijk. Houd bij het toevoegen van fragmenten aan een bestaand bestand één omvattend <urlset>, in plaats van volledige documenten te nesten. Vervang de voorbeeld-URL’s en behoud XML-escapes zoals & in querystrings. Publiceer het bestand op een plek die de vermelde pagina’s omvat; dit voorbeeld past bij een sitemap in de hoofdmap van example.com.
Gebruik Googles instructies voor sitemap-hreflang voor namespace- en hostingvereisten. De losse downloads van de generator voegen de sitemap niet voor je samen, hosten hem niet en dienen hem niet in.
Controleer de geïnstalleerde annotaties
Een gegenereerd resultaat toont wat je invoerwaarden opleveren, niet wat bezoekers of crawlers ontvangen. Vergelijk na installatie de gepubliceerde pagina’s met de bedoelde groep:
- Controleer dat elk alternatief adres de bedoelde taalpagina opent, geen fout, oude URL of ongerelateerde bestemming.
- Inspecteer bij HTML of headers de echte annotaties van elke gewone pagina, inclusief de zelfverwijzing en links terug naar de andere versies.
- Inspecteer bij XML de gepubliceerde sitemap zelf: de omvattende structuur, elke
<loc>en de volledige alternatievenset. - Bekijk canonical-tags samen met de alternatieven. Googles canonical-richtlijnen adviseren, als die beschikbaar is, een canonieke pagina in dezelfde taal. Laat niet automatisch de canonical van elke vertaling naar de Engelse pagina wijzen.
Gebruik Hreflang Tags Tester om gepubliceerde HTML- en HTTP-verklaringen te inspecteren. Die checker valideert geen sitemapannotaties of tags die door JavaScript worden gerenderd. Als voorkeurs-URL’s niet bij de groep passen, bekijk ze met Canonical Tag Checker.
Wanneer een vertaling verhuist of verdwijnt, werk je de groep bij op elke installatieplek. Een nieuwe set genereren zonder de oude gepubliceerde annotaties te vervangen, laat de oude relatie bestaan. Hreflang helpt equivalente versies te beschrijven; het vertaalt geen inhoud en garandeert geen indexering, posities of dat Google altijd een bepaalde URL toont.