Alle Einträge mit dem Typ Rezension in einen anderen Typ ändern
am 20.10.2011 - 12:28 Uhr in
Ich muss alle Einträge des Typs Rezension in einen anderen Typ ändern. Wie geht das, ohne dass ich mich die nächsten Tage mit Copy/Paste beschäftigen muss?

Vielen Dank für Antworten und Tipps im voraus!
Beste Grüsse Joni
| Anhang | Größe |
|---|---|
| rezension.png | 63.44 KB |
- Anmelden oder Registrieren um Kommentare zu schreiben

muss mich wohl doch mit
am 20.10.2011 - 15:04 Uhr
muss mich wohl doch mit copy/paste geschlagen geben :'(
Über die Datenbanktabelle "node"?
am 20.10.2011 - 16:42 Uhr
Ich muss alle Einträge des Typs Rezension in einen anderen Typ ändern. Wie geht das, ohne dass ich mich die nächsten Tage mit Copy/Paste beschäftigen muss?
Hallo,
ich habe zumindest mit den Inhaltstypen "Einfache Seite" und "Artikel" experimentiert und diese relativ leicht (bei einer MySql-Db mittels der Software phpMyAdmin) direkt in den Datenbanktabellen gegeneinander tauschen können. Allerdings sind diese Inhaltstypen einander auch sehr ähnlich. Bei deinen Inhaltstypen musst du vermutlich aufpassen, dass der neue Typ die gleichen Felder hat, da sonst wohl Inhalte verloren gehen könnten.
Eine große Bitte: Wer sich besser mit den Datenbanktabellen in Drupal (bei mir v7) auskennt, möge bitte korrigieren, was ich hier schreibe und ggf. weitere Warnungen aussprechen!
Erst einmal ganz wichtig:
Die komplette Datenbank sichern, bevor du loslegst!
Nach dem Backup der Datenbank habe ich mit phpMyAdmin die Tabellen "node" geöffnet, die im Prinzip eine Auflistung aller Nodes einer Drupal-Instanz zeigt. Darin gibt es ein Feld "type", in dem zu jedem Node der maschinenlesbare Name seines Inhaltstyps steht (bei mir also z.B. "page" und "article"). Ich habe in der Tabelle einen Eintrag bearbeitet und das "article" durch ein "page" ersetzt. Anschließend tauchte der zugehörige Inhalt unter Drupal7 nicht mehr als "Artikel", sondern als "Einfache Seite" auf. Einen Fehler im weiteren Bearbeiten konnte ich bisher nirgends feststellen.
[Nachträgliche Korrektur: Obwohl ich keine Fehler feststellen konnte: es gibt noch eine Tabelle "field_data_body" mit den Node-Inhaltstypen im Feld "bundle". Diese müssten meines Erachtens die gleiche Änderung bekommen.]
Du könntest also überall das "rezension" durch den von dir gewünschten Inhaltstyp (den maschinenlesbaren Namen des Inhaltstyps!) austauschen, wenn die Inhaltstypen zumindest gleich aufgebaut sind. Ich könnte mir vorstellen, dass das funktioniert - und zur Not hast du das Datenbankbackup, mit dem du den ursprünglichen Zustand wieder herstellen kannst.
Es gibt in phpMyAdmin (oder auch sonst in PHP) auch die Möglichkeit, einen Datenbankbefehl abzusetzen, der in der Tabelle "node" automatisch alle "rezension" in andere Texte umwandelt. Das wäre ein Befehl wie
Achtung! Das Kommando habe ich jetzt so aus der Erinnerung getippt und nicht getestet. Also bitte nicht ungeprüft (bzw. ohne Datensicherung) verwenden.
[Nachträgliche Anmerkung: Sofern das SQL-Kommando funktioniert, sollte man es in abgewandelter Form auch auf das Feld "bundle" in der Tabelle "field_data_body" anwenden.]
Und natürlich ist meine ganze Anleitung ohne Gewähr. Ich kenne die Relationen zwischen den Datenbanktabellen von Drupal nicht so gut, als dass ich meine Vorgehensweise uneingeschränkt empfehlen könnte. Daher hoffe ich, jemand anderes mit mehr Know-How kann hierzu noch eine Anmerkung machen.
Viele Grüße
Chennai
Suchen
am 20.10.2011 - 18:07 Uhr
Was hält Dich eigentlich davon ab, mal bei einer Suchmaschine Deiner Wahl "drupal change node type" bzw. "Drupal inhalt typ ändern" einzugeben und Dir dann mal die Treffer dort anzuschauen?
vor lauter Bäumen den Wald nicht sehen
am 20.10.2011 - 21:19 Uhr
Vielen Dank für die Antworten!
Ich habe die Suchfunktion in meiner Verzweiflung völlig vergessen SORRY!
Es war aber wirklich ein riesiger Berg Einträge, den ich zu erledigen hatte!
@chennai
Ich habe deine Antwort leider erst gelesen als ich mit der copy/paste Arbeit fertig war >_<
Dafür bin ich jetzt ein Copy/Paste-Weltmeister ;)
Auf jeden Fall, DANKE nochmal und ich werde dieses "Tutorial" sicherlich bald wieder gebrauchen können!!
Beste Grüsse Joni