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 (9466)
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 (9466)
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

  • gepatchte PHP Version 7.4 für Windows
  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
Weiter

Neue Kommentare

  • Muss ja nicht genau php 8.3 sein
    vor 1 Woche 4 Tagen
  • Guten morgen und Danke
    vor 1 Woche 4 Tagen
  • Evtl. versuchen auf PHP 8 zu wechseln
    vor 1 Woche 4 Tagen
  • Danke Schmittrich. Die Frage
    vor 1 Woche 6 Tagen
  • Keine Antwort auf die Frage nach dem Woher
    vor 1 Woche 6 Tagen
  • Danke ich werde mir die
    vor 7 Wochen 4 Tagen
  • Vielen Dank für Ihren
    vor 8 Wochen 1 Stunde
  • Composer ist sehr ratsam
    vor 8 Wochen 2 Tagen
  • Vielen Dank für den
    vor 8 Wochen 4 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 8 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250323
Registrierte User: 20572

Neue User:

  • alxshell
  • AnthonyhoF
  • Philiphelve

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 7 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