Wechsel von Entwicklungs- zu Produktiv-Umgebung

  • Joomla Version
    5.2.1
    PHP Version
    PHP 8.3.x
    Hoster
    Lokal

    Ich habe die Frage schon gelegentlich gestellt gesehen, aber keine schlüssige Antwort dazu finden können. Ich entwickle z.Z. mit JCB (Joomla Component Builder) eine recht umfangreiche Joomla Anwendung. Da ich nur Turnschuh-Programmierer bin und sich mit Joomla 5 doch vieles geändert hat, ist das mit viel Trial and Error verbunden. Es fallen also viele Testdaten an. Da es andererseits sehr mühsam ist, alle Einstellungen aus der lokalen Entwicklungsumgebung in ein sauber frisch aufgesetztes Joomla zu übernehmen, würde ich gern die Datenbank (Artikel, Kategorien etc.) bereinigen und dann den Großteil der Daten aus der aktuell laufenden Joomla 3 Webseite übernehmen (es gibt dafür eine Komponente "SP Transfer", mit der ich den Import grundsätzlich schon erfolgreich getestet habe). Dennoch die Frage - sind Probleme bei dieser Vorgehensweise zu befürchten? Strittig ist ja immer wieder z.B. die Frage, ob die Assets Tabelle geleert werden darf. Hat jemand Erfahrungen aus einer vergleichbaren Situation?

    Grüße in die Runde,

    -------

    Olaf

  • Hallo!

    Das verstehe ich jetzt nicht ganz.

    Du hast eine Joomla 3 Seite.

    Und hast mit Joomla 5 eine neue Seite erstellt.

    Und willst jetzt die Inhalte von 3 auf 5 importieren?

    SP Transfer nutze ich nicht.

    Habe hiermit gute Erfahrungen gemacht:

    J2XML 3.9
    J2XML 3.9 is the ultimate solution for sharing your content between Joomla! 3 and Joomla! 4
    www.eshiol.it
  • Ja, ich habe eine laufende J3 Webseite. Die dort genutzte selbst mit JCB erstellte J3 Komponente konnte ich aber nicht auf J5 portieren. Zu viele Änderungen (und Ideen für Verbesserungen). Daher habe ich die Entwicklung nochmal neu begonnen, auch weil JCB jetzt die Vorbereitungen mitbringt, ebenso zukünftige Versionen zu unterstützen. Die Entwicklung läuft aber auf einem lokalen Server. U.a. weil beim zeitkritischen Kompilieren auf dem shared host beim Provider sich immer wieder Fehler eingestellt haben. Die Anforderungen von JCB sprengen den üblichen Rahmen. Jedenfalls steht die Entwicklung meiner Komponente kurz vor dem Abschluss. Jetzt ist eben die Frage, ob ich die gesamte Joomla Installation mit der Komponente, sonstigen Erweiterung, Menüs, Template samt Overrides etc. übernehme, bereinige und dann die Datenbanken der eigenen Komponente ebenso aus J3 übernehme wie die mehr als 10.000 Artikel und Kategorien. Oder ob ich Joomla 5 besser neu beim Provider aufsetze, dann meine Komponente und alles weitere installiere und alle Konfigurationen vornehme und zuletzt die Daten mit SP Transfer importiere (J2XML habe ich in der Vergangenheit auch schon genutzt, SP Transfer gefällt mir in einigen Details aber besser). Um den Import der Artikel und Kategorien komme ich keinesfalls herum. Und die Daten meiner eigenen Komponente habe ich im Griff. Die Frage ist vielmehr, ob ich mir einen Gefallen damit tue, zwanzig oder dreißig Stunden für die Installation u. Konfiguration der ganzen Joomla Erweiterungen zu sparen, wenn ich hinterher mit den bereinigten der com_content, com_categories u. com_assets Tabellen Probleme bekomme.

    Ich hoffe, jetzt ist es klar geworden, woraus ich abziele.

  • Ah, ok.

    Mit shared hosting kenne ich mich nicht aus. Muss wer anderes.

    Danke erst einmal Elwood. Das mit dem hosting war aber nur eine Randnotiz, die mit dem eigentlichen Thema nichts zu tun hat. Sollte nur dem Verständnis dienen, warum ich so und nicht anders entwickle. Wenn Du schon J2XML ins Spiel bringst, hast Du ja womöglich schon selbst Inhalte von einer Joomla Installation zu einer anderen verschoben. War die dann "jungfräulich" oder hatte das Ziel dann auch schon eine "Vorgeschichte"? Nochmal, mir geht es nur darum zu erfahren, ob (und evtl. wie) ich am besten die Artikel u. Kategorien aus der Entwicklungsphase löschen/überschreiben kann.

  • Nochmal, mir geht es nur darum zu erfahren, ob (und evtl. wie) ich am besten die Artikel u. Kategorien aus der Entwicklungsphase löschen/überschreiben kann.

    Verstehen tue ich es nicht ganz.

    Ich habe Beiträge, Kategorien, User ........ aus einer 3er nach 5er exportiert.

    Da macht es keinen Unterschied, ob die Seite neu erstellt wurde, oder es schon eine bestehende Seite war.

  • Ach Manno, warum reden wir immer aneinander vorbei? Ist mir ja schon peinlich Dir Zeit und Nerven zu rauben. Dass der Import (mit welchem Tool auch immer) prinzipiell geht, ist uns beiden klar. Ich habe jetzt aber eine Reihe von Artikeln aus der Testphase in den Kategorien rumschwirren, die ich löschen muss, bevor die Seite live geht. Zu viele um das sauber unter Joomla zu machen. Also mit phpmyadmin. Beim Import aus der der alten Joomla 3 Datenbank muss ich zudem darauf achten, dass die IDs der Artikel beibehalten werden (was SP Transfer als Option anbietet), damit alle Verknüpfungen/Verlinkungen hinterher noch laufen. Auch das ist lösbar. Ich habe nur Sorge, dass ich Inkonsistenzen bekomme, wenn ich in irgendeiner anderen Joomla Tabelle (assets oder ucm_history) Einträge übersehe. Die verweisen dann ja auf die in phpmyadmin gelöschten Datensätze, für die mittlerweile welche mit gleicher ID aus Joomla 3 importiert worden sind. Und dazu, ob man auch in diesen Tabellen löschen darf (und ob es noch weitere relevante gibt) suche ich eine Antwort.

  • Am Ende des Tages muss das Ziel sein, dass du ein konsistentes Ergebnis in der Datenbank hast. Das betrifft am Beispiel der Beiträge dass die Daten in den Tabellen

    - #__content

    - #__contentitem_tag_map

    - #__field_values

    - #__assets

    - #__finder_links

    - #__ucm_base

    - #__ucm_content

    - #__ucm_history

    zueinander passen müssen. Passen die Einträge nicht zusammen, dann kannst du die verschiedensten Dinge erleben. Schlagworte am falschen Artikel, Beiträge die im Backend nicht sichtbar sind, Beiträge die sich nicht speichern lassen, Suchergebnisse die auf das falsche Ergebnis zeigen, Workflows die sich nicht ausführen lassen, Beitragshistorien die keinen Sinn ergeben etc.

    Die Aufgabe ist also durchaus anspruchsvoll. Ich würde versuchen, um einen manuelle Import herum zu kommen. Zum Beispiel indem du eine leere J5 Installation aufsetzt, die Beiträge und Kategorien über eine Extension deiner Wahl (sind ja einige genannt worden) importierst und dann dort deine Erweiterung konfiguriert.

  • ...Ich habe jetzt aber eine Reihe von Artikeln aus der Testphase in den Kategorien rumschwirren, die ich löschen muss, bevor die Seite live geht. Zu viele um das sauber unter Joomla zu machen. Also mit phpmyadmin...

    Es geht ihm wohl hauptsächlich um das löschen von Beiträgen, aber auch da gilt natürlich auch #8

    Du kannst doch die Filter-Optionen-Funktion in Joomla benutzen und das oberste Kontrollkästchen(Checkbox) im Spaltenkopf anklicken um viele Beiträge auf einen rutsch zu markieren und dann in den Papierkorb zu verschieben und anschließend zu löschen:

    help.joomla.org/proxy?keyref=Help52:Articles&lang=de#Spalten-.C3.9Cberschriften

    Um anschließend den Inhalt im Papierkorb zu löschen in den Filter-Optionen den "Status wählen" auf Papierkorb einstellen...

    Alternativ oder zusätzlich kannst du ja z.B. auch noch nach der Beitrags-ID sortieren und dann entsprechend die Beiträge auswählen welche(nicht) in den Papierkorb verschoben werden sollen und anschließend in einem rutsch löschen...

    Auch das Feld "Number to Display" kann diesbezüglich nützlich sein wenn man es z.B. auf "Alle" einstellt...

  • Danke Euch allen! Mengenmäßig kommt das mit dem Löschen unter Joomla noch hin. Allerdings referenzieren die Artikel in meiner noch laufenden Joomla 3 Installation auf Einträge in meiner selbst geschriebenen Komponente (bzw. eigentlich umgekehrt). D.h. ich muss möglichst die ca. 20.000 Artikel sauber importieren und dabei sicherstellen, dass die IDs erhalten bleiben. Außerdem muss ich auf den AUTO INCREMENT Wert achten. Und durch den Import darf es keine "Unfälle" mit den Tabellen aus Beitrag #8 (danke SniperSister!) geben. Wobei ich in der Entwicklung extra auf Tags und Custom Fields verzichtet habe, um die Größe der Baustelle im Griff zu behalten. Daher gibt es lediglich in #__assets und #__finder_links einige Einträge. Wenn es wirklich "nur" die in #8 genannten Tabellen sind, würde ich das Risiko wohl eingehen. Aber ich schwanke noch.