Hur man lägger till en siffermarkering på blogginläggets listningsida i Hugo
Vissa sökmotorer gillar inte när en webbplats har sidor med samma titlar...
För att lägga till Sidanummer till blogginläggslistans sidtitel i Hugo, måste du modifiera din listmall
(vanligtvis layouts/blog/list.html eller layouts/_default/list.html, ibland även layouts/_default/baseof.html)
för att upptäcka om du befinner dig på en paginerad sida. Därefter,
anpassa titeln dynamiskt genom att lägga till sidanumret när det är lämpligt.

Vanlig beskrivning
Den grundläggande idén är att använda Hugo’s inbyggda paginator-objekt och villkorligt rendera sidanumret om det är större än 1. Här är hur du kan göra det:
- Åtkomst till paginator:
Använd
.Paginatorpå din listasida för att arbeta med paginering. - Kontrollera aktuell sida:
Använd
.Paginator.PageNumberför att få det aktuella sidanumret. - Villkorlig titel-logik:
- Om på sida 1, visa den vanliga titeln (
{{ .Title }}). - Om på sida 2 eller högre, lägg till
" - Sida X"till din titel.
- Om på sida 1, visa den vanliga titeln (
Exempel Hugo mallkod (för din list.html-del, eller i ``-taggen i din baseof.html/layouts):
{{ .Title }}{{ if gt .Paginator.PageNumber 1 }} - Sida {{ .Paginator.PageNumber }}{{ end }}
Eller, i din faktiska sidmarkering:
{{ .Title }}{{ if gt .Paginator.PageNumber 1 }} - Sida {{ .Paginator.PageNumber }}{{ end }}
Anteckningar:
- Detta fungerar på paginerade listor (avsnitt, taxonomi etc.) eftersom
.Paginatorär tillgänglig. .Paginator.PageNumberreturnerar det aktuella sidanumret.- Lägg endast till “Sida X” för efterföljande sidor, inte för första sidan.
Referenser:
- Hugo list- och pagineringsguider visar
.Paginator.Projectoch dynamiska rubriker är det rekommenderade sättet. - Anpassa platsen beroende på om du vill ha detta i webbläsarfönstret (dvs.
<title>) eller på sidrubriker.
Om du vill att sidanumret ska visas i HTML <title>-elementet för SEO, placera logiken ovan på rätt plats i ditt HTML-head (ofta layouts/_default/baseof.html). För visuella sidrubriker, placera den var du utför avsnittstiteln.
Det finns ingen officiell kortkod för detta - det är ett mönster som sätts direkt med Hugo-mallning i dina layouts.
MainRoad-modifikation
Den här webbplatsen använder för närvarande Mainroad-temat. För att förbättra på-sidan SEO för den här webbplatsen har jag lagat titelgenerering på blogginläggsindexsidor så här:
<title>{{ block "title" . }}{{ if .IsHome }}{{ .Site.Title }}{{ if and (eq .Kind "home") .Paginator (gt .Paginator.PageNumber 1) }} - Sida {{ .Paginator.PageNumber }}{{ end }}{{ else }}{{ .Title }}{{ if and (in (slice "section" "taxonomy" "term") .Kind) .Paginator (gt .Paginator.PageNumber 1) }} - Sida {{ .Paginator.PageNumber }}{{ end }} - {{ .Site.Title }}{{ end }}{{ end }}</title>