Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

{{indexmenu>.:#1|context}}

webedition:tipps:tipp19

====== SEO-URLs, so bekommt ihr sie „klein“ ====== Das Open Source Content Management System webEdition bietet für das [[http://www.webedition.org/de/webedition-cms/module/db-objekt.php|Datenbank-/Objekt-Modul]] s.g. SEO-URLs an. Mit diesem Feature lassen sich die sonst sehr kryptischen URLs wie z.B. www.domain.tld/index.php?we_objectID=123 in sehr „schöne“ Suchmaschinen-freundliche bzw. „sprechende“ URLs umwandeln. Das SEO-URL-Feature ist dabei so flexibel, dass der webEdition Anwender entscheiden kann, welche Objekt-Eigenschaften und Felder er in welcher Reihenfolge für die SEO-URL nutzt. Das können z.B. sein: * Erstellungsdatum * Inhalt eines Feldes (z.B. Überschrift) * die Sprache des Dokumentes * übergeordnete Verzeichnisse * etc. Gehen wir bspw. davon aus, dass ein Schulungsanbieter für die SEO-URLs den Namen der Schulung (z.B. webEdition Schulung für Entwickler) nutzt, sieht die SEO-URL z.B. so aus: <code> http://domain.tld/schulungen/webEdition-Schulung-fur-Entwickler </code> Die SEO-URL zeigt, dass bei SEO-URLs Leerzeichen durch Minuszeichen und Umlaute in entsprechende Zeichenketten (z.B. ue) kodiert werden. Gleichzeitig fällt auf, dass die Groß- und Kleinschreibung genauso übernommen wird, wie sie im Namen der Schulung enthalten ist. Das Template, um eine Liste aller Schulungen des Schulungsanbieters mit der o.g. SEO-URL zu erzeugen, sieht in webEdition wie folgt aus: <code:xml> <we:listview type="object" name="trainings" order="Beginn" desc="false" classid="1" objectseourls="true"> <ul> <we:repeat> <li><we:field type="text" name="Name" hyperlink="true" alt="we_path" /></li> </we:repeat> </ul> </we:listview> </code> Der dadurch erzeugte HTML-Quellcode würde dann wie folgt aussehen: <code:xml> <ul> <li><a href="/schulungen/webEdition-Schulung-fuer-Entwickler">webEdition Schulung für Entwickler</a></li> </ul> </code> Möchte man nun die Großschreibweise in der SEO-URL unterdrücken, muss der Template wie folgt modifiziert werden: <code:xml> <we:listview type="object" name="trainings" order="Beginn" desc="false" classid="1" objectseourls="true" hidedirindex="true"> <ul> <we:repeat> <we:field type="text" name="WE_PATH" to="global" nameto="SeoURL"/> <?php $GLOBALS['SeoURL'] = strtolower($GLOBALS['SeoURL']); ?> <li><a href="<we:var type="global" name="SeoURL"/>"><we:field type="text" name="Name"/></a></li> </we:repeat> </ul> </we:listview> </code> Im Gegensatz zum ersten Template wird nicht der gesamte HTML A-Tag durch das Attribut hyperlink=true erzeugt, sondern manuell zusammengesetzt. Dazu leiten wir die SEO-URL zunächst mit den Parametern to und nameto in eine globale Variable SeoURL um, um sie anschließend mit PHP und der Funktion [[http://de2.php.net/manual/de/function.strtolower.php|strtolower]] in ausschließlich Kleinbuchstaben umzuwandeln. Danach übergeben wir die neue SEO-URL einfach mit <we:var/> dem href-Attribut des A-Tags. Das Ergebnis sieht dann wie folgt aus: <code:xml> <ul> <li><a href="/schulungen/webedition-schulung-fuer-entwickler">webEdition Schulung für Entwickler</a></li> </ul> </code> ====== Ab Version 7 ====== Ab der Version 7 gibt es in Extras => Allgemein => Einstellungen die Option, SEO-URLs beim Erzeugen klein schreiben zu lassen.

webedition/tipps/tipp19.txt · Zuletzt geändert: 2016/03/14 15:33 von Timo Langer

Recent changes RSS feed