Views + Column-ID (Col) abfrage (?)
am 23.10.2009 - 09:40 Uhr in
Hallo liebe User,
ich habe für mich Drupal neu entdeckt und bin seit ca. 3 Wochen fleißig dabei mich mit dem ganzen System anzufreunden. 2 Bücher habe ich auch schon gelesen und auch dieses Forum ist stets ein gutes "Freund".
Allerdings bin ich jetzt zu einem Punkt angelangen, wo ich noch nicht wirklich rein bzw. durchgestiegen bin. Ich denke..überbegriff dürfte vlt. "API" sein, bin allerdings noch nicht so gut bewandert damit.
Warum ich hier schreibe ist...ich bräucht dringend hilfe von erfahrenen Drupal-Entwickeln.
Problembeschreibung:
Ich habe ein VIEW mit Hilfe des VIEWS2-Modul eingerichtet und modifiziert.
Die View ist für die Frontpage und gibt mir Prozeile (Row) 6 einzelne Nodes (als Teaser) aus (Einstellung in der View -> "Beiträge pro zeile: 6" eingestellt)...
Funktioniert auch alles wunderbar - keine Probleme. Nun möchte ich per PHP erfragen können, über dem Node auf der Seite, welche ID/Beitragsnummer es in genau dieser Seite/Ansicht bzw. dem VIEW eingenommen hat (nicht zu verwechseln mit der Node-ID!! Die kenn ich!).
Beispiel:
Erste Zeile : Beiträge 1-6 (1,2,3,4,5,6) in einer Reihe.
Zweite Zeile: Beiträge 7-12 (7,8,9,10,11,12)in einer Reihe.
...
... Und so weiter
Jetzt möchte ich mit PHP-Code, in dem eigenen (Node-)Content der als Teaser mit hilfe von View dargestellt wird, erfragen...welche Beitrags-ID diese Node in der aktuellen Ansicht besitzt.
Das 6te Node in der erste Reihe sollte wissen, ich bin jetzt Beitrag Nr 6, also letztes der Reihe 1.
Ich hoffe, ich konnte es einwenig unkompliziert darstellen.
Über eine Hilfestellungen oder Anregungen, würde ich mich freuen.
Vielen Dank und vielleicht bis bald :)
Liebe Grüße,
Axel
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi, schau mal in dem View
am 23.10.2009 - 10:14 Uhr
Hi,
schau mal in dem View unter "Theme: Information". Der View selbst besteht aus einer Menge Dateien und in einer ist das grundsätzliche foreach. Ich denke, das was du willst, kannst du irgendwo in den Templates unterbringen.
---
Viele Grüße,
Kars-T
Super!!! Aber...ein Schritt fehlt mir noch zur Lösung...
am 23.10.2009 - 14:12 Uhr
Erst einmal möchte ich mich für die Anteilnahme bedeanken!!!
Ich wurde fündig...und zwar in der Datei "views-view-grid.tpl.php".
Darin habe ich auch eine "foreach" Funktion entdeckt und konnte auch den "Träger" meiner Information entdecken:
<?php
foreach ($columns as $column_number => $item):
?>
Und zwar steckt diese Info die ich gesucht habe in der Variable -> $column_number.
Diesen Wert kann ich auch problemlos innerhalb der Datei "views-view-grid.tpl.php" verwenden.
Jetzt bräuchte ich allerdings einen Zugriff von "ausserhalb" auf diesen Variablen-Wert(e).
Und zwar möchte ich diesen Wert verfügbar haben aus meiner Contemplate-Datei (Rubrik: Teaser) in einem PHP-Quelltext.
Nun meine Fragen dazu:
- Ist dies möglich? Wenn ja, wie kann ich das umsetzen bzw. angehen?
- Wenn nicht, wie könnte ich anders zu meinem Ziel gelangen?
Viele Grüße,
Axel
Hat keiner einen Tipp ...
am 25.10.2009 - 15:12 Uhr
Hat keiner einen Tipp ... für mich?
Habe mich mit dem Oberbegriff "globale Variablen" beschäftigt, aber ich habe da noch keinen Ansatz gefunden.
Hat jemand schon mal so etwas genutzt oder gelesen?
Zum Zusammenspiel der
am 25.10.2009 - 17:35 Uhr
Zum Zusammenspiel der Templates und wie das mit Contemplate läuft kann ich dir ohne viel Forschung nichts sagen. Wenn du das für CSS brauchst, dann könntest du auch einfach noch ein < div > drum setzen, mit einer ID oder Klasse. Keine Ahnung, was du eigentlich erreichen willst.
---
Viele Grüße,
Kars-T
Guten Morgen :) ich möchte
am 26.10.2009 - 09:02 Uhr
Guten Morgen :)
ich möchte letzendlich auf Variablen eines anderen Templates zugreifen.
Wie mache ich mir Variablen eines Templates in einem anderen Template verfügbar?
Mit dem stylen hat dies so nichts zu tun.
Das ist eine allgemeine PHP
am 26.10.2009 - 09:12 Uhr
Das ist eine allgemeine PHP Frage. Es hängt davon ab, was zuerst ausgeführt wird. Du kannst ja mal $GLOBALS benutzen und schauen, ob da was drin steht.
Aber nochmal: Was ist der Sinn des ganzen? Vielleicht musst du das gar nicht machen.
---
Viele Grüße,
Kars-T
Guten Morgen Kars-T :o) also
am 26.10.2009 - 10:02 Uhr
Guten Morgen Kars-T :o)
also was ich im kurzen umsetzen möchte ist folgendes:
Ich habe ein CSS-Design in dem eine Menge an Nodes (Teaser) angezeigt werden (Nodepage).
Wenn jetzt die Maus (hover) über ein Node(Teaser) geht, öffnet sich eine Infobox (Tooltip) nach rechts gerichtet, unterhalb des teasers.
Wenn sich dieser Teaser allerdings "aussen", in dem Fall rechts, befindet, soll diese Infobox (Tooltipp) nicht nach rechts ausrichten sondern nach Links.
Um dies aber zu realisieren muss ich wissen, welches Node ist aussen? Das kann ich mit Hilfe der "Column" (Views-Template) Abfrage realisieren. Allerdings habe ich auf genau diese Varaible keinen Zugriff von meinem node-template.
Genau das ist mein Problem.
Lieben Gruß
Axel
Wie schon gesagt: Dann mach
am 26.10.2009 - 10:47 Uhr
Wie schon gesagt: Dann mach einen div drum rum und arbeite dich durch die childs des Elements durch. Dazu brauchst du nicht in das innerste Template was zu schreiben. Wobei, wenn ich eben drüber nachdenke, du diese Zählerei mit JQuery auch schon realisieren können müsstest. Zähle doch die Kinder mit der Klasse Node innerhalb der View divs. Das sollte dann auch klappen, die Elemente zu finden.
---
Viele Grüße,
Kars-T
Wie meinst Du das mti den
am 26.10.2009 - 11:01 Uhr
Wie meinst Du das mit den
Kann Dir da leider nicht folgen...
Ich muss in diesem Fall doch wissen, welches Node welche position bzw. Column-Nummer hat, damit ich es als "aussen" identitifiezieren kann. Es soll nicht jedes node mit diesem CSS-Design gleich reagieren sonder nur das äussere Node in der View (horizontal). Wie soll ich da genau eingreifen wenn ich das nicht weiss bzw. aus meinem Template abfragen kann?
Sorry, aber bin etwas verwirrt.
Lieben Gruß und danke für die Anteilnahme.