Sinnvolle Strategie bei Neuanfang?
am 21.12.2009 - 11:43 Uhr in
Hallo zusammen,
ich lerne nun seit 6 Monaten Drupal und habe es in der Zeit lieben (aber bisweilen auch hassen) gelernt. Mein 1. System habe ich durch viele blöde Fehler während des Durcharbeitens von Büchern und Tutorials und Herumprobiererei nun erfolgreich gegen die Wand gefahren.
Ich möchte nun einen Schnitt machen un von vorn beginnen. Im Augenblick frage ich mich, wie wohl eine sinnvolle Strategie aussehen würde?!?
Mein Ziel lässt sich folgendermaßen umschreiben:
Ich möchte meine antike Modellbauseite in eine mehrsprachige Community (i18n) umwandeln. Dabei wäre es schön, wenn die Seite beispielsweise über www.example.com in english und über www.example.de in Deutsch aufgerufen würde.
Die Seite soll klar lesbare Pfade und eine klare Struktur haben (path, pathauto)
Der User soll durch Beteiligung (Beiträge erstellen u.ä.) Userpoints (userpoints) sammeln können und mit steigendem Rang (20 Roles, Badges) auch mehr und mehr selbstständig tun dürfen (rules).
Ich möchte Community Features (facebook, twitter, usw.) einbauen und dementsprechend auch auf den Userprofilen (content profile) ansprechend darstellen können. Zudem soll der User über eine ureigene Usergallery auf dem Profil verfügen (noch keine Lösung).
Jeder User sollte eine beliebige Anzahl von eigenen Blogs anfangen und pflegen dürfen (noch keine Lösung)
Statt Site oder Story soll speziell strukturierter Content wie Bauberichte, Reviews usw. erstellt werden (cck) um eine gewisse Einheitlichkeit zu erzielen.
Ausgabe des Inhalts soll mit View, Panels und Skinnr erfolgen.
Nun stellt sich mir die Frage, in welchem Stadium ich welches Module (gerade i18n, Pathauto, Views, Panels) hinzufügen soll. Ist es sinnvoll zuerst Pathauto zu aktivieren und dann erst i18n oder umgekehrt? Oder ist es egal?
Ich möchte diesmal einfach geplant vorgehen...
Vielleicht könnt ihr mir dazu aus Eurer Erfahrung heraus einmal Ratschläge geben...
- Anmelden oder Registrieren um Kommentare zu schreiben

hi thorsten Strukturiert
am 21.12.2009 - 12:20 Uhr
hi thorsten
Strukturiert vorgehen ist immer gut:)
wenn die Seite beispielsweise über www.example.com in english und über www.example.de in Deutsch aufgerufen würde.
ja, das ist ziemlich einfach, wie du sicher weist, man kann den Reqeust ja 'abfangen' und entsprechenden
Content ausliefern.
für Deine Anforderungen an die User Funktionalität empfehle ich
gerne:
http://drupal.org/project/advuser
bzw
http://www.drupalcenter.de/search/node/advanced+user+modul
Jeder User sollte eine beliebige Anzahl von eigenen Blogs anfangen und pflegen dürfen (noch keine Lösung)
wieso hast Du da noch keine Lösung? Ich würde behaupten daß das Standart ist bei Drupal.. Der User kann beliebig viele
Inhalte /Nodes (in dem Fall Blog) erstellen und editieren...oder verstehe ich da was falsch?
Ich möchte Community Features (facebook, twitter, usw.) einbauen und dementsprechend auch auf den Userprofilen (content profile) ansprechend darstellen können.
das ist doch auch kein wirkliches problem, zumal es sich da ja lediglich um URL s handelt die eingebunden werden müssen...
Zudem soll der User über eine ureigene Usergallery auf dem Profil verfügen (noch keine Lösung).
schau mal hier:
http://www.drupalcenter.de/node/23691
welche Reihenfolge bei der Installation am besten ist, würde ich
tendenziell mit halbherzigen 'egal' beantworten.
Wobei eine es bei einer mehrsprachigen Seite besser sein kann
die Inhalte gleich mehrsprachig anzulegen. Insbesondere
wenn es sich um eine 'gespiegelte' Seite handelt, also
wo zb der Englische Content identisch ist von dem Deutschen
auch in der Struktur.
zu Pathauto kann ich auch nur sagen, dass ein paralelles Anlegen
von Content und den dazugehörigen URL Aliasen sicher Arbeit erspart.
wünsche Dir viel Erfolg mit deinem Relaunch!
Gruss
Stefan
Was die Usergalerien angeht
am 21.12.2009 - 12:32 Uhr
Was die Usergalerien angeht habe ich gerade etwas ähnliches gemacht. Es gibt einen eigenen Content Typen (CCK) über den User Bidler hochladen können. Diese Bilder habe ich dann mit Views (Block) und über eine Region im Profil platziert. Du kannst den Views selbst ja noch themen und die Bilder über ImageCache anpassen, bzw. das Verhalten dieser bei Ansicht. Nun habe ich über ein Argument im Views abgefragt in wessen Profil ich mich gerade befinde und so werden nur die Bilder die diese Person hoch geladen hat angezeigt. Im Grunde sind dem Ganzen in Ausführung und Komplexität keine Grenzen gesetzt.
Das Argument welches ich benutzt habe ist
if (arg(0) == 'user' && is_numeric(arg(1))) {return array(arg(1));
}
Allerdings muss ich dazu sagen das ich mit Drupal 5 gearbeitet habe, daher weiß ich nicht ob insbesondere das Argument so stimmt.
Vllt hilft dir das ja etwas. :)
@Stefan Zunächst danke für
am 21.12.2009 - 12:49 Uhr
@Stefan
Zunächst danke für Deine Anregungen :-)
Zu den Blogs: Ich habe es bislang so verstanden, daß jeder User seinen (einen) Blog mit unendlich vielen Beiträgen "fortschreiben" kann...
Ich möchte aber etwas anderes: Jeder User soll eine unbegrenzte Anzahl "seiner" Blogs anfangen und pflegen dürfen. Das stelle ich mir etwas anders vor als eine Node kreieren und dann immer wieder editieren. Ganz konkret soll der User z.B einen Baubericht (Modellbauseite) anfangen dürfen. Dann statt diesen fortzuführen, macht er z.B. einen weiteren Blog zu einem seiner anderen Projekte auf, dann einen dritten. Jeden dieser blogs soll er unabhängig von den anderen fortschreiben können.
Das geht doch so nicht ohne weiteres, oder?
Zum adv user. Dieses Modul werde ich mir einmal genauer anschauen. Ich hatte in der Vergangenheit mit dem Advanced Userprofile experimentiert. Dabei wurde die Verwirrung aber eher größer und ich stieß damit auch an Grenzen...
Noch eine Frage zur Mehrsprachigkeit. Empfielt es sich, die default Sprache auf Englisch zu lassen oder gar (wie ich auch schon gelesen habe) eine zusätzliche English language (gleichberechtigt mit den anderen Sprachen) neben der default en anzulegen?
(Ich hatte hier in der Vergangenheit arge Probleme, da ich erst munter auf Deutsch losgebaut und auch Kernstrings nach Deutsch übersetzt hatte und dann erst i18n installierte. Dazu wechselte ich die Defaultsprache nach der Installation von i18n noch einige Male. Das alles führte zu einer ziemlichen Verwirrung, da ins Deutsche zu übersetzende englische Strings statt englisch- deutschsprachig waren und somit von Deutsch nach Deutsch überstzt werden sollten...)
Oder kann ich nach Installation der Deutschen Core Übersetzung auch die default Language nach Deutsch umstellen (und dann auch lassen!)?
Tip zu den Blogs: Setze die
am 21.12.2009 - 13:17 Uhr
Tip zu den Blogs: Setze die User-Projekte mittels Taxonomie ein. Definiere einen Datentyp Blog. Definiere ein Vokabular, das auf die Userblogs angewendet wird und das zwingend eingetragen werden muß. Wenn ein User jetzt seinen Blogeintrag macht, muß er dann einen Taxonomiebegriff dazu auswählen/setzen. Der Rest ist dann Views.
Beste Grüße
Werner
Genesis schrieb ... Nun
am 21.12.2009 - 13:17 Uhr
... Nun habe ich über ein Argument im Views abgefragt in wessen Profil ich mich gerade befinde und so werden nur die Bilder die diese Person hoch geladen hat angezeigt. Im Grunde sind dem Ganzen in Ausführung und Komplexität keine Grenzen gesetzt.
Das Argument welches ich benutzt habe ist
if (arg(0) == 'user' && is_numeric(arg(1))) {return array(arg(1));
}
Allerdings muss ich dazu sagen das ich mit Drupal 5 gearbeitet habe, daher weiß ich nicht ob insbesondere das Argument so stimmt.
Vllt hilft dir das ja etwas. :)
Danke für den Ansatz. Eben da liegt mein Hund begraben. Ich hatte mich an dieser Stelle schon mit Arguments versucht und die Galerie in Profil eingebunden. Sah auch gut aus... Später bemerkte ich aber, daß die galerie des users angezeigt wird welcher die Seite betrachtet und nicht die des user_being_viewed...
Ich werde Deinen Ansatz einmal ausprobieren... :-)
wla schrieb Tip zu den
am 21.12.2009 - 13:21 Uhr
Tip zu den Blogs: Setze die User-Projekte mittels Taxonomie ein. Definiere einen Datentyp Blog. Definiere ein Vokabular, das auf die Userblogs angewendet wird und das zwingend eingetragen werden muß. Wenn ein User jetzt seinen Blogeintrag macht, muß er dann einen Taxonomiebegriff dazu auswählen/setzen. Der Rest ist dann Views.
Beste Grüße
Werner
Hmm... Das habe ich jetzt nicht wirklich begriffen. An ein Vokabular welcher Art denkst Du dabei? Wie erreich ich, daß Folgeeinträge in den richtigen Zusammenhang gesetzt werden? Ich steh' da wohl gerade auf dem Schlauch...
Definere den Blog als
am 21.12.2009 - 13:35 Uhr
Definere den Blog als eigenen Datentyp z.B. Userblog (nimm nicht den Standard Blog von Drupal). Definiere ein Vokabular (z.B. Projekte). Dort muß ein User ein Kennwort zu seinem Blog reinschreiben. Das geschieht automatisch wenn ein Node vom Typ Userblog angelegt wird, wenn Du in dem Vokabular Projekt angibst, daß es für den Datentyp Userblog gilt und zwingend eingetragen werden muß (Free-Tagging und Autocomplete erleichtern das). Dann kannst Du die Projekte eines Users mittels Views ausgeben indem Du nach dem Projekt filterst. Über Taxonomy_menu kannst Du sogar dem User dazu ein eigenes Menü aufsetzten, in dem neue Projekte automatisch eingetragen werden.
Das ist jetzt noch keine fertige Lösung aber zeigt die Richtung, wie so etwas gehen kann.
Beste Grüße
Werner
wla schrieb Definere den
am 21.12.2009 - 14:10 Uhr
Definere den Blog als eigenen Datentyp z.B. Userblog (nimm nicht den Standard Blog von Drupal). Definiere ein Vokabular (z.B. Projekte). Dort muß ein User ein Kennwort zu seinem Blog reinschreiben. Das geschieht automatisch wenn ein Node vom Typ Userblog angelegt wird, wenn Du in dem Vokabular Projekt angibst, daß es für den Datentyp Userblog gilt und zwingend eingetragen werden muß (Free-Tagging und Autocomplete erleichtern das). Dann kannst Du die Projekte eines Users mittels Views ausgeben indem Du nach dem Projekt filterst. Über Taxonomy_menu kannst Du sogar dem User dazu ein eigenes Menü aufsetzten, in dem neue Projekte automatisch eingetragen werden.
Das ist jetzt noch keine fertige Lösung aber zeigt die Richtung, wie so etwas gehen kann.
Beste Grüße
Werner
Danke für Deine Hinweise...
Jetzt fange ich (glaube ich) an zu begreifen....Allerdings könnte es bei FreeTagging theoretisch doch zu gleichen Tag Eintragungen kommen, wenn z.B mehrere User ein gleichartiges Projekt haben (z.B. beide bauen zufällig das gleiche Modell und tragen deshalb beide z.B. "Fujimi 2CV" ein. Dann müßte man wohl auch noch die userID berücksichtigen, damit der Eintrag im richtigen Blog landet?
Ließe sich so etwas (nur erstmal laut gedacht) evtl. auch über Node Reference URL nach dem Vorbild der lullabot galerie lösen? Also ein Content Type "Project", zu dem dann immer weitere Project - Blog Eiträge hinzugefügt werden könnten. Das hätte vielleicht den Vorteil, daß der User über die node_being_referenced Auswahl das zugehörige Projekt eindeutig auswählen muß bzw. innerhalb seines Projects ein "Blogeintrag hinzufügen" Button haben könnte... Hier müßte dann nur noch sichergestellt werden, daß der user nur auf seine eigenen Projects referenzieren kann...
User Term oder Node Reference
am 21.12.2009 - 18:53 Uhr
Hallo Torsten,
Ich möchte aber etwas anderes: Jeder User soll eine unbegrenzte Anzahl "seiner" Blogs anfangen und pflegen dürfen. Das stelle ich mir etwas anders vor als eine Node kreieren und dann immer wieder editieren. Ganz konkret soll der User z.B einen Baubericht (Modellbauseite) anfangen dürfen. Dann statt diesen fortzuführen, macht er z.B. einen weiteren Blog zu einem seiner anderen Projekte auf, dann einen dritten. Jeden dieser blogs soll er unabhängig von den anderen fortschreiben können.
Zentrale Vokabulare können da schon problematisch sein, vor allem bei ansteigender Projekt-Menge.
Zwei mögliche Strategien fallen mir da ad hoc ein:
Ein Node eines besonderen Typs als Dreh- und Angelpunkt für unterschiedliche Dinge zu benutzen habe ich mit von Organic Groups Modul abgeschaut. Dieses kann man übrigen auch als Projekt-Zentrum einsetzen, wenn man auch Projekt-Teams organisieren möchte. Bei Ein-Personen-Projekte wäre das aber etwas übertrieben.
Viel Erfolg bei Deinem Drupal-Projekt,
Carsten
Nachtrag: In CCK-Node-Referenz (im Übrigen Teil des Standard CCK-Pakets) kann man Views nutzen, um die Auswahl der Nodes zu begrenzen. Somit kann man erstens nur Nodes anzeigen, die vom aktuellen Benutzer stammen und zweitens entsprechend der Views-Einstellungen auch die Referenzierung auf das begrenzen, was der View erlaubt.
--
paratio.com e.K.: Qualität-im-Internet.de
Carsten Logemann
am 21.12.2009 - 19:01 Uhr
Hallo Torsten,
... Einen Node-Type "Projekt" definieren, dessen Nodes dann per CCK-Node-Reference als "Projekt-Tags" dienen können. Wenn Views das nicht direkt ansprechen kann, bleibt auch immer noch die Möglichkeit direkte MySQL-Abfragen zu nutzen.
Ein Node eines besonderen Typs als Dreh- und Angelpunkt für unterschiedliche Dinge zu benutzen habe ich mit von Organic Groups Modul abgeschaut. Dieses kann man übrigen auch als Projekt-Zentrum einsetzen, wenn man auch Projekt-Teams organisieren möchte. Bei Ein-Personen-Projekte wäre das aber etwas übertrieben.
Viel Erfolg bei Deinem Drupal-Projekt,
Carsten
Nachtrag: In CCK-Node-Referenz (im Übrigen Teil des Standard CCK-Pakets) kann man Views nutzen, um die Auswahl der Nodes zu begrenzen. Somit kann man erstens nur Nodes anzeigen, die vom aktuellen Benutzer stammen und zweitens entsprechend der Views-Einstellungen auch die Referenzierung auf das begrenzen, was der View erlaubt.
Ich danke Dir für diese Denkanstöße
War doch der Denkansatz in meinem letzten Post nicht so verkehrt...
Mir juckts in den Fingern das auszuprobieren....
TorstenG schrieb Ließe
am 22.12.2009 - 16:47 Uhr
Ließe sich so etwas (nur erstmal laut gedacht) evtl. auch über Node Reference URL nach dem Vorbild der lullabot galerie lösen? Also ein Content Type "Project", zu dem dann immer weitere Project - Blog Eiträge hinzugefügt werden könnten. Das hätte vielleicht den Vorteil, daß der User über die node_being_referenced Auswahl das zugehörige Projekt eindeutig auswählen muß bzw. innerhalb seines Projects ein "Blogeintrag hinzufügen" Button haben könnte... Hier müßte dann nur noch sichergestellt werden, daß der user nur auf seine eigenen Projects referenzieren kann...
Klappt hervorragend! War aber auch zu erwarten, da die lullabot gallery eh mit einzelnen nodes (welche man im grunde nur aufrüsten muß) arbeitet...