views_embeded_view + filter
Eingetragen von sg88 (95)
am 28.09.2011 - 14:24 Uhr in
am 28.09.2011 - 14:24 Uhr in
Hallo zusammen,
ich versuche gerade einen View PHP aufruf mit einem Filter zu erweitern, aber irgendwie übernimmt er meinen Wert nicht in die Variable.
Hier mein Code
<?php
$view = views_get_view('test_view');
$display_id = 'default';
$view->set_display($display_id);
$filter = $view->get_item($display_id, 'filter', 'field_sitz_value');
$filter['2'] = $filter_value;
$view->set_item($display_id, 'filter', 'field_sitz_value', $filter);
print $view->preview();
?>
In meinem View habe ich den Filter manuell angelegt und mit dem Wert 1 versehen. Leider bekomme ich bei der Ausgabe immer nur die Rückgabe mit dem Wert 1 und nicht wie von mir gewünscht mit dem Wert 2. Kann mir hierbei jemand helfen?
Gruß
SG
EDIT: Da ich im Anfängerforum hierzu leider keine Antwort erhalten habe, verschiebe ich es einfach mal nach CCK und Views und hoffe erneut ;)
- Anmelden oder Registrieren um Kommentare zu schreiben
Was mir das merkwürdig
am 30.09.2011 - 09:22 Uhr
Was mir das merkwürdig erscheint ist die Zeile
$filter['2'] = $filter_value;
Zunächst ist $filter_value vorher nicht defniert. Dann ist der Index seltsam ['2'] bedeutet einen String, Du brauchst aber vermutlich an der Stelle eine Integer, also eine 2 ohne die beiden Single-Quotes.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Leider bin ich in PHP nicht
am 30.09.2011 - 09:39 Uhr
Leider bin ich in PHP nicht wirklich fit ... hättest du vielleicht eine Idee wie ich das schreiben muss?
Ohne PHP-Kenntnisse, würde
am 30.09.2011 - 10:21 Uhr
Ohne PHP-Kenntnisse, würde ich solche Versuche lassen. Ich verstehe nicht, was Du eigentlich erreichen willst und kann daher auch keinen passenden Code vorschlagen. Meine erste Antwort hat ja auch rein formale Aspekte des Codes angesprochen.
Warum arbeitest Du mit Filtern die Du über den Code setzen willst? Reichen Dir die Möglichkeiten von Argumenten nicht? Man kann auch mehrere Views definieren und in einem Template, je nach Bedarf, den einen oder den anderen aufrufen mit bereits passend definierten Filtern. Das ist auf jeden Fall einfacher zu handhaben.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo Werner, ich versuche
am 30.09.2011 - 10:31 Uhr
Hallo Werner,
ich versuche das zu realisieren, weil ich folgendes Ziel erreichen möchte:
Ich habe ja bereits in meinem Beitrag hier (http://www.drupalcenter.de/node/37529) es geschafft eine Hessenkarte mit mouseover und bei onklick auf einen Wahlkreis eine Ausgabe auf der gleichen seite, auf der auch die Karte ist, mit einem Bild zu realisieren.
Jetzt will ich aber folgendes, hinter der Seite befindet sich eine Datenbank mit Abgeordneten. Jeder Abgeordneten ist einem Wahlkreis zugeordnet (Alle Wahlkreise haben 4-7 Abgeordnete).
Jetzt möchte ich erreichen, dass bei einem Klick auf einen Wahlkreis, der entsprechende Abgeordnete in einer Box neben der Karte ausgegeben wird.
Sprich, ich benötige später einen variablen Filter auf meinem View, der eine ID von der Wahlkreiskarte ausließt...
Aktuell habe ich noch keinen Dunst wie ich soetwas realisieren kann :P
Dein "variabler Filter" ist
am 30.09.2011 - 11:05 Uhr
Dein "variabler Filter" ist kein Views-Filter, sondern wie Werner schon schrieb ein Views-Argument. Dafür sind die Dinger da ;)
Suchmaschinenoptimierung (SEO) & Drupal
Hmmm ok, das habe ich mir
am 30.09.2011 - 11:44 Uhr
Hmmm ok,
das habe ich mir auch schonmal kurz angesehen. Damit kann ich ja die URL Manipulieren und dann z.B. sagen
/drupalinstanzt/abgeordneter/1 = wahlkreis1
/drupalinstanzt/abgeordneter/2 = wahlkreis2
/drupalinstanzt/abgeordneter/3 = wahlkreis3
Aber wie komm ich jetzt damit ans Ziel :P
Du hast den Datentyp
am 30.09.2011 - 12:00 Uhr
Du hast den Datentyp Abgeordneter und darin das Feld Wahlkreisnummer. Du baust einen View, der die Abgeordneten ausgibt und als Argument die Wahlkreisnummer bekommt. Damit werden die Abgeordneten herausgesucht, die für diesen Wahlkreis zuständig sind. In der Klickroutine der Map rufts Du jetzt mittels Views_embed_view den View auf und übergibst im dritten Parameter die Wahlkreisnummer. Jetzt mußt Du Dich "nur noch" um die Anzeige dieses Views an der richtigen Stelle kümmern.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *