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

Views Block Argument übergeben

Eingetragen von joerg-1958 (106)
am 30.09.2009 - 12:51 Uhr in
  • Views
  • Drupal 6.x

Hallo zusammen,
ich habe eine View als Block definiert und möchte ein Argument übergeben.
Das Argument soll der letzte Teil der URL der Seite sein, auf den der Bock angezeicht wird.

In der View unter Argument - PHP validate code habe ich folgendes eingetragen:

$view->is_cachable=0;
$path = drupal_get_path_alias($_GET['q']);
$path = explode('/', $path);
if ($path[0] == 'hardware' && $path[1] != '') {
return $path[1];
}

Leider wird das Argument nicht gesetzt.

Hat da irgenjemand eine Lösung?

Danke Jörg

‹ [gelöst]Alte Termine filtern [gelöst] View in einem Block anzeigen, $user->profile als Argument verwenden ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Wie sieht die URL der Seite

Eingetragen von wla (9461)
am 30.09.2009 - 13:29 Uhr

Wie sieht die URL der Seite aus, auf der dieser Block gezeigt wird? Du bist Dir darüber im Klaren, daß Dein Code den 2. Teil aus der URL dieser Seite bringt (also falls die Seite als URL hat hardware/monitore, wird "monitore" übergeben)?
Was passiert, wenn Du das Argument, das Du erwartest, in der Vorschau bei dem Block eingibst?

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi! Ich hatte ein ähnliches

Eingetragen von binki@drupal.org (42)
am 30.09.2009 - 13:38 Uhr

Hi!
Ich hatte ein ähnliches Problem, ein Block sollte eine View darstellen und dazu ein Argument aus der URL verwenden.
Es gibt verschiedene Möglichkeiten der View das Argument zu übergeben.
1. Innerhalb der View über Standard Argumnente (habe ich leider keine Erfahrung)
2. Das Argument im Block abgreifen und dann an die View übergeben (via views_embed_view).

Beispiel zu 2. (den Code einfach in einen Block einfügen)

<?php
$args
= $node->field_company_lable[0][value];
print
theme('view', 'company', 3, false, 'block', array($args));?>

<h3 class="title" >
<?php print_r ($node->field_ort[0][value]); ?></h3>
<?php print views_embed_view('company', 'block_1', $args);
?>

Vielleicht nicht die Beste Lösung, aber sie funktioniert!

Grüße,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

meine URL schaut wie folgt

Eingetragen von joerg-1958 (106)
am 30.09.2009 - 13:41 Uhr

meine URL schaut wie folgt aus:
my_domain/hardware/PDA und ich möchte PDA als Argument verwenden.

Wenn ich in der Vorschau als Argument PDA eingebe, wird die View auch richtig angezeigt

Grüße
Jörg

  • Anmelden oder Registrieren um Kommentare zu schreiben

$argument = arg(1)

Eingetragen von quiptime (4972)
am 30.09.2009 - 13:46 Uhr

my_domain/hardware/PDA

<?php
if (arg(0) == 'hardware' && arg(1) != '') {
 
$argument = arg(1);
}
?>

------------------------
Quiptime Group

  • Anmelden oder Registrieren um Kommentare zu schreiben

Dann sollte das auch so

Eingetragen von wla (9461)
am 30.09.2009 - 13:49 Uhr

Dann sollte das auch so funktionieren. Hast Du mal alle Caches gelöscht?

@quiptime
Das ertse Argument einer Page ist aber node und nicht hardware. Es muß hier schon der URL-Alias abgefragt werden.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

so funktionierts! Danke,

Eingetragen von joerg-1958 (106)
am 30.09.2009 - 14:03 Uhr

so funktionierts!
Danke, habe ich zumindest mal eine Lösung.
Ich probiere aber noch den Vorschlag von Werner aus.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Patternmatching in PHP ersparen

Eingetragen von quiptime (4972)
am 30.09.2009 - 14:09 Uhr
wla schrieb

@quiptime
Das ertse Argument einer Page ist aber node und nicht hardware. Es muß hier schon der URL-Alias abgefragt werden.

Du sollst ja auch nicht stupid das uebernehmen was ich gepostet habe. Ich wollte nur auf die Sache mit der Funktion arg() hinweisen. Damit kann man sich unter Umstaenden viel Patternmatching in PHP ersparen.

------------------------
Quiptime Group

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wuerdest Du uns bitte Deine Loesung verraten?

Eingetragen von quiptime (4972)
am 30.09.2009 - 14:11 Uhr
joerg-1958 schrieb

so funktionierts!

Ja und wie genau funktioniert es nun? Wuerdest Du uns bitte Deine Loesung verraten?

------------------------
Quiptime Group

  • Anmelden oder Registrieren um Kommentare zu schreiben

Block View Argument mittel PHP validate code:

Eingetragen von joerg-1958 (106)
am 30.09.2009 - 14:18 Uhr

Hallo Werner,

Die Lösung war der Vorschlag von Ralph.

Leider mit dem Code

if (arg(0) == 'hardware' && arg(1) != '') {
$argument = arg(1);
}

kommt in der View Vorschau die Meldung 'Es wurde keine Abfrage ausgeführt'

Caches sind alle geleert:

Wegen url-alias hatte ich ja

$path = drupal_get_path_alias($_GET['q']);
$path = explode('/', $path);
if ($path[0] == 'hardware' && $path[1] != '') {
return $path[1];
}

geschrieben.
Das ging aber auch nicht :-(

  • 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 3 Wochen 1 Tag
  • Hey danke
    vor 3 Wochen 2 Tagen
  • Update: jetzt gibt's ein
    vor 3 Wochen 3 Tagen
  • Hallo, im Prinzip habe ich
    vor 4 Wochen 18 Stunden
  • Da scheint die Terminologie
    vor 4 Wochen 21 Stunden
  • Kannst doch auch alles direkt
    vor 4 Wochen 5 Tagen
  • In der entsprechenden View
    vor 4 Wochen 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 4 Wochen 5 Tagen
  • gelöst
    vor 7 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 7 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20456

Neue User:

  • Znogsnernoimb
  • ByteScrapers
  • Mroppoofpaync

» 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 7 Gäste online.

Benutzer online

  • wla

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