Joomla! Canonical Attribut setzen
 

Wozu wird die Canonical Attribut für Joomla! benötigt? Mit dem Canonical Attribut wird den Crawlern (Suchmaschinen, Analysetools) die verknüpfte Domain mitgeteilt. Wenn mehrere Domains auf eine Joomla! Installation zeigen kann mit dieser Angabe duplicate Content ausgeschlossen werden. Das Canonical Attribut unterstützt eine gesetzte 301'er Weiterleitung auf die Hauptdomain. Die Definition einer Livesite für Joomla! ist nicht ausreichend um duplicate Content auszuschließen.

Tipp: Die Joomla! Domain kann und sollte auch in den kostenfreien Webmaster Tools bei Google, Bing, & Co. gesetzt werden.

Das Canonical Attribut ist in der Adresszeile vieler Browser sichtbar. Wenn es richtig auf eine Seite matched, ist hier ein grauer ausgefüllter Kreis mit einem weißen C zu sehen. Ein blauer ausgemalter Kreis mit einem weißen C deutet auf einen falsch gesetzten Eintrag hin.

richtig gesetzte Joomla! Canonical Angabe im Browser

Der folgende Skriptcode ist für suchmaschinenfreundliche Urls geeignet, wo schon bei der Seitenstruktur auf doppelten Content verzichtet wurde. In jeder Joomla Installation gibt es das templates Verzeichnis. Hier gibt es das verwendete Joomla! Template. In diesem Ordner muss die Template Datei bearbeitet werden. Die Datei ist oft mit index.php oder template.php benannt. Hier suchen Sie den Tag </head> und fügen davor diese Skriptzeilen ein:

<?php
// ermittle die vollständige Adresszeile
$urlcan = $_SERVER['REQUEST_URI'];

// generiere ein Array aus der Url, Trennzeichen /
$piecescan = explode("/",$urlcan);

// die gewünschte Domain mit dem Slashzeichen / am Ende
$canonical = "https://www.IhreJooomlaDomain.de/";

// setze die Adresse wieder zusammen (ohne die Domain)
// und füge die gewünschte Domain am Anfang ein
for ($i=1; $i<count($piecescan)-1; $i++)
{ $canonical .= $piecescan[$i]."/"; }

// der letzte Teil der Url ohne das Slashzeichen /
$canonical .= $piecescan[$i];

// schreibe das canonical Attribut in den Header vom Template
echo '<link rel="canonical" href="'.$canonical.'" />';
?>

Getestet wurde der Skriptcode an Joomla! Versionen 2.5 und 3.0. Prüfen Sie bitte in jedem Fall die gesetzte Url im Quelltext Ihrer Seiten. Diese Url sollte identisch zu den Urls im generierten Sitemap sein. Achten Sie bitte auch auf Parameter und Sessions, welche durch Anpassung des Beispielcodes ausgeschlossen werden können.

Viel Erfolg bei der Umsetzung.