Schlagwortbasierte Blockadministration
am 17.11.2011 - 15:47 Uhr in
Hallo zusammen,
für ein neues Projekt suche ich derzeit eine schlagwortbasierte Blockadministration. Gibt es dafür bereits ein Modul, was ich bis jetzt noch übersehen habe, oder habt ihr vielleicht andere Ideen wie man das lösen könnte?
Vielleicht noch einmal etwas ausgeholt: Auf der neuen Seite soll die komplette Navigation über Schlagwörter funktionieren. So kann man bspw. einer Galerie, einer Story und einem Video allen ein Schlagwort "Projekt X" zuweisen und auf der Taxonomy-Übersichtsseite zu dem Schlagwort wird alles gesammelt zu dem Projekt angezeigt. soweit so gut.
Nun soll es aber auch möglich sein bspw. einen projektbezogenen Twitterfeed in die Seitenleiste einbinden. Wenn man zu viel Zeit hat, gibt man jeder Seite, die dieses Projekt umfasst die jeweiligen Blöcke. Das ist gearde bei größeren Projekten dann ja wohl mehr als aufwendig.
Wo wir gerade bei Blockadministration sind - kennt jemand ein Modul welches die Blockadministration in den Bearbeitungsmodus eines Artikels/eines Videos/... einbindet, sodass man für die aktivierung eines Blocks für diese Seite nicht immer in die Blockadministration wechseln muss?
Ich danke euch schon wie verrückt für eure Antworten.
Viele Grüße
lundj
- Anmelden oder Registrieren um Kommentare zu schreiben
Zum letzten Punkt: Eigentlich
am 17.11.2011 - 16:43 Uhr
Zum letzten Punkt: Eigentlich müsstest Du nicht für jede Seite in die Blockadministration müssen, um den Block für die Seite freizugeben. Du kannst ja PHP-Code im Block hinterlegen, um zu sagen,
ob der Block angezeigt werden soll oder nicht.
Schau mal in diesen Thread. Weiter unten ist ein Beispiel für D6. Vielleicht hilft Dir sowas weiter.
lg leda
"Du liebst es, Du brauchst es oder Du gibst es weg"
www.leda.ch
Ok, das geht wirklich gut.
am 17.11.2011 - 17:11 Uhr
Ok, das geht wirklich gut. ABER - das ist ja nun nicht wirklich intuitiv für den Benutzer der Seite. Der möchte doch in der Blockadministration einfach ein Autovervollständigungsfeld "Taxonomy" haben und dort die gewünschten Taxonomy-Begriffe eintragen. Letztendlich kann die Filterung ja genau über den von dir verlinkten Code erfolgen, aber derzeit wäre es sehr unintuitiv.
Oder was meinst du dazu?
Ich weiss nur nicht genau wie ich die Blockadministration dahingehend anpassen kann. Ich würde mir das gerne als Ziel für mein erstes Modul setzen. Kannst du mir eine Seite/ein Buch empfehlen welches in diese Problematik einführt?
Viele Grüße
lundj
Ich vermute, dass ich
am 17.11.2011 - 17:31 Uhr
Ich vermute, dass ich eventuell die Frage nicht richtig verstanden habe.
Es ist wie mit dem Ei und dem Huhn:
Ist zuerst die Seite da, oder zuerst der Taxonomie-Eintrag?
Um Taxonomie-Strukturiert auf die einzelnen Seiten zum kommen, gibts ja Taxonony-Menu.
So wie ich Dich verstehe, möchtest Du Blöcke, die nur angezeigt werden, wenn eine Seite mit einem bestimmten Taxobegriff ausgezeichnet sind.
Könnten die Blöcke denn nicht abhängig von einem in der hierarchie dazu übergeordneten Begriff angezeit werden, oder sollen die Blöcke tatsächlich manuell
jedesmal bestimmten Begriffen zugeordnet werden (FreeTagging)?
Ich habe mir gedacht, dass man dann einen Block hat, mit dem obengenannten PHP-Code, der testet, ob die aufgerufene Seite den Term "project1" hat und dann den
Block anzeigt oder nicht.
Bücher kenne ich für dieses "Detail" nicht, aber vielleicht kannst Du mal nach Begriffen wie "drupal 6 show block by taxonomy term" googlen. Da kommt doch einiges.
lg leda
"Du liebst es, Du brauchst es oder Du gibst es weg"
www.leda.ch
Danke für deine schnellen
am 17.11.2011 - 17:47 Uhr
Danke für deine schnellen Antworten.
Also um das klar zu stellen: Es sollte in beide Richtungen funktionieren. Entweder der Block ist schon da und bekommt von mir ein Schlagwort für das er angezeigt werden soll oder ich erstelle eine Seite und weise dieser ein Schlagwort zu, was dazu führt, dass alle Blöcke, die darauf passen auf dieser Seite angezeigt werden. Es handelt sich hierbei sowohl als auch um Freetagging.
also gibt es diese drei Szenarien:
a) Ich lege eine Seite an mit einem FreeTag-Schlagwort. Ich lege einen Block an, weise ihn einer Region zu und gebe an "nur bei diesem Schlagwort anzeigen".
b) Ich lege eine Seite an mit einem FreeTag-Schlagwort. Der dazugehörige Block existiert schon und wird dementsprechend angezeigt.
c) Ich habe alle meine verschlagworteten Seiten da und möchte nun diesen Seiten einen Block hinzufügen. Also lege ich einen Block an, weise ihn wieder einer Region zu und gebe in den Einstellungen an "nur bei diesem Schlagwort anzeigen"
Ich habe natürlich schon nach dieser Problematik gegooglet. Der Code dazu ist mir ja auch einleuchtend. Ich möchte nur wissen inwieweit ich das Drupal-Basismodul "Block" durch ein eigenes Modul so erweitern kann, damit es mir Einstellungsmöglichkeiten ("bei diesem Schlagwort (nicht) anzeigen") ähnlich der Option "auf diesen Seiten (nicht) anzeigen" in der Block-Einstellungs-UI mit anzeigt.
Du schreibst einfach ein
am 17.11.2011 - 18:03 Uhr
Du schreibst einfach ein eigenes Modul, indem es eine Funktion gibt, die True oder False zurückgibt, egal, was Du dort als Bedingung setzt. Diese Funktion rufst Du bei den Sichtbarkeitsbedingungen des Block als PHP-Code auf.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ja, ich möchte doch aber die
am 17.11.2011 - 18:08 Uhr
Ja, ich möchte doch aber die UI in das Blockmodul von Drupal integrieren. Geht das nicht? Man muss den User doch nicht mit weiteren Konfigurationspanels überhäufen, wenn es doch auch einfacher für ihn gehen könnte.
Obwohl ich eigentlich immer
am 18.11.2011 - 09:40 Uhr
Obwohl ich eigentlich immer noch keine Idee davon habe, wie Dein Gesamtanliegen in der Praxis aussehen soll, habe
ich vielleicht folgende Idee wegen der Blockverwaltung:
Ich gehe davon aus, dass es eine endliche Anzahl von Blöcken gibt, deren Titel eindeutig und konstant ist, und zu denen die Seiten zugeordnet werden sollen..
Somit würde ich folgendes tun:
- Ein neues Vokabular mit den Titeln aller für die Seite notwendigen Blöcke
- Im Inhaltstyp der Seite diese Taxo mit Checkboxen zuweisen. Ziel: Pro Seite kann
beim Erfassen mit den Checkboxen eine Zuweisung zu den Blöcken gemacht werden.
- Im Block selbst wird für die Sichtbarkeit eine Funktion aufgerufen (Minimodul), welche nun über den Blocktitel und die neue Taxo des Nodes die Zuordnung checken kann
Bis dahin die Möglichkeit, die einzelnen Seiten einem Block zuzuordnen, ohne Blockverwaltung.
Zum anderen müsste die obige Funktion über ein ODER auch dem Block zugeordnete Terms prüfen, ob sie auf dem angezeigten Node zu finden sind.
Diese müsste man ja hinterlegen/einpflegen, oder?
Entweder funktioniert es mit einer Abfrage über die verwandten Begriffe in der Taxo, oder halt über x Einträge im Bemerkungsfeld.
Hilft das irgendwie weiter?
lg leda
"Du liebst es, Du brauchst es oder Du gibst es weg"
www.leda.ch