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

(gelöst) module_invoke() funktioniert nicht in Full Node View

Eingetragen von mtz (25)
am 01.11.2010 - 01:17 Uhr in
  • Views
  • Drupal 6.x

Hi Leute,

in meiner node.tpl wird eine Google Map eingebunden. Ich lade den vom Gmap Modul bereitgestellten Block direkt in der node.tpl:

$blockView = module_invoke('gmap_location' ,'block', 'view', 0);
print $blockView['content'];

Wird die Node direkt aufgerufen, funktioniert alles einwandfrei.

Nun habe ich eine View (Page Display), die mir die jeweils aktuellste Node des Content Typs anzeigt (und zwar als vollständige Node). Problem: Der Block wird hier gar nicht geladen und ich stehe auf dem Schlauch. Hat jemand eine Idee, wie ich den da reinkriege?

Danke + Gruß

‹ [gelöst] Flags eines Users per View ermitteln Views - Nach setzen des Filters "Taxonomie: Begriff" stellt Drupal keinen Beitrag mehr dar ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Dieser Aufruf gilt einer

Eingetragen von wla (9461)
am 01.11.2010 - 10:15 Uhr

Dieser Aufruf gilt einer Funktion im Gmap_Locations-Modul. Die ist so geschrieben, daß sie nur auf einer Node-Seite funktionieren kann. Es wird im Code explizit abgefragt, ob Argument 0 ==node ist und Argument 1 eine Zahl. Wenn nicht, erfolgt keine Ausgabe.
Für Deine Aufgabenstellung ist invoke_module('gmap_location' ,'block', 'view', 0) aber auch nicht nötig. Setze den Darstellungstyp in der View auf Gmap, dann bekommst Du Deine Karte.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Werner, danke für deine

Eingetragen von mtz (25)
am 01.11.2010 - 11:35 Uhr

Hi Werner,

danke für deine Hilfe. Die Darstellung auf Gmap zu setzen hilft mir leider nicht, da dann ausschließlich die Karte gezeigt wird. In meiner node.tpl werden aber noch etliche andere CCK-Felder geladen und verarbeitet.

Zitat:

Es wird im Code explizit abgefragt, ob Argument 0 ==node ist und Argument 1 eine Zahl. Wenn nicht, erfolgt keine Ausgabe.

Das habe ich nicht ganz verstanden. Meinst Du damit die Argumente, mit denen ich module_invoke() aufrufe? In dem Fall dachte ich, dass Argument 0 (?) der Name des Moduls ist und Argument 1 eben besagt, dass der Block geladen werden soll?

Verstehe ich dich richtig, dass ich mein Problem lösen kann, wenn ich die Argumente beim Aufruf von module_invoke() ändere? Kannst Du mir sagen wie diese aussehen müssen?

Danke
Matze

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nein, Du hast da was falsch

Eingetragen von wla (9461)
am 01.11.2010 - 11:43 Uhr

Nein, Du hast da was falsch verstanden. module_invoke('gmap_location' ,'block', 'view', 0) ruft im Modul Gmap_Location die Funktion gmap_location_block auf. Diese Funktion von Gmap_location funktioniert nur und ausschließlich auf Seiten, deren URL node/xxx lautet. Da ist auch mit anderen Übergabeparametern nichts zu machen.
Du mußt für Dein Problem dann eben 2 Views erstellen. Einen für die Daten und einen für die Karte und die dann aneinander hängen.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Workaround

Eingetragen von mtz (25)
am 01.11.2010 - 12:10 Uhr

Da meine Page View identisch mit der Detailansicht der Node ist und nur dazu diente jeweils die aktuellste Node des Content Types komplett anzuzeigen, habe ich jetzt folgenden Workaround genutzt. Vielleicht braucht es mal jemand:

Ich habe für das entsprechende Display ein eigenes Template erstellt, in meinem Fall "views-view--Deals--page-3.tpl.php" und darin folgenden Code:

drupal_goto('node/'.$view->result[0]->nid.'')

Somit wird man beim Aufruf der View direkt zur Detailseite der Node geschickt und dort wird der Gmap Block korrekt geladen.

  • 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?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

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

Statistik

Beiträge im Forum: 250233
Registrierte User: 20453

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» 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 12 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