phone icon

Tips og tricks til SH404SEF

Når vi hos redWEB arbejder med SEO og SEF-urler benytter vi typisk værktøjet SH404SEF som er udviklet af Anything Digital. Det er en komponent som erstatter Joomlas indbyggede SEF genereringsværktøj og giver rigtig mange stærke muligheder for at tilpasse sine url’er, nemt redigere sidetitler og meta-info og meget andet.

Dog oplever enkelte af vores kunder af og til lidt småproblemer med komponenten. For den gennemsnitlige bruger er det ikke altid helt nemt at gennemskue hvad der går galt, så herunder har vi samlet både tips til at sætte SH404SEF op selv og løsninger på nogle af de problemer vores kunder kan komme ud for.

 

Få pænere url’er

Når man lige har installeret SH404SEF og aktiveret det, uden at ændre nogen indstillinger kommer url’erne til at se nogenlunde sådan her ud:

www.domænenavn.dk/index.php/navn-paa-joomla-artikel.html

Man har dog mulighed for at lave pænere url’er som ikke indeholder index.php og .html hvis man slår følgende indstillinger til:

indstillinger i sh404sef

Først og fremmest skal ”Enable URL optimization” slås til. Det er den indstilling der gør, at SH404SEF overhovedet begynder at lave SEF url’er. Dernæst skal ”Rewriting mode” sættes til ”With .htaccess (mod_rewrite)”.

For at denne indstilling skal slå igennem, så skal du også ind og ændre en fil på dit webhotel. Som standard bliver der lagt en fil ind i din Joomla installation, som hedder htaccess.txt .

Den skal omdøbes til .htaccess:

htaccess1 og sh404sef

 

Hvis du har dit website liggende på et redHOST webhotel, skal du dog lige ind og redigere filen i et tekstbehandlingsprogram og fjerne linjen:

 

”Options +FollowSymLinks”

 

til

 

”Options SymLinksIfOwnerMatch”

 

Hvis du har dit website liggende hos en anden udbyder, er det ikke sikkert det er aktuelt.

 

htaccess2

 

Dernæst kan du også gå ind i SH404SEFs indstillinger og fjerne ”File suffix”, hvilket betyder at der ikke kommer til at stå .html bagved url’en.

Du kan også sætte slå ”All lowercase” til, hvilket betyder at sef url’en kommer til at stå med små bogstaver:

indstillinger2

 

Når alle disse indstillinger er slået til, vil url’erne ligne dem vi eksempelvis har her på redweb.dk.

 

Typiske problemer med SH404SEF

Når man arbejder med SH404SEF, kan man komme ud for diverse udfordringer. Herunder kommer vi med eksempler på hvad man kan komme ud for og hvad man kan gøre for at løse det.

For at forklare hvorfor mange af disse problemer sker, er det dog først vigtigt at forstå hvordan SH404SEF danner url’erne.

Når der ikke er noget som helst SEF relateret der er slået til, så ser url’erne normalt således ud:

index.php?option=com_content&Itemid=101&catid=2&id=1&lang=&view=article

Url’en fortæller hvad siden skal vise.

  • Option – fortæller hvilken komponent der vises. I dette tilfælde er det com_content som er Joomlas standard artikler
  • Itemid – er id’et på det menupunkt der er indlæst. I nogle tilfælde er der ikke et menupunkt tilknyttet og så vil dette id ikke være til stede.
  • Catid – dette er kun aktuelt hvis det er Joomlas artikler der er i brug. I så fald er dette id’et, på kategorien som artiklen er tilknyttet.
  • Id – er id’et på artiklen
  • View – er den visning der indlæses. I dette tilfælde er det artikelsiden. Det kunne også være kategorioversigt. Tilgængelige views er forskelligt fra komponent til komponent.

Når SH404SEF danner SEF url’erne, tager den ovenstående url og konverterer den om til en SEF url som i dette tilfælde så bliver titlen på en artikel.

I ovenstående eksempel, bliver:

index.php?option=com_content&Itemid=101&catid=2&id=1&lang=&view=article

konverteret om til en url der hedder ”getting-started” da navnet på artiklen er ”Getting started”:

url-manager

 

Måden url’er genereres på af SH404SEF er, at når en indholdsside bliver indlæst af en bruger, så scanner SH404SEF siden igennem for links. Hvis den finder et internt link til noget andet Joomla indhold, så danner den en url, hvis der ikke allerede findes en url til indholdet.

Hvis der findes en url i forvejen, så lægges den nye ikke-sef url på som ”duplicate”. Duplicates vender vi tilbage til senere i artiklen.

 

Manglende moduler eller forkert indhold bliver indlæst

Et af de allerhyppigste problemer man kan komme ud for i SH404SEF, er at en side ikke viser det rigtige indhold, f.eks. de rigtige moduler.

Hvis artiklen kan tilgås flere steder fra, vil man stadig kun ramme SEF url’en ”getting-started”. Hvis man f.eks. har lavet flere menupunkter til samme artikel, så vil man stadig kun lande på en url.

Det er så også her man kan støde ind i problemer, da man eksempelvis kan risikerer, at det ikke er det rigtige menupunkt id altså item-id der refereres til i URL’en. I det brugte eksempel er det Item-id 101 der indlæses. Hvis vi krydsreferer vores menupunkter, kan man se at det er forsidens menupunkt.

Nu vælger jeg så at lave et menupunkt, specifikt til denne artikel:

 

artikel

 

Derudover laver jeg også et modul og tilknytter til dette menupunkt:

module

Når vi så går ud og genindlæser siden og klikker ind på det nye menupunkt, begynder problemerne at vise sig.

Først og fremmest, så er menupunktet ikke markeret som aktivt i menulinjen:

getting started

 

Det er stadig ”home” der er markeret som værende aktivt.

Modulet jeg har oprettet, der skulle vises i højre side, bliver ikke vist og brødkrummestien peger på at man stadig er på forsiden:

breadcrumb

Så selvom url’en har det rigtige navn og det er den rigtige artikel der vises i indholdet, er der stadig noget galt. Det er ligesom man er låst fast på forsiden. Her er tre løsningsforslag til dette problem. I alle tre tilfælde skal du gå ind i SH404SEF og i det punkt der hedder URL manager.

 

1. Du kan klikke ind under ”duplicates”:

dublicate

Som åbner et popup vindue. Herinde kan du markere en af de andre url’er der er tilgængelig og klikke på ”Make main”.

Den url der er markeret med en stjerne i listen, er den der er aktivt. Du kan også bare klikke på en af stjernerne i listen, så bliver den også aktiv. En note til dette er, at duplicates i SH404SEF regi ikke er det samme som duplicate content. Det er lidt ironisk at det deler samme navn, for duplicates i SH404SEF er faktisk til for at undgå duplicate content.

For at være sikker på, det er den rigtige duplicate du har udvalgt er du nødt til at vide hvilket id dit menupunkt har og hvilket id dit indhold har. Det kan godt være lidt svært at huske på, så derfor kan man med fordel ”prøve sig frem” og klikke de forskellige url’er af indtil du finder den rigtige.

main

 

2. Du kan også slette den enkelte url. Hvis du markerer url’en og trykker ”Delete with duplicates” og derefter bekræfter, så bliver url’en slettet. Hvis du dernæst genindlæser den oversigtsside hvor linket til artiklen er, så bliver url’en genoprettet. Bemærk, at url’en bliver ikke genoprettet før du besøger en side hvor der er et synligt link til artiklen.

3. Slette alle urler. Hvis du går ind i SH404SEFs url manager, er der en knap i toppen, der hedder ”Purge”. Denne sletter ALLE de oprettede url’er som herefter skal genskabes. Det kan ikke anbefales at gøre dette, hvis siden er live og har mange url’er oprettet. Hvis du alligevel gør det, skal du lige klikke alle hovedsider igennem for at url’erne bliver genoprettet. For at en url bliver genoprettet skal linket bare være synligt. Du behøver derfor ikke gå helt ind på en artikel, bare man kan se linket til artiklen

Jeg har i mit eksempel nu valgt en anden url, sådan så det er det rigtige menupunkt der er aktivt og alt er ok nu.

Menupunktet er markeret rigtigt:

menu-active

Mit oprettede modul bliver vist også:

test

Og brødkrummestien er korrekt:

breadcrumb-correct

 

Hvad gør man hvis man omdøber indhold?

Du kan komme ud for, at du på et tidspunkt er nødt til at omdøbe indhold på din side. Det kan være en indholdsartikel skal hedde noget andet eller at et af dine produkter har fået et nyt navn, bliver flyttet over i en ny kategori eller lignende.

Pga. den måde SH404SEF danner url’erne på, så slår sådanne ændringer ikke igennem på url’erne med det samme.

I vores tidligere eksempel med ”Getting started” artiklen, kan vi prøve at omdøbe den til ”Getting started with Joomla” i stedet. Så vi omdøber artiklen inde i Joomla administrationen:

sh404sef

 

Bemærk jeg har slettet indholdet fra ”Alias” for at aliaset bliver genereret igen med det nye navn. Jeg gemmer og går ud og genindlæser forsiden og går ind på artiklen. Som man kan se på url’en, får den ikke et nyt navn:

getting started 1

For at det slår igennem, skal vi lige ind og slette url’en som jeg tidligere har beskrevet. Jeg åbner derfor URL manageren i SH404SEF op og finder ”getting-started” url’en. Jeg markerer den, trykker ”delete with duplicates” og bekræfter at jeg ønsker at slette.

Når jeg nu genindlæser forsiden og går ind på artiklen, er navnet på url’en skiftet:

getting started with joomla

Bemærk, at hvis din side har kørt længe og din url er blevet indekseret i Google, bør du lave redirects fra de slettede url’er til de nye. Ellers vil du miste de gode placeringer og Google vil opfange 404 fejl. Hvis du sørger for at lave redirectsene vil de nye url’er med tiden overtage de gamles plads. Du kan lave redirects enten i .htaccess filen eller vha. SH404SEFs indbyggede ”alias” funktion.

 

Undgå punktummer og andre specialkarakterer i indholdstitler

Et af de typiske problemer som vi støder på blandt kunder er, at de har et punktum eller andre specialkarakterer med i titlen på indholdet.

I artikler er det navnet på artiklen der genererer SEF url’en, i redSHOP er det produktnavnet der er med til at genererer SEF url’en og i andre komponenter er det også navnet på indholdselementerne der er med til at generere SEF url’en.

Hvis der er et punktum med i navnet, hvis artiklen f.eks. hedder ”Se version 2.0 af vores hjemmeside” så vil url’en give 404 fejl, pga. punktummet.

Hvis du går ind i ”character replacement list” i SH404SEF indstillingerne og tilføje punktum og det tegn du ønsker punktummer skal erstattes med. Herunder har jeg sat at alle .’er skal erstattes med et -. Det er indsat med følgende linje .|-

indstillinger2