Wie können Erweiterungen von Joomla! 3 zu Joomla! 4 migriert werden

Diese Anleitung beschreibt die Migration von Phoca-Komponenten (Phoca Gallery, Phoca Download, Phoca Cart) von Joomla 3 nach Joomla 4. Die beschriebenen Migrationsschritte können für alle anderen Phoca-Erweiterungen in ähnlicher Weise verwendet werden (außer Phoca Guestbook, für das es eine eigene Anleitung gibt, siehe unten).
Sichern Sie alle Ihre Daten vor der Migration (alte und neue Datenbank, alte und neue Dateien und Ordner).
Es gibt zwei Teile, die migriert werden sollten:
  • Dateien: im Falle von Phoca Gallery sind dies Bilder und Thumbnails, im Falle von Phoca Download sind dies alle herunterladbaren Dateien (Vorschau- und Abspieldateien), im Falle von Phoca Cart sind dies Bilder, Thumbnails und herunterladbare Dateien.
  • Daten in der Datenbank: Alle Informationen über Phoca Gallery, Phoca Download oder Phoca Cart werden in der Datenbank gespeichert.

 

Um Dateien zu exportieren/importieren, benötigen Sie einen FTP-Manager (oder Sie können Phoca Commander - Dateimanager - verwenden).
Um Daten zu exportieren/importieren, benötigen Sie die Anwendung phpMyAdmin (läuft auf den meisten Webhosting-Servern).

 

Joomla 3 (Exportierende Seite)

Stellen Sie sicher, dass Sie die neueste Version von Phoca Gallery (Phoca Download, Phoca Cart) auf Ihrer Joomla 3 Website installiert haben. Wenn nicht, aktualisieren Sie einfach auf die neueste Version auf Ihrer veralteten Website, in unserem Beispiel:
  • Phoca Gallery: 4.4.3
  • Phoca Download: 3.2.3
  • Phoca Cart 3.5.8.

 

Dateien exportieren (Joomla! 3)

 

Verbinden Sie sich mit Ihrem Server mit einem FTP-Client und navigieren Sie zum Joomla-Stammverzeichnis. Kopieren Sie die folgenden Ordner (einschließlich aller Unterordner und Dateien) von Ihrem Server auf Ihren PC (in einen temporären Sicherungsordner):

Phoca Gallery:
[images/phocagallery] Verzeichnis
Phoca Download:
[images/phocadownload] Verzeichnis
[phocadownload] Verzeichnis - Falls Sie ein eigenes Verzeichnis für Phoca Download Dateien verwenden, kopieren Sie einfach Ihr Verzeichnis.
[phocadownloadpap] Verzeichnis
Phoca Cart:
[images/phocacartcategories] Verzeichnis
[images/phocacartproducts] Verzeichnis
[phocacartdownload] Verzeichnis
[phocacartdownloadpublic] Verzeichnis
Jetzt haben Sie eine Sicherungskopie aller Dateien und Verzeichnise von Phoca Gallery (Phoca Download, Phoca Cart) erstellt.

 

Daten exportieren (Joomla! 3)



Loggen Sie sich in Ihre phpMyAdmin Anwendung ein und wählen Sie die Datenbank aus, in der alle Daten Ihrer Joomla! 3 Webseite gespeichert sind.
Klicken Sie auf Exportieren.
Migration - Export Ordner
Wählen Sie die Tabellen, die Sie sichern wollen aus (alle Phoca Gallery Tabellen ausgenommen jos_phocagallery_styles oder alle Phoca Download Tabellen oder Phoca Cart Tabellen).
Migration - Export Phoca Gallery
Migration - Export Phoca Download
Dies sind alle Tabellen, die benötigt werden:
  • Phoca Gallery: jos_phocagallery (#__phocagallery) (ausgenommen jos_phocagallery_styles - es gibt völlig neue Stile in Joomla 4, so dass die alten nicht kompatibel sind)
  • Phoca Download: jos_phocadownload (#__phocadownload)
  • Phoca Cart: jos_phocacart (#__phocacart).


In den Ausgabe Einstellungen wählen Sie: Speichere Ausgabe in Datei (um die SQL-Abfragen in eine Datei zu speichern).
Migration - Ausgabe in Datei speichern


In den Tabelle exportieren Optionen wählen Sie Daten (nur Daten werden gesichert, nicht die Tabellenstruktur - das ist wichtig, weil in Joomla! 4 neue Spalten hinzugefügt wurden. Diese Spalten werden automatisch bei der Installation hinzugefügt und sind so kein Problem für die exportierten Daten).
In neueren Versionen von phpMyAdmin, sieht die Tabelle exportieren Funktion anders aus. Am Anfang des Exportprozesses können Sie die Tabellen, die exportiert werden sollen, auswählen. Dort können Sie direkt wählen ob Struktur und/oder Daten exportiert werden sollen. Wählen Sie nur Daten. Siehe Bild:


Dump tables
Als Zu verwendende Syntax bei der Dateneingabe: wählen Sie: beide obigen Optionen verwenden.
Migration - Zu verwendende Syntax bei der Dateneingabe


Speichern Sie das Backup (SQL Abfragen) z.B. als phocagallery.sql (phocadownload.sql, phocacart.sql). Jetzt sind alle Phoca Gallery, Phoca Download oder Phoca Cart Daten der alten Joomla 3-Website gesichert.



Joomla! 4 (importierende Seite)


Stellen Sie sicher, dass Sie die neueste Version von Phoca Gallery (Phoca Download, Phoca Cart) auf Ihrer Joomla 4 Website installiert haben. Wenn nicht, aktualisieren Sie einfach auf die neueste Version:
  • Phoca Gallery: 4.5.0 (die neueste Version zum Zeitpunkt der Erstellung dieser Anleitung)
  • Phoca Download: 4.0.0 (die neueste Version zum Zeitpunkt der Erstellung dieser Anleitung)
  • Phoca Cart 4.0.0 (die neueste Version zum Zeitpunkt der Erstellung dieser Anleitung).

 

ACHTUNG, PHOCA GALLERY JOOMLA 3 VERSION IST 4.4.x UND PHOCA GALLERY JOOMLA 4 VERSION IST 4.5.x (es ist nicht dasselbe wie bei anderen Phoca Erweiterungen, wo die Versionsnummer gleich der Joomla! Versionsnummer ist, Beispiel: Phoca Cart 3 = Joomla 3, Phoca Cart 4 = Joomla 4, im Falle von Phoca Gallery: Phoca Gallery 4.4.x = Joomla 3, Phoca Gallery 4.5 = Joomla 4).

 

Die Installation der neuesten Version in Ihrer neu erstellten Joomla! 4 Website ist notwendig, damit Phoca Gallery (Phoca Download, Phoca Cart oder eine andere Phoca-Erweiterung) alle notwendigen Datenbanktabellen installiert bekommt.
Wenn Sie zum Beispiel diesen Fehler erhalten: Tabelle '#__phocagallery_styles' existiert nicht, bedeutet dies meistens, dass die neueste Version nicht installiert wurde.



Dateien importieren (Joomla 4)

Verbinden Sie sich mit Ihrem Server mit einem FTP-Client, navigieren Sie zum Joomla! Stammverzeichnis und kopieren Sie die folgenden Verzeichnisse (einschließlich aller Unterverzeichnisse und Dateien) von Ihrem PC (aus dem temporären Verzeichnis, das zur Sicherung der Dateien der alten Joomla!-Seite erstellt wurde) auf Ihren Server:
Phoca Gallery:
[images/phocagallery] Verzeichnis
Phoca Download:
[images/phocadownload] Verzeichnis
[phocadownload] Verzeichnis - Falls Sie ein eigenes Verzeichnis für Phoca Download Dateien verwenden, kopieren Sie einfach Ihr Verzeichnis.
[phocadownloadpap] Verzeichnis
Phoca Cart:
[images/phocacartcategories] Verzeichnis
[images/phocacartproducts] Verzeichnis
[phocacartdownload] Verzeichnis
[phocacartdownloadpublic] Verzeichnis


Jetzt sollte Phoca Gallery (Phoca Download, Phoca Cart) alle Bilder (Dateien) von Ihrer alten Joomla-Website enthalten.



Daten importieren (Joomla 4)

Sie müssen Ihr eigenes Datenbankpräfix festlegen. In unseren Beispielen wird jos_ verwendet, aber Sie sollten Ihr eigenes Datenbankpräfix verwenden (beachten Sie, dass es für beide Websites unterschiedlich sein kann; in diesem Fall müssen Sie das Präfix der gesicherten alten Website mit dem Präfix der neuen Website überschreiben).

Beispiel - falls die Präfixe unterschiedlich sind (jos3 oder jos4 sind nur Beispiele):
Joomla! 3 verwendet als Beispiel jos3_ als Präfix
Joomla! 4 soll als Beispiel jos4_ als Präfix verwenden
Nach der Sicherung und vor dem Importieren der SQL-Abfragen müssen Sie alle jos3_ Strings in der gespeicherten Sicherungsdatei durch jos4_ Strings ersetzen. Öffnen Sie einfach die Datei phocagallery.sql oder phocadownload.sql oder phocacart.sql in Ihrem Texteditor und ersetzen Sie das Präfix der Tabellennamen.
Alle Importaktionen müssen direkt nach der Installation von Phoca Gallery (Phoca Download, Phoca Cart) in Joomla 4 durchgeführt werden.

Alle Phoca Gallery (Phoca Download, Phoca Cart) Datenbanktabellen müssen leer sein, bevor die Daten aus der Sicherungsdatei importiert werden (außer jos_phocagallery_styles).

Es gibt einige Tabellen, die direkt nach der Installation Daten erhalten, und solche Daten müssen entfernt werden, da sie von Ihrer aktuellen Instanz importiert werden.
Melden Sie sich bei Ihrer phpMyAdmin Anwendung an und wählen Sie die Joomla 4 Datenbank aus.
Phoca Gallery: Es gibt nur eine Tabelle mit Standarddaten (jos_phocagallery_styles). Es wird nicht  empfohlen, diese in den vorherigen Schritten zu exportieren/importieren, daher sollte diese Tabelle Standarddaten enthalten und nicht geleert werden.
Phoca Download: Wenn Sie Phoca Download-Daten exportieren/importieren, müssen Sie vor dem Importieren zwei Tabellen leeren (um Konflikte zu vermeiden). Führen Sie diese SQL-Abfrage in Ihrem phpMyAdmin aus:
TRUNCATE TABLE `jos_phocadownload_layout`;
TRUNCATE TABLE `jos_phocadownload_styles`;
Migration - Truncate Phoca Download Layout Tabelle
Phoca Cart: folgende Tabellen müssen geleert werden (weil sie nach der Installation nicht leer sind):
TRUNCATE TABLE `jos_phocacart_order_statuses`
TRUNCATE TABLE `jos_phocacart_stock_statuses`
TRUNCATE TABLE `jos_phocacart_currencies`
TRUNCATE TABLE `jos_phocacart_form_fields`
TRUNCATE TABLE `jos_phocacart_groups`
Klicken Sie jetzt auf Importieren.
Migration - Import Ordner


Wählen Sie die Datei mit dem Backup auf Ihrem Rechner aus (phocagallery.sql or phocadownload.sql, or phocacart.sql).
Klicken Sie auf den Importieren (Go) Button.
Nun werden alle Daten in Ihre neue Joomla! Seite importiert.

Falls Sie diesen Artikel unvollständig finden, infomieren Sie bitte darüber im Phoca Forum. Danke.

Phoca Maps Migration

Siehe Anleitung oben, die zu exportierenden Datenbanktabellen sind:
  • jos_phocamaps_map
  • jos_phocamaps_marker
  • jos_phocamaps_icon

Die Dateien aus dem folgenden Verzeichnis sollten kopiert werden:

[phocamapskml] Verzeichnis


Phoca Restaurant Menu Migration

Siehe Anleitung oben, die zu exportierenden Datenbanktabellen sind:
  • jos_phocamenu_config
  • jos_phocamenu_day
  • jos_phocamenu_email
  • jos_phocamenu_group
  • jos_phocamenu_item
  • jos_phocamenu_list

Es gibt keine zu kopierenden Dateien.


Phoca Guestbook Migration

Die Migration von Phoca Guestbook von Joomla 3 nach Joomla 4 ist anders als bei anderen Phoca Erweiterungen. Denn Phoca Guestbook Gästebücher werden nicht in einer eigenen Tabelle gespeichert, sondern in der Joomla! Kategorientabelle.
Bevor Sie Änderungen an der Datenbank vornehmen, erstellen Sie eine Sicherungskopie. Achten Sie bitte auf Ihr Präfix. In unserem Beispiel werden wir das Standard-Präfix verwenden:
  • jos_ (Es kann Sich von Ihrem unterscheiden, dann ändern Sie jos_ zu Ihrem Präfix: deinpraefix_)
1) Es gibt keine zu kopierenden Dateien
2) Exportieren Sie nur Einträge und die Logging-Tabelle, es gibt zwei Tabellen in Phoca Guestbook (Joomla 3):
  • jos_phocaguestbook_items
  • jos_phocaguestbook_logging

Gehen Sie zu Ihrem phpMyAdmin, zu Ihrer Joomla 3 Datenbank, klicken Sie auf Exportieren (siehe Screenshots oben, um die Teile zu finden, die hier beschrieben werden):

  • Export Methode: Angepasst
  • Tabellen: wählen Sie nur eine Tabelle - jos_phocaguestbook_items, jos_phocaguestbook_logging
  • Ausgabe: Speichere Ausgabe in Datei
  • Format: SQL
  • Formatspezifische Optionen: Struktur und Daten
  • Datenerstellungsoptionen: Beide obigen Optionen verwenden

und klicken Sie auf Go, um die Datei mit den Gästebucheinträgen zu speichern (zu sichern). Jetzt haben Sie Gästebucheinträge exportiert (ein Backup erstellt). Der Name der Datei ist zum Beispiel phocaguestbook.sql

4) Öffnen Sie diese Datei (phocaguestbook.sql) und bearbeiten Sie sie. Verändern sie das jos_ Präfix zu Ihrem neuen Präfix, falls es verändert ist.

3) Gehen Sie zur Administration Ihrer neuen Seite (Joomla 4) und installieren Sie Phoca Guestbook 4

4) Erstellen Sie ein neues Gästebuch in Joomla 4. Wenn Sie das Gästebuch speichern, sehen Sie eine Liste von Gästebüchern - dort können Sie die ID Ihres Gästebuchs sehen. Merken oder notieren Sie sich diese ID.

Migration - Phoca Guestbook ID

5) Gehen Sie zu phpMyAdmin, zu Ihrer Joomla 4 Datenbank, klicken Sie auf Importieren (siehe Screenshots oben, um die Teile zu finden, die hier beschrieben werden):

  • Zu importierende Datei: Wählen Sie phocaguestbook.sql
  • Klicken Sie auf Go

Die Inhalte werden in Ihre Joomla 4 Datenbank importiert.

6) Kategorie ID aktualisieren (stellen Sie die ID ein, die Sie als Gästebuch ID notiert haben):

UPDATE `jos_phocaguestbook_items` SET `catid` = '8';
UPDATE `jos_phocaguestbook_items` SET `catid` = '0' WHERE `id` = '1';