
🔗 Slik legger du til en hjemlenke i WordPress-menyen
En navigasjonsmeny uten lenke til hjemmesiden er som en inngangsdør uten håndtak. En besøkende lander på en intern side via søk, leser innholdet... og har ingen anelse om hvor de skal klikke for å komme til hjemmesiden. Logoen i toppteksten hjelper ikke alltid; noen brukere ser instinktivt etter et «Hjem»-element rett i menyen.
Før versjon 3.0 hadde WordPress ikke noe slikt alternativ i standard menyredigering, så du måtte enten redigere koden eller legge til en egendefinert lenke manuelt. Nå er alt enklere: et par klikk, så er hjemlenken på plass. Og hvis du er utvikler eller tilpasser et tema, finnes det wp_nav_menu_items-filteret som løser oppgaven med én enkelt funksjon.
Nedenfor finner du begge metodene: en visuell for vanlige brukere og en programmatisk for dem som jobber med kode. I tillegg dekker vi når lenken trenger oppdatering og hva du gjør hvis den plutselig forsvinner.
💡 Rask oversikt:
- Legg til en hjemlenke i WordPress-menyen via administrasjonspanelet på under ett minutt uten utvidelser.
- Legg til lenken programmatisk ved hjelp av wp_nav_menu_items-filteret i temaets functions.php.
- Bekreft og oppdater URL-en etter bytte av domene eller overgang til HTTPS.
Metode 1: via WordPress-administrasjonspanelet
Denne metoden fungerer med WordPress 3.0 og nyere, altså på ethvert moderne nettsted. Ingen utvidelser eller koderedigeringer kreves.
Logg inn på administrasjonspanelet og naviger til Utseende → Menyer. Til venstre ser du blokker: «Sider», «Innlegg», «Egendefinerte lenker» og andre avhengig av installerte utvidelser og innholdstyper.
I Sider-blokken klikker du på fanen Alle (eller «Vis alle» i eldre versjoner). Den aller første oppføringen er en side med navnet «Hjem». Kryss av i boksen og klikk Legg til i meny.

Når den er lagt til, vises elementet i menystrukturen til høyre. Dra det til ønsket posisjon; det plasseres vanligvis først eller sist. Lagre menyen ved å klikke Lagre meny, så blir hjemlenken aktiv på nettstedet ditt.
Som standard bruker WordPress den direkte URL-en til hjemmesiden for dette elementet (for eksempel https://vash-sait.ru/). Dette er viktig å huske: hvis du senere flytter nettstedet til et annet domene eller bytter fra HTTP til HTTPS, vil lenken beholde den gamle adressen. Du må da åpne menyredigering og fikse URL-en manuelt, eller slette elementet og legge det til på nytt (WordPress setter inn gjeldende adresse automatisk).
Metode 2: programmatisk tillegg via et filter
Hvis du utvikler et egendefinert tema eller ønsker at hjemlenken skal legges til automatisk når temaet aktiveres, bruk wp_nav_menu_items-filteret. Det fanger opp HTML-en til menyelementer før utdata og lar deg sette inn ditt eget element.
Plasser koden i functions.php til det aktive temaet (eller et barnetema, slik at du ikke mister endringer ved oppdatering). Et alternativ er utvidelsen Code Snippets: du oppretter en kodesnutt, limer inn koden og aktiverer den; endringene er da uavhengige av temaet.

1 /** 2 * Adds a "Home" link to the main WordPress menu. 3 * 4 * @param string $items HTML markup of menu items. 5 * @param object $args wp_nav_menu() arguments. 6 * @return string 7 */ 8 function sdstudio_add_menu_home_link( $items, $args ) { 9 // Target menu location — replace 'main' with your own value 10 if ( 'main' !== $args->theme_location ) { 11 return $items; 12 } 13 14 $home_link = sprintf( 15 '<li class="menu-item"><a href="%s">%s</a></li>', 16 esc_url( home_url( '/' ) ), 17 esc_html__( 'Home', 'textdomain' ) 18 ); 19 20 // The link is added first — put $items . $home_link if you need it last 21 $items = $home_link . $items; 22 23 return $items; 24 } 25 add_filter( 'wp_nav_menu_items', 'sdstudio_add_menu_home_link', 10, 2 );
Nøkkelparameteren er 'main' i if-betingelsen. Dette er slug-en for menyområdet (temaplassering) registrert av register_nav_menu()-funksjonen i temaet. Du finner din slug i temaets functions.php: se etter kallet til register_nav_menu() eller register_nav_menus() og sjekk det første argumentet. Oftest er det primary eller main.
Funksjonen er trygg: esc_url() unnslipper URL-en, og esc_html__() unnslipper lenketeksten samtidig som den støtter oversettelse. Hvis du bruker et barnetema, erstatt 'textdomain' med ditt temas tekstdomen.
Etter at du har satt inn koden, oppdater nettstedet, så vises hjemlenken i menyen automatisk. Du trenger ikke å fjerne den manuelt: bare kommenter ut eller slett add_filter()-kallet, så går alt tilbake til opprinnelig tilstand.
Situasjoner der lenken trenger oppdatering
En hjemlenke lagt til via administrasjonspanelet lagrer en hardkodet URL, den som var i nettstedets innstillinger på tidspunktet for tilføyelsen. Tre vanlige scenarioer der den slutter å fungere:
Bytte fra HTTP til HTTPS. Menyelementet fortsetter å peke til
http://..., nettlesere kan vise en advarsel om blandet innhold, eller videresendingen kan feile. Løsning: åpne menyredigering, slett det gamle «Hjem»-elementet og legg det til igjen; WordPress setter inn gjeldendehttps://-URL.Bytte av domene. Når du flytter et nettsted fra et utviklingsmiljø til produksjon (
staging.site.ru→site.ru) eller migrerer til et helt nytt domene. Menyelementet beholder den gamle URL-en. Løsning: samme som over (slett og legg til på nytt).Flytting fra en underkatalog til roten. Hvis nettstedet flyttes fra
site.ru/blog/tilsite.ru/, slutter alle hardkodede lenker å fungere. Etter migrering, gå gjennom ALLE menyelementer, ikke bare hjemlenken.
Den programmatiske metoden (via wp_nav_menu_items) har ikke disse problemene: home_url('/') returnerer alltid gjeldende hjemmesideadresse fra WordPress-innstillingene.
Forresten, hvis du jobber med menyer ofte, sjekk navigasjonsinnstillingene under Utseende → Tilpass, der du kan administrere menyer i sanntid med en live forhåndsvisning. For avansert redigering (legge til ikoner på elementer, megamenyer) finnes det dedikerte verktøy, men det er et tema for en annen artikkel.
Video: legge til en hjemknapp på 2 minutter
Hvis du foretrekker å se fremfor å lese, her er en kort engelskspråklig video med en trinnvis skjermdemonstrasjon:
⁉️🤔 Ofte stilte spørsmål
Kan jeg legge til en hjemlenke uten utvidelser eller kode?
Ja, gjennom standard WordPress-menyredigering: Utseende → Menyer → Sider-blokken → kryss av «Hjem» → Legg til i meny. Dette er kjernefunksjonalitet tilgjengelig siden versjon 3.0.
Hvorfor forsvant hjemlenken fra menyen etter bytte av tema?
Menyer i WordPress er knyttet til menyområder (temaplasseringer) registrert av temaet. Når du bytter tema, forsvinner de gamle områdene, og de nye kan ha andre navn. Menyen din har ikke forsvunnet; den ble bare «ikke tilordnet». Gå til Utseende → Menyer → fanen Administrer plasseringer og tilordne den eksisterende menyen til et område i det nye temaet. Alle elementer, inkludert hjemlenken, kommer tilbake.
Menyen har allerede et «Hjem»-element, men det fører til en bestemt side i stedet for nettstedets rot. Hvordan fikser jeg dette?
Mest sannsynlig ble en bestemt side med tittelen «Hjem» lagt til i menyen i stedet for den spesielle «Forside»-typen. Fjern det elementet fra menyen, finn deretter oppføringen merket «Forside» i Sider-blokken (WordPress markerer den tydelig) og legg den til. Hvis det ikke finnes en slik etikett, bruk «Egendefinerte lenker»: i URL-feltet skriver du
/, og i «Lenketekst»-feltet skriver du «Hjem».
Hvordan legger jeg til hjemlenken sist i menyen i stedet for først?
I den programmatiske metoden bytter du om på sammenkoblingsrekkefølgen: i stedet for
$home_link . $itemsskriver du$items . $home_link. I den visuelle redigeringsverktøyet drar du ganske enkelt «Hjem»-elementet til slutten av listen og lagrer menyen.
Er det nødvendig å bruke esc_url() og home_url() i koden?
Ja, dette er WordPress beste praksis.
home_url('/')setter dynamisk inn gjeldende nettstedsadresse fra innstillingene, slik at du slipper å redigere koden ved bytte av domene.esc_url()unnslipper spesialtegn og beskytter mot XSS-angrep. Å hoppe over unnslipping i produksjonskode er risikabelt.
Fungerer kodemetoden på en WordPress multisite-installasjon?
Ja,
home_url( '/' )på multisite returnerer URL-en til det spesifikke nettstedet i nettverket (det som er angitt i det undernettstedets innstillinger). Hvert nettsted i nettverket får sin egen hjemlenke. Hvis du trenger ulik oppførsel for ulike nettsteder, pakkadd_filter()-kallet inn i en betingelse som sjekker blogg-ID-en viaget_current_blog_id().
Hva gjør du hvis hjemlenken ikke vises?
Først, sjekk det åpenbare: lagret du faktisk menyen etter å ha lagt til elementet? «Lagre meny»-knappen er nederst på siden; uten å klikke den blir ikke endringene tatt i bruk. Hvis menyen er lagret, men elementet mangler, åpne nettstedet i inkognitomodus (nettleserbufferen skjuler noen ganger nylige endringer).
Den andre sannsynlige årsaken er en hurtigbufferutvidelse (WP Rocket, W3 Total Cache, LiteSpeed Cache). Tøm hurtigbufferen via utvidelsens administrasjonspanel og sjekk nettstedet på nytt.
Hvis det ikke hjelper, bytt midlertidig temaet til et standardtema (Twenty Twenty-Five eller Twenty Twenty-Six). Dukket elementet opp? Da ligger problemet i det egendefinerte temaet; dets wp_nav_menu()-funksjon kan være overstyrt med filtre fjernet. Sjekk wp_nav_menu()-kallet i temamalen: 'items_wrap'-argumentet skal ikke være en tom streng, og 'fallback_cb' skal være false bare hvis du bevisst deaktiverer tilbakefallet.
Koden fra «Metode 2» fungerer på ethvert tema så lenge theme_location er korrekt; den fungerer som en forsikring i tilfelle den visuelle metoden av en eller annen grunn feiler.
En hjemlenke i menyen er en liten detalj som bygger tillit. En besøkende som lander på en intern side fra søk, finner veien tilbake til starten på et brøkdels sekund og fortsetter å utforske. Uten den vil en del av publikummet ditt ganske enkelt lukke fanen. To minutter i menyredigering eller ti linjer med kode, så er dette inngangspunktet aldri tapt igjen.



