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

[gelöst] Zu einem bestimmten Inhalt in der Seitenleiste die passenden Namen anzeigen

Eingetragen von mleitl (26)
am 29.11.2010 - 13:34 Uhr in
  • Views
  • Drupal 6.x

Hallo Freunde der kniffligen Views,

ich möchte in meiner Seitenleiste eine Liste mit Namen erstellen.
Jeder Name ist Teil eines Node (Inhaltstyp Adressen) mit weiteren Adressdaten.
In jedem dieser Nodes soll es auch ein Feld für eine Berufsbezeichnung geben.

In einem zweiten Inhaltstyp Story soll das Feld dieser Berufsbezeichnung auch auftauchen, damit man sie beim Erstellen einer neuen Story auswählen kann.

Ich habe jetzt verschiedene Versuche unternommen:

- Berufsbezeichnung als CCK-Feld
- Berufsbezeichnung als Taxonomie

Aber der entscheidende Kniff fehlt mir noch:
Wie bekomme ich die Block-View dazu, in der linken Spalte ausschließlich die Namen auszuspucken, deren Beruf beim Erstellen der Story ausgewählt wurde?

Bisher fehlt mir die richtige Idee, wie ich das mit den Argumenten richtig umsetze - und ich weiß nicht, ob das mit dem CCK-Feld bzw. der Taxonomieliste der richtige Ansatz ist.

Herzlichen Dank im voraus

Michael

‹ [gelöst] related page block nur 1 Term wird angezeigt aber alle nodes Nach Auswahl eines Taxonomy-Terms Inhalte bestimmter Felder einfügen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

ich würde alles was möglich

Eingetragen von stone_d (178)
am 02.12.2010 - 00:12 Uhr

ich würde alles was möglich ist immer mit Taxonomien lösen. In deinem Fall auch die Berufsbezeichnungen. Wie sieht denn die URL einer Story aus?

  • Anmelden oder Registrieren um Kommentare zu schreiben

URL-Syntax

Eingetragen von mleitl (26)
am 02.12.2010 - 10:00 Uhr

Hi. Die URL ist ganz schlicht: node/123
Mit Pathauto habe ich sie jetzt umgestellt auf /kategorie/subkategorie/titel_node-id

Wobei: die Kategorie-Taxonomie ist eine zusätzliche zur Berufstaxonomie.

  • Anmelden oder Registrieren um Kommentare zu schreiben

In dem view für die

Eingetragen von stone_d (178)
am 02.12.2010 - 10:25 Uhr

In dem view für die Namensliste würde ich die TermID der aktuellen Node (also die der Story) als Argument an den view übergeben.
Dazu wählst du als Argument "Taxonomie: Begriff-ID" und bei "Standardargument zu Verfügung stellen" -> "PHP-Code". Dort trägst du folgendes ein:

$node = node_load(arg(1));
$vid = [hier die VokabularID für die Berufskategorien];
$terms = taxonomy_node_get_terms_by_vocabulary($node->nid, $vid);
// Da du vermutlich eh nur eine Berufsgruppe hast, wird auch in dem resultierenden term-Array nur ein Element enthalten sein. Deswegen ...
return $terms[0];
// ... Ansonsten nen Haken bei "Ermöglicht die Zusammenarbeit mehrerer Argumente" setzen und
$termsAll = array();
foreach ($terms as $term) {
  array_push($termArray, $term->tid);
}
return $termArray;

Zur Validierung kannste dann auch noch "Taxonomie-Begriff" wählen und dort dein Vokabular. Dann kannst du dir theoretisch auch oben die $vid sparen. Aber die Datenbankabfrage ist sicher performanter, wenn du die vid mitgibst.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Funktioniert!

Eingetragen von mleitl (26)
am 02.12.2010 - 10:58 Uhr

Cool. Ich danke Dir sehr herzlich.
Die Lösung funktioniert wunderbar. Ich habe noch einen Filter nach Node-Typ eingesetzt, so dass im Block auch nur die Berufsadressen angezeigt werden.

Parallel habe ich noch folgende schöne Anleitung gefunden:
http://drupaleasy.com/blogs/ryanprice/2008/06/using-views-2-drupal-6-cre...

Aber Deine Lösung gefällt mir insofern besser, als dass die richtige Taxonomie gleich bezeichnet wird.
(btw: was bedeutet folgende Zeile in der englischen Anleitung:

return implode('+',$terms);

Eine ähnliche Frage wird auch hier diskutiert: http://www.drupalcenter.de/node/32018
Er will zusätzlich noch die Taxonomie-Terms ausgeben - die wollen aber nicht.

Also nochmals vielen Dank.

Grüße
Michael

  • Anmelden oder Registrieren um Kommentare zu schreiben

$terms ist ein Array mit den

Eingetragen von wla (9461)
am 02.12.2010 - 11:58 Uhr

$terms ist ein Array mit den Inhalten term1, term2, term3.
return implode('+',$terms); liefert dann den String "term1+term2+term3" zurück (also mit Plus-Zeichen zwischen den Terms).

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • wmtbpo361x
  • Rolle erstellen nicht zu finden
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • 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
Weiter

Neue Kommentare

  • Rollen
    vor 5 Tagen 11 Stunden
  • Inzwischen sind wir bei
    vor 2 Wochen 2 Tagen
  • Migrieren von D7 auf D8/ D10/ D11
    vor 2 Wochen 2 Tagen
  • melde mich mal wieder, da ich
    vor 10 Wochen 22 Minuten
  • Hey danke
    vor 10 Wochen 19 Stunden
  • Update: jetzt gibt's ein
    vor 10 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 10 Wochen 5 Tagen
  • Da scheint die Terminologie
    vor 10 Wochen 6 Tagen
  • Kannst doch auch alles direkt
    vor 11 Wochen 3 Tagen
  • In der entsprechenden View
    vor 11 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250239
Registrierte User: 20468

Neue User:

  • LorisBen
  • StevenEness
  • ocvk2810

» 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 1 Benutzer und 19 Gäste online.

Benutzer online

  • Gorkde

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