Drupal-Neuling / externe DB / ohne Nodes?
am 25.08.2009 - 12:01 Uhr in
Hi,
ich habe mich in den letzten zwei Wochen mit der Auswahl eines CMS befasst und kann eigentlich sagen, dass es auf jeden Fall Drupal wird. Ich habe mir auch Wordpress und Joomla angeschaut, finde Drupal aber wegen der ganzen Struktur und den vorhandenen Modulen recht spannend. Bei Wordpress gefiel mir Anfangs die unendliche Auswahl an schoenen Templates, aber ich sehe eigentlich kein grosses Problem darin, diese in Drupal Themes umzustellen. Bei Joomla gefiel mir das ganze Admin-Menu besser, aber da ich der einzige bin der damit arbeitet war das auch bald kein Thema mehr. Soviel zur Vorgeschichte :-)
Also, ich habe mich recht gut eingelesen und auch viel gespielt. Ich verstehe CCKs, Views, FeedAPI etc, weiss aber irgendwie immer noch nicht so genau, wie ich mein Vorhaben am besten realisiere.
Ich habe eine Bildgalerie auf einer eigenen Domain und auch mit einer eigenen Datenbank die dort gepflegt wird und das soll weiterhin auch so bleiben. Die vereinfachte Strukur der Datenbank ist praktisch meine_id, meine_bildurl, mein_titel, meine_views. Eigentlich koennte ich jetzt einfach hergehen, alles in Drupal Nodes importieren und die ganze Funktionalitaet in Drupal abbilden. Da ich jedoch ein 'schnelles Erfolgserlebnis' mit meiner ersten neuen Drupal-Seite haben moechte wuerde ich gerne alles so belassen und vorerst nur auf die Daten zugreifen. Vereinfacht gesagt liegt es nur daran, dass meine_views auf meiner Seite entsprechend gezaehlt werden, manche Bilder ersetzt oder geloescht werden und sich der Titel ab und zu aendert. Und da sehe ich schon die Problematik falls ich die FeedAPI nutze und Nodes erstelle. Ich muesste dann alle geloeschten Bilder in Drupal nachfahren, meine_views. mein_titel entsprechend aktualisieren usw.
Deshalb folgende erste Idee: Ich wuerde einfach nur gerne mit meinneuesdrupalprojekt.de/bilder/meine_id auf meine bestehende Datenbank zugreifen. Falls es meine_id nicht mehr geben sollte, wird eben nichts mehr ausgegeben. Von meiner bestehenden Seite aus, kann ich schnell per XML die Daten aufbereiten und an Drupal uebergeben oder greife natuerlich direkt auf die Original-Datenbank zu.
Ziel des Ganzen ist, dass ich spaeter Funktionen schnell erweitern kann. Nehmen wir mal die Kommentierung der Bilder. Sobald in Drupal kommentiert werden soll, muss ein Node vorhanden sein und dann - aber auch wirklich nur dann - bin ich auch 'bereit' einen neuen Node anzulegen. Fuer die vielen unkommentierten Bilder soll das eigentlich nicht getan werden. Genauso verhaelt es sich mit der Nutzung des Fivestars-Moduls. Was ich aber ohne diese 'neuen Funktionen' auch schon toll finde, ist dass ich ein Blog und ein Forum anknuepfen kann, somit praktisch eine neue Drupal gepowerte Seite habe auf der ich in Zukunft entwickle.
Wie wuerdet Ihr das Thema angehen?
- Anmelden oder Registrieren um Kommentare zu schreiben
Importieren oder migrieren
am 26.08.2009 - 11:10 Uhr
Hallo Armin,
guck dir doch mal das Modul Node Import an (http://drupalmodules.com/module/node-import), ob nicht Importieren vielleicht doch schneller und einfacher geht und langfristig die bessere Lösung ist.
Interessant ist auch das Modul Migrate (http://drupalmodules.com/module/migrate), mit dem ich aber noch keine Erfahrung habe.
(Dort lohnt auch immer ein Blick auf die "Related Modules".)
Eine Übersicht über die verschiedenen Import/Migrations-Module gibt es unter http://groups.drupal.org/node/21338 .
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren.
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren. Danke!
Hallo Frank, erstmal Danke
am 27.08.2009 - 15:56 Uhr
Hallo Frank,
erstmal Danke fuer Deine Antwort! Ich habe mit Migrate / Table Wizard bereits herumgespielt und sehe schon, wie maechtig Drupal wird, wenn eben alle Daten in der Drupal-eigenen Datenbank abgelegt sind. Mein einziges Problem ist, dass ich alle Hintergrundprozesse die ueber Jahre gewachsen sind eben umstellen muss. Meine Daten werden aktuell teilweise manuell und automatisch von eigengeschrieben PHP Programmen gepflegt. Es besteht kein Zweifel daran, dass es das Beste ist, alles in Drupal einzupflegen.
Die Frage ist aber, ob es nicht 'einfacher geht' nach dem Motto:
- Eigene Datenbank behalten
- Eigene Daten per XML/RSS/Feed von Drupal einlesen lassen
- temporaere Nodes aus den Feeds erstellen lassen
- wenn eben kommentiert wird, etc. bleibt der Node erhalten
- ansonsten wird nach Node einer gewissen Zeit geloescht
FeedAPI macht ja das meiste, aber ich sehe ein Problem darin, dass die NodeID irgendwann aus dem Ruder laeuft, wenn staendig neue Nodes erstellt und wieder geloescht werden. Optimial ist das dann sicher nicht mehr.
Hmmm, ich habe irgendwie keine zuendende Idee :-) Bin ich wirklich der erste der vor solch einem Migrations-Problem steht? Hat jeder seine Daten neu in Nodes/CCK-Felder modelliert? Wenn jetzt natuerlich 10 Leute schreiben, sie haetten ihr altes System komplett in Drupal abgebildet muss ich es wohl einsehen, dass die Umstellung auf Drupal eben damit verbunden ist.
Danke,
Armin
Modell der Bannerwerbung?
am 28.08.2009 - 06:55 Uhr
Nur so 'ne Idee: Könnte man das so ähnlich realisieren, wie externe Werbebanner von Drupal eingebunden werden? Siehe z.B. http://drupalmodules.com/search/node/openx oder die Anbindung von Amazon: http://drupalmodules.com/search/node/amazon
(Dort lohnt auch immer ein Blick auf die "Related Modules".)
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren.
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren. Danke!
Ein anderer Weg
am 28.08.2009 - 09:30 Uhr
Ich habe mich mit dem Migrate-Modul noch nicht beschäftigt. Nach der Beschreibung ist es aber ein gangbarer Weg.
Eine Alternative wäre:
Im einzelnen
--
Genial !!! zu 4. faellt mir
am 28.08.2009 - 08:53 Uhr
Genial !!!
zu 4. faellt mir spontan ein, dass ein wget/externes Skript garnicht noetig ist. Das uebernimmt Google mit seinem Crawler fuer mich :-)
Eigentlich muss ich mich nur wie beschrieben, an das OpenX oder Amazon-Modul anlehnen. Statt Werbung oder Buecher werden eben meine Bilder angezogen. Die passenden Schnittstellen dazu kann ich ja schreiben, kein Thema.
Zur ganzen Node-Verwaltung kann es vielleicht auch eine andere Loesung geben. Ich koennte ach ein Programm schreiben, dass alle x Stunden laeuft, sich meine bild_id zieht, schaut ob ein Node mit dieser bild_id bereits vorhanden ist (kann ja das NodeTitle-Feld oder eben ein CCK-Integer-Feld dazu Missbrauchen) und dann entsprechend anlegen oder loeschen.
Alle Funktionalitaeten mit Fivestar/Kommentare/etc. waeren zu dem Zeitpunkt gegeben, da ueber die View die Node-ID vorhanden ist und ueber mein Modul oder Table Wizard die weiteren Felder (bild_url, bild_name) angezeigt werden koennen.
Ach ja, um kein Wirrwarr mit geloeschten Nodes zu haben, kann ich die geloeschten Nodes auch einfach nur entsprechend markieren und beim naechsten Mal wenn ein neuer Node gebraucht wird loeschen. OK, jetzt lese ich mich mal in die Modulentwicklung ein, oder versuche das bestehende OpenX/Amazon auf meine Beduerfnisse anzupassen.
Kann es sein, dass ich zum totalen Drupal-Fan mutiere? Es macht ja fast keinen Sinn mehr, irgendeine Anwendung noch von Hand zu schreiben :-)
Views kann nur die Bilder
am 28.08.2009 - 09:27 Uhr
Views kann nur die Bilder auflisten, zu denen auch Nodes existieren. Auch Google findet nur die URLs, die irgendwo verlinkt sind. Deshalb sollte eine abschließende Übertragung der Bilder in einem Rutsch erfolgen.
Kann es sein, dass ich zum totalen Drupal-Fan mutiere?
Kann sein. Heilung habe ich noch keine gefunden. Django lindert vielleicht die Symptome.
Es macht ja fast keinen Sinn mehr, irgendeine Anwendung noch von Hand zu schreiben :-)
Ich bevorzuge auch den Einsatz von Frameworks. Drupal ist halt eines, das auf Content Management spezialisiert ist und eine Datenbank mitbringt. Das ist bei Webanwendungen schon mal nicht verkehrt.
Aber ich schreibe auch gerne Quelltext für Drupal. Zum einen ist kaum möglich, Konfigurationen, die in der Datenbank liegen, in einer Versionsverwaltung abzulegen. Zum anderen ist es recht mühselig, Datenbankeinträge von einer Site auf eine andere Site zu übertragen (was beim Staging und Deployment recht häufig notwendig ist).
--
Module zum Einbetten externer Bilder
am 28.08.2009 - 15:54 Uhr
Hier noch zwei interessant klingende Module, mit denen man externe Bilder in Drupal einbetten kann:
Embedded Media Field
http://drupalmodules.com/module/embedded-media-field
FeedAPI Imagegrabber
http://drupalmodules.com/module/feedapi-imagegrabber
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren.
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren. Danke!