Hier möchte ich euch eine Möglichkeit des Upgrades von Joomla 1.5 auf Joomla 2.5 etwas genauer darlegen.
Für den Umstieg gibt es zahlreiche Tools und Helferlein. Da diese aber alle nicht 100% Zuverlässig sind machen wir es in diesem Beispiel auf dem klassischen Weg. Akeeba hat mir schon viele Sorgen bereitet und auch mit jUpgrade hab es schon Ärger.
Der erste Schritt lautet daher:
BACKUP BACKUP BACKUP
Wir machen also ein manuelles Backup der Webseite. Dazu brauchen wir nicht viel. Ein FTP Tool und den MySQL Dumper . Mittels FTP verbinden wir uns auf den Account und kopieren alle Dateien die sich im /html/ - Verzeichnis befinden auf unseren Rechner. Das kann je nach größe der Webseite einige Minuten bis einige Stunden dauern.
Danach wird der MySQL Dumper hochgeladen. Vorzugsweise in einen Unterordner /msd/ somit lässt sich die URL der Seite http://www.meinewebseite.de/msd/ aufrufen um zur Installation zu gelangen. Der Duper fragt nun die Zugangsdaten zur Datenbank ab und analysiert die Struktur.
Im Menüpunkt "BACKUP" auf den Knopt "NEUES BACKUP STARTEN" klicken und fertig ist unser DUMP. Der Link der angezeigt wird führt zum Dump. Also anklicken und die Datei in den selben ordner wie die Webseite Speichern.
BACKUP ABGESCHLOSSEN!
Nun stehen wir an der Stelle uns zu entscheiden ob wir die Seite Online auf einem neuen Account oder Offline mittels XAMPP bearbeiten wollen. Der Vorteil von einer getrennten Entwicklungsumgebung ist, das die Produktivseite ohne Probleme weiter funktioniert und man sich Zeit lassen kann die neue Version fertig zu bekommen.
Inhalte und Komponenten
Wer das Glück hat mit einer kleinen Seite umzuziehen kopiert sich die fehlenden Inhalte zusammen und ist fertig. Alle anderen gehen auf die Suche nach Komponenten. Teilweise funktionieren auch Erweiterungen die für 1.5, 1.6 oder 1.7 gedacht sind. Also einfach mal testen.
Umfangreiche Seiten müssen manuell migriert werden. Dazu brauchen wir ein Tool das die Präfixe ändert. "MySQL Table Prefix Changer Tool" Wer in der gleichen Datenbank arbeitet wie seine alte Seite hat spätestens jetzt ein Problem. Alle die einen getrennten Account haben können ganz entspannt mittels MySQL Dumper die alte Datenbank laden.
Im Dumper oder im phpMyAdmin sehen wir das die alten Datensätze das Präfix "jos_" haben und die neuen "jml_". Wir starten also das Skript über unsere URL http://www.meinewebseite.de/prefix.php. Daten eintragen und los gehts.
Nun Suchen wir uns die Tabellen herraus die wir behalten wollen. Beispielsweise _content, _categories, ... diese werden mittels "Export" jeweils in eine sql-Datei exportiert.
Installation der neuen Joomla Version
Es muss ein neuer Account mit Datenbank und der neuen Joomla Installation angelegt werden. Wie die Installation von Joomla abläuft wurde bereits hier beschrieben.
Alle neuen Komponenten können jetzt installiert und konfiguriert werden. Manche Hersteller haben aber beim Entwickeln für Joomla 2.5 ihre Datenbankstruktur geändert. Somit kann es sein das für manche Komponenten zusätzlich eine Migration durchgeführt werden muss.
Nachdem also alle Komponenten und Module für die neue Joomla-Version installiert sind, laden wir die alten Inhalte in die neue Seite. Problematisch wird es wenn sich Schemas geändert haben und die Struktur des SQL-Files geändert werden muss. Oft funktioniert es alledrings einfach die SQL-Files zu importieren.
Wer Artikel, Kategorien, Benutzer, Bilder oder Weblinks importieren will, der kann dies auch mit J2XML und dem dazu passenden J2XML Importer erledigen. Das ist oft einfacher als die SQL-Dateien zu verbiegen.
Das Template anpassen
Der nächste Abschnitt is je nach Template eine sehr Zeitraubende Geschichte. Je mehr Klassen von Joomla angesprochen werden umso mehr muss nun angepasst werden. Beim Release von Joomla 1.6 wurden zahlreiche CSS-Klassen umbenannt - deshalb funktionieren alte Templates auch nicht mehr.
Die templateDetails.xml ist unsere erste Baustelle. Alle Templates müssen in der neuen Joomla-Version über das Backend und den Extensionmanager installiert werden. Einfach per FTP verschieben ist nicht mehr. Die aktuellen XML's sehen so aus:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install PUBLIC "-//Joomla! 2.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.6/template-install.dtd">
<extension version="2.5" type="template" client="site">
Wo jetzt extension steht stand früher install. Außerdem werden unter <files> nur noch die Dateien im Stammverzeichnis des Templates gelistet und alle Ordner. Sonst nichts mehr! <filename>css/ie7.css</filename> Funktioniert nicht mehr!
Nun sollte das neue als ZIP Gepackte archiv auch zu installieren gehen. Alles Weitere wird übers Frontend erledigt. Mit dem Kostenlosen Plugin für den Firefox - FIREBUG - wird das kinderleicht. Einfach mit einem Rechtsklick "ELEMENT UNTERSUCHEN" klicken und mit dem funktionierenden Template vergleichen. Der Fehler ist wie gesagt meist nur der Name der Klasse.
Eine Weitere Änderung gab es bei den Modulen. <jdoc:include type="modules" name="slideshow" style="xhtml" /> ist angeändert worden. Füränderungen wird einfach im Ordner /meinTemplate/html/ eine Datei modules.php angelegt. Diese kopiert man aus dem Verzeichnis ~/templates/system/html/. Somit kann man die Modulstruktur an die Anforderungen seines Templates anpassen ohne den Code von Joomla zu verändern. [Template Override]
Fehler, Probleme oder Fragen
Wer auf das alles keine Lust hat, kann gern unseren Joomal Rundumservice nutzen. Wir erledigen alles für Sie. Vom Backup bis zur Migration auf neuere Joomla Versionen. Rufen Sie uns einfach an oder schreiben Sie uns eine Mail - Wir helfen gern!