iframe cck feld problem
am 14.10.2010 - 14:36 Uhr in
Eine Frage, wer weiß hier weiter:
Folgender Link...
Wenn man auf dieser Seite auf Themengruppen klickt, so sieht man ganz unten den Link:
Bitte beachten Sie unseren Terminkalender....
Hier folgt ein parametrisierter Link auf das Kalendermodul, alles funktioniert soweit.
Wünschenswert wäre aber eine Lösung, wo das parametrisierte Kalenderteil gleich auf dieser Seite erscheint.
Ich habe dazu ein CCK Feld "iframe" installiert (ist momentan wieder deaktiviert.)
Das funktioniert ganz gut, aber irgendwie hab ich einen Knoten das Iframefenster so zu positionieren, das man nur
den Kalenderausschnitt sieht, weil das iframe CCK-Feld keine Positionierung ausser die standartmäßigen x=0 y=0 vorsieht.
Irgenwie hab ichs auch nicht über den css-Style iframe { left: right:} geschafft.
Habe ich eine falsche Herangehensweise an das Problem oder fällt jemanden etwas besseres ein?
Vielen Dank,
Stefan
- Anmelden oder Registrieren um Kommentare zu schreiben
Wieso per iframe?
am 14.10.2010 - 17:55 Uhr
Warum machst du das per iframe? Der Kalender läuft doch über dasselbe System, oder? Du solltest die Möglichkeit haben, ihn direkt bei der Themengruppe abzubilden, da wird es passende Funktionen für geben.
Wie genau?
am 15.10.2010 - 07:51 Uhr
Hallo Nicolai,
dein Taxonomy-Tipp hat mir echt weitergeholfen, das war genau dass, was ich gebraucht habe.
Vielen Dank!
Bezüglich der Funktion: Kann mir das jemand näher erläutern, denn es gibt wohl kein Calender CCK-Feld.
Geht das vielleicht über php?
per php
am 15.10.2010 - 11:40 Uhr
Ja, ich meinte damit, die Stelle im Template mit dem notwendigen php-Code zu erweiteren. Ich arbeite nicht mit Calendar, kann also nichts weiter dazu sagen, aber evtl. findest du Snippets direkt beim Modul (http://drupal.org/node/262062) oder allgemein bei Themes (http://drupal.org/node/45471)
Ich habe ..
am 15.10.2010 - 20:57 Uhr
relativ wenig Erfahrung in php in Bezug auf Drupal.
Vorerst habe ic ich beim Calendar-Modul etwas gefunden:
Embedding Views
Embed a date browser or calendar view anywhere using the format:
date_embed_view($view_name, $display_name, $settings, $args)
Settings are used to override some values of the view.
The primary setting that is useful here is a setting for 'block_identifier'. The view's block_identifier is used to control individual instances of regular and embedded views that contain date navigation so that they move separately or together. All views that use the same identifier will move together. All views that use different identifiers will move independently. The identifier will show up in the url as a querystring, like node/275?mini=calendar/2008-10. Page views use no block identifier, the normal identifier of the block view is 'mini'.
Examples:
<?php
print date_embed_view('calendar', 'calendar_1');
?>
This will embed the default page view of the calendar, using the regular calendar defaults.
<?php
print date_embed_view('calendar', 'calendar_1', array('block_identifer' => 'embedded'), array('2008-W45'));
?>
This will embed the page view of the calendar that will use 'embedded' as an identifier, set to show the week view for week 45 of 2008.
<?php
print date_embed_view('calendar', 'calendar_block_1', array('block_identifier' => 'mini'), array('2008-07'));
?>
This will embed the block view of the calendar that will use 'mini' as an identifier, set to show the month view for July 2008.
Ich öffne also meinen Node in der "Bearbeiten-Ansicht und wechsle auf php-Modus und füge ein:
<?php
print date_embed_view('calendar', 'calendar');
?>
Leider passiert überhaupt nichts. Was mache ich falsch?
Und hast du auch schon
am 16.10.2010 - 10:49 Uhr
Und hast du auch schon versucht
<?php
print date_embed_view('calendar', 'calendar_1');
?>
hierbei ist calendar_1 der Name der Ansicht deiner View, die muss genauso heissen...
[EDIT]
Hab mir grad den Anfang nochmal durchgelesen... Wieso nimmst du nicht einfach den Calendar Block View und lässt den z.B. in der Inhalts-Region auf der Seite anzeigen?
calendar_1
am 16.10.2010 - 13:12 Uhr
Das ist der View und ich habe schon alles probiert: <? print date_embed_view('calendar', x) ?>
x= calendar, Calendar, Kalender, ..
Oberhalb ist natürlich noch der andere Inhalt als html dargestellt, das ist ja kein Problem oder?
diese print date_embed aus meiner Sicht eine gute Möglichkeit, weil ich muss den Kalender vorab paramentriesieren, und das scheint möglich zu sein.
Wenn ich einfach nur den Block einblende, kann ich den ja nicht parametrisieren,aussedem möchte ich eine schön detaillierte Monatsansicht mit den Terminen.
In der View hast du ja
am 18.10.2010 - 15:51 Uhr
In der View hast du ja verschiedene Ansichten.
Wenn du mit der Maus über die Links gehst siehst du unten eingeblendet den Namen der Ansicht z.B. calendar_1 oder ähnlich.
Das musst du dann dem date_embed übergeben.
php filter
am 19.10.2010 - 09:50 Uhr
Ich hatt den php-filter Evaluator nicht aktiviert ...
Vielen Dank!! [gelöst]