Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Views ›

Erstellung einer Übersichtsseite mit mehreren Views für spezifischen Content Type (CKK)

Eingetragen von longvalley (33)
am 27.06.2008 - 13:29 Uhr in
  • Views
  • Drupal 6.x

Hallo Drupaler,

nachdem mich dieses Forum schon an 2 Stellen meines Projekts "Überführung einer Uni-Lehrstuhlseite nach Drupal 6" unterstützt hat, hoffe ich auch in diesem Fall auf eure Unterstützung.

Folgende Seite muss in Drupal 6 umgesetzt werden:

http://www.ktpweb.de/1_Mitarbeiter.html

Mein bisheriges Vorgehen sah wie folgt aus:

  1. Erstellung eines eigenen Content Types 'staff_member' für Mitarbeiter am Lehrstuhl -> dazu benutzte ich CKK
  2. Erstellung einer node-staff_member.tpl.php, um die Anzeige Mitarbeiter-Seite zu themen ->funktioniert einwandfrei

Nun geht es an die Erstellung der Übersichtseite, die unter dem obigen Link zu finden ist... Nur, wie gehe ich da vor?

Folgende Anforderungen habe ich an die Seite:

  1. Mehrere Views des ContentTypes 'staff_member' auf einer Seite anzeigen
  2. ImageMap für das Bild (Koordinaten-Informationen sind im ContentType 'staff_member' für jeden Mitarbeiter in einem Feld 'field_coords' abgelegt)


Mein Problem:

Mein Problem ist jetzt, dass ich nicht einfach hergehen kann und einen View mit DisplayType = Page erstelle, der mir die Mitarbeiter anzeigt. Dann sehe ich ja auf dieser Seite nur alle Mitarbeiter und nicht gefiltert in mehreren Views? Zudem kann ich da ja auch kein Bild mit einbauen (vielleicht schon, aber damit habe ich mich noch nicht beschäftigt...).

Die Umsetzung

Die Imagemap habe ich jetzt wie folgt umgesetzt:

  1. Das Bild ist Content meines neu erstellten ContentTypes 'staff_overview' (für das Bild verwende ich CKK_IMCE) und wird darüber eingebunden
  2. Erstellen einer Funktion in der Datei template.php, die mir alle nodes eines bestimmten Types (hier staff_member) aus der DB liest.
  3. Bauen des map-Tags mit den entsprechenden Area-Tags aus dem den Informationen dieser node-Daten

Dies funktioniert ohne Probleme. Ist aber schon ein workaround. Geht das aus eurer Sicht einfacher?

Weiterhin bleibt das Problem mit den Views (Leider gibt es zu Views2 noch ziemlich wenig Material):
Nach langem Suchen im Netz, ist mir folgende Idee gekommen: Leider weiss aber noch nicht, ob das auch so funktioniert wie ich mir das vorstellen. Deshalb würde ich gerne mal eure Meinung dazu hören:

Es ist aus meiner Sicht nicht erforderlich für jede Gruppe einen eigenen View zu erstellen. Vielmehr möchte ich die Möglichkeiten von Argumenten bzw. Filtern (die beide dynamisch auf der Seite zugewisen werden) nutzen...

Also hier meine Idee:

  1. Wie oben beschrieben, habe ich mir für die Übersichtseite einen neuen ContentType 'staff_overview' gegönnt
  2. Ich habe Mitarbeiter als node-type staff_member voliegen. Erstelle nun einen View, der mir alle(!) Mitarbeiter am Lehrstuhl ausgibt.
  3. Nun füge beim ContentType 'staff_member' noch ein Feld 'staff_group' ein. Dieses ist für die Zugehörigkeit einer Person zu einer(!) Gruppe (Professoren, Lehrbeauftragte, etc.) nötig. Definiere diese Feld als Text-List... Man kann also einen Eintrag pro Mitarbeiter auswählen...Ich habe somit jetzt eine Unterscheidungsmöglichkeit der Mitarbeiter anhand dieses Feldes
  4. Nun möchte ich diesen View mit allen Mitarbeitern mehrfach auf meine neu erstellte Übersichtsseite vom Typ 'staff_overview' anzeigen. Hierzu habe ich folgenden Code gefunden:
    <?php
    $view
    = views_get_view('staff_all');
    print
    $view->execute_display('default',$args);
    ?>
  5. Über das $args-Array kann man nun Argumente mitgeben (Ich hoffe mal, dass ich das richtig verstanden habe und diese Argumente kann ich im View unter Argumente wieder nutzen?). Eine andere Möglichkeit wäre doch sicherlich an dieser Stelle händisch einen Filter zu definieren und auf den View anzuwenden.
  6. ... wie geht's weiter...

Genau an dieser Stelle komme ich nicht weiter. Ich habe noch nicht ganz die Verwendung von Argumenten verstanden. Wenn man im Netz sucht, dann findet man immer nur Erläuterungen, die sich auf die Übergabe von Argumenten über die URL beziehen. Filterung erfolgt somit anhand eines bestimmten Musters in der URL. Dies ist in meinem Fall ja nicht zutreffend. Ich möchte die Argumente im PHP-Code übergeben....

Wie kann ich also die übergebenen Argumente (aus dem PHP-Code) für die Anzeige in meinem View nutzen? Was muss ich in meine View einstellen, damit bspw. wenn ich als Argument 'prof' (key von Gruppe Professor) übergebe, nur die Mitarbeiter dieser Gruppe angezeigt werden?

Habe auch gelesen, dass man mit dem Modul Taxonomy Kategorisierungen vornehmen kann. Wäre das in diesem Fall sinnvoller sich in den Umgang mit dieses Modul einzuarbeiten und es zu nutzen? Eigentlich will ich ja nichts weiter als eine Kategorisierung von Mitarbeitern nach bst. Gruppen vornehmen und diese mit Hilfe von Views getrennt anzeigen...

Wenn Taxonomy die richtige Wahl wäre, hat da jemand vielleicht ein gutes Tutorial?

Alternativ würde mich interessieren, wie man in obigen Code einen Filter auf das view-Objekt anwendet, dass ebenfalls nur die Mitarbeiter einer bestimmten Gruppe anzeigt...

Prinzipiell die Frage an alle Entwickler die sich besser mit Drupal auskennen: Wie hättet ihr die Übersichtsseite ins System eingebunden?

Ich weiss, dass dies eine sehr lange und ausführliche Beschreibung des Problems ist, hoffe aber, dass sich trotzdem jemand bis zu diesem Punkt vorkämpft und mir eine Antwort geben kann...

Vielen Dank im Voraus,

Gruß
Marcel

‹ Image Field in CCK Berechtigungen für öffentliche View über Profile ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Noch ein Nachtrag

Eingetragen von longvalley (33)
am 27.06.2008 - 13:50 Uhr

Hallo,

bzgl. der Anwendung von Filtern auf einem View bin ich gerade fündig geworden. Somit könnte ich das jetzt wir oben angedeutet umsetzen. Folgender Code filtert mir alle Mitarbeiter der Gruppe Professoren (key=prof) heraus:

<?php
 
//view-Objekt holen -> Name des views staff_all
$view = views_get_view('staff_all');
//setzen des displays
$display_id = 'default';
$view->set_display($display_id);
//filter hinzufügen
$id = $view->add_item($display_id, 'filter', 'node_data_field_staff_group', 'field_staff_group_value');
$item = $view->get_item($display_id, 'filter', $id);
//setzen des Wertes nach dem gefiltert werden soll
$item['value'] = array('prof');
//aktualisieren des Filters
$view->set_item($display_id, 'filter', $item['id'], $item);
$view->is_cacheable = FALSE;
//Ausgabe des Views
print $view->execute_display('default', $args);
?>

Generell bleibt aber die Frage, ob man die ganze Sache nicht doch eleganter mit den von Drupal gegebenen Modulen lösen kann.

Würde mich über Anregungen und natürlich antworten zu den Fragen im ersten Post sehr freuen...

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also die HTML-Seite sowie

Eingetragen von Tobias Bähr (4019)
am 27.06.2008 - 14:09 Uhr

Also die HTML-Seite sowie ich sie sehe, lässt sich mit einer View erstellen. Erstellst ein View für das Bild, filterst es nach der Node-ID die das Bild hat.

Dann wählst Attach aus,hängst als eine View an die andere ran. Machst deine Einstellungen, nicht vergessen, dass diese View überschriebene Werte nehmen soll.
Dann kannst die Felder noch nach dem Feld was für Lehrbeauftragte usw zuständig ist, sortieren.

Ggf ist noch CSS angesagt. Da beide Views untereinander dargestellt werden.

----------------------------------------
Alle Angaben ohne Gewähr!!:D
http://www.tobiasbaehr.de/

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo und vielen Dank für

Eingetragen von longvalley (33)
am 27.06.2008 - 14:52 Uhr

Hallo

und vielen Dank für die Antwort. Leider bin ich noch nicht so fit im Umgang mit Drupal, so dass ich deine Antwort noch ein wenig hinterfragen muss...

Zitat:

Erstellst ein View für das Bild, filterst es nach der Node-ID die das Bild hat.

Ich soll also einen View erstellen, der über den festgelegten Filter Node->id = xyz nur den Inhlt meiner Node vom Typ 'staff_overview' (mein erstellter ContentType für die Überischtsseite)anzeigt? Wenn ja, soweit verstanden!

Zitat:

Dann wählst Attach aus,hängst als eine View an die andere ran...

Was ist Attach? Eine Objektmethode des view-Objektes oder was meinst du damit genau?

Zitat:

Machst deine Einstellungen, nicht vergessen, dass diese View überschriebene Werte nehmen soll...

Ich soll meine Einstellungen wie im obigen Code mit dem Filter beschrieben machen, oder worauf bezieht sich deine Aussage? Welche Konsequenz ergibt sich durch die Tatsache, dass der View überschriebene Werte nehmen soll? Was muss ich zusätzlich beachten?

Überschriften je nach Gruppe (Professor, etc.) (siehe mein Link zu der Vorgabeseite) wären bei deiner Lösung auch möglich?

Wenn du mir diese Dinge noch beantworten würdest, wäre ich dir sehr dankbar!

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich mach ein Screencast,

Eingetragen von Tobias Bähr (4019)
am 27.06.2008 - 15:12 Uhr

Ich mach ein Screencast, wenn du Views für Drupal6 meinst.

Bild-->Imagemap
WErte überschreiben, da sonst die Eigenschaften der View vom Bild vererbt werden.(Felder,Filter etc)

Attach ist in der auswahlliste dabei.Vorausgesetzt du benutzt Drupal6.

Allgemein will ich sagen, du brauchst das nicht coden.

----------------------------------------
Alle Angaben ohne Gewähr!!:D
http://www.tobiasbaehr.de/

  • Anmelden oder Registrieren um Kommentare zu schreiben

Leider werde ich aus deinen

Eingetragen von longvalley (33)
am 28.06.2008 - 15:16 Uhr

Leider werde ich aus deinen Antworten nicht schlau... Ich spreche von Drupal 6 und Views.
Ein Screencast wäre super...

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich hab dir doch über das

Eingetragen von Tobias Bähr (4019)
am 28.06.2008 - 18:53 Uhr

Ich hab dir doch über das Kontaktformular eine Mail geschickt mit ein Link zum Video! Oder kontrollierst du dein Mails nicht?

----------------------------------------
Alle Angaben ohne Gewähr!!:D
http://www.tobiasbaehr.de/

  • Anmelden oder Registrieren um Kommentare zu schreiben

Sorry - hatte Mails noch nicht wieder abgerufen

Eingetragen von longvalley (33)
am 29.06.2008 - 13:31 Uhr

Hallo Spartacus,

hatte meine Mails am WE noch nicht wieder abgerufen und nur kurz ins Forum geschaut ^^
In der Zwischenzeit habe ich die Mails gecheckt und prompt deine Mail gefunden...

Vielen, vielen Dank für deine Mühe. Werde mir den Screencast gleich mal anschauen...

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Noch eine Frage...

Eingetragen von longvalley (33)
am 30.06.2008 - 09:52 Uhr

Hallo Spartacus,

der Screencast hat mir sehr weitergeholfen. Konnte anhand deiner Schilderungen sehr gut die Verwendung von Views und den Anhängen nachvollziehen... Habe jetzt alles soweit nachgearbeitet und den View samt Attachment im System.

Was mir aber noch nicht so ganz klar ist: Du wählst als Gruppierungsmerkmal das Beitragsdatum aus. Prompt erscheint in deiner Vorschau und auch in deiner Anzeige das Gruppierungsmerkmal als Überschrift des jeweiligen Gruppierungsbereich (2008, darunter die Beiträge, 2007 -> etc) . Bei mir stehen da nur gruppiert nach dem gewählten Merkmal die Node->Titles als Link. Die Überschriften fehlen...

Wie kriege ich es jetzt hin, dass über den gruppierten Blöcken das Gruppierungsmerkmal steht?

Zur Info. Nutze als Gruppierungsmerkmal das Textfiled "field_staff_group" das selbst erstellten NodeTypes 'staff_member'. Dies ist, wie im ersten Beitrag beschrieben eine Text-Liste, wo genau ein Wert prof|Professor, wissM|Wissenschaftlicher Mitarbeiter .... etc. pro Mitarbeiter ausgewählt werden kann.

Ich hätte gerne, dass der 'Plained Text' als Überschrift über jedem gruppierten Block steht.

Hast du den View irgendwie gestylt um das Gruppierungsmerkmal zusätzlich mit anzuzeigen?

Vielen Dank,

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hat sich erledigt

Eingetragen von longvalley (33)
am 30.06.2008 - 12:34 Uhr

Hallo,

lag scheinbar an der Ansicht in dem von mir genutzten Themee Amadou...
In meinem eigenen Theme, wo ich nichts gethemed habe sehe ich die Namen der Gruppierungsparameter...

Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Der Screencast würde mich

Eingetragen von rastatt@drupal.org (140)
am 02.07.2008 - 16:47 Uhr

Der Screencast würde mich auch interessieren, kann der auch veröffentlicht werden? Mir persönlich würde natürlich auch eine PN reichen...

  • Anmelden oder Registrieren um Kommentare zu schreiben

besser Veröffentlichen

Eingetragen von gording (36)
am 19.12.2008 - 14:49 Uhr

... da auch mich dieser Screencast interesieren würde und bestimmt auch andere Drupaler.

Gruß

  • Anmelden oder Registrieren um Kommentare zu schreiben

würde mich auch

Eingetragen von thompson (284)
am 20.12.2008 - 12:40 Uhr

würde mich auch interessieren.

Sport-Portal | Bodybuilding

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Ветошь для протирки оборудования
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 5 Tagen
  • Hey danke
    vor 2 Wochen 6 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 6 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 4 Tagen
  • Da scheint die Terminologie
    vor 3 Wochen 4 Tagen
  • Kannst doch auch alles direkt
    vor 4 Wochen 1 Tag
  • In der entsprechenden View
    vor 4 Wochen 1 Tag
  • Dazu müsstest Du vermutlich
    vor 4 Wochen 1 Tag
  • gelöst
    vor 6 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250234
Registrierte User: 20455

Neue User:

  • JoMek
  • Znogsnernoimb
  • ByteScrapers

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 28 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association