[erledigt] cck_map in eigenes Template
Eingetragen von Mystify (232)
am 07.04.2008 - 13:47 Uhr in
am 07.04.2008 - 13:47 Uhr in
hi,
ich hab mir jetzt eigenes template für meinen nodetyp location erstellt (node-location.tpl.php).
wie integriere ich da nun das cck_map field?
ich hatte es mit:
<div>
<?php foreach ((array)$field_karte as $item) { ?>
<div><?php print $item['view'] ?></div>
<?php } ?>
</div>
versucht, dann werde aber nur zahlen und buchstaben angezeigt:
bsp:
5
1
1
G
wenn ich keine extra templatedatei für den nodetyp mache, wird die karten auf jeden fall angezeigt. also wie muss ich das nun einfügen?
- Anmelden oder Registrieren um Kommentare zu schreiben
bitte ist sehr dringend, wie
am 07.04.2008 - 20:40 Uhr
bitte ist sehr dringend, wie bindet man das cck_map ins template ein?
<div> <?php foreach
am 07.04.2008 - 21:05 Uhr
<div>
<?php foreach ((array)$field_karte as $item) { ?>
<div><?php print $item['value'] ?></div>
<?php } ?>
</div>
Probier mal das
oder versuch mal print_r($field_karte), damit man sich das ganze mal genauer anschauen kann, was das Feld alles für Werte hat
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
Erst mal wuerde ich im
am 08.04.2008 - 02:34 Uhr
Erst mal wuerde ich im Template das Nodeobjekt ausgeben um zu sehen was alles vorhanden ist und wie man es ansprechen kann.
print '<pre>';
print_r($node);
print '</pre>';
Als Naechstes wuerde ich im HTML Code der Seite nachsehen ob die API Dateien gelinkt sind.
Ich kapier auch nicht ganz was Du mit dem foreach bezweckst. Wenn das Feld welches als Inhalt den Map hat ausgegeben werden soll dann geschieht dies ohne irgendein foreach.
Dann sehe auch mal in der DB in die Tabelle des Inhaltstyp mit dem Map. Gibt es dort ein einzelnes Feld welches die Googlemap enthaelt. Ich vermute mal nicht. Eher wird es 2 Felder mit Werten von Latitude und Longitude geben.
Diese beiden Felder, wenn existent, verkoerpern die Map. Um die Map auszugeben muss mit den Feldinhalten Lat und Long erst die Map von Google geholt werden. Das erledigt das Location Modul und dafuer gibt es mit Sicherheit eine Funktion. Vermutlich gibt es im Googlemap- oder Locationmodul sogar eine Theme Funktion zum Ausgeben der Map. Wenn dem so ist vermute ich, das beim Aufrup dieser Funktion Lat und Long uebergeben werden. Die Funktion liefert dann den kompletten Code inclusive der Map zurueck. Diese Theme Funktion koenntest Du im Template ansprechen.
Weiterhin musst Du beachten, das die Map selbst von einem Div gebildet wird das eine Klasse mit einem bestimmten Namen haben muss. Das gilt wenn Du die Map im Template "von Hand" zusammenbaust. Gibt es voran genannte Funktion musst Du Dich mit grosser Warscheinlichkeit (Theme Funktion) nicht um diese Div kuemmern.
Was also bleibt, schau Dir mal den Code des Location Modules an. Besser aber wohl den Code des Googlemap Modules.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
dereine schrieb <div>
am 08.04.2008 - 14:31 Uhr
<div>
<?php foreach ((array)$field_karte as $item) { ?>
<div><?php print $item['value'] ?></div>
<?php } ?>
</div>
Probier mal das
oder versuch mal print_r($field_karte), damit man sich das ganze mal genauer anschauen kann, was das Feld alles für Werte hat
also wenn ich das erst versuche, bleibt es bei den buchstaben und zahlen, wenn ich print_r($field_karte) haben, kommt folgendes
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP ) 1
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP ) 1
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP ) 1
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP ) 1
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP ) 1
wenn ich die templatedatei
am 08.04.2008 - 15:16 Uhr
wenn ich die templatedatei deaktiviere, wir die karte ja angezeigt. es steht dann folgendes im quellcode:
div id="field-karte0mapArea" class="mapArea" style="width: 400px; height: 300px; position: relative; background-color: rgb(229, 227, 223);"><div style="overflow: hidden; position: absolute; left: 0px; top: 0px; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; z-index: 0; cursor: url(http://maps.google.com/intl/de_ALL/mapfiles/openhand.cur), default;"><div style="position: absolute; left: 0px; top: 0px; display: none;"><div style="position: absolute; left: 0px; top: 0px; z-index: 0;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/transparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; width: 256px; height: 256px; -moz-user-select: none;"></div></div><div style="position: absolute; left: 0px; top: 0px;"><div style="position: absolute; left: 0px; top: 0px; z-index: 0;"><img src="http://mt2.google.com/mt?n=404&v=ap.69&hl=de&x=17592&s=&y=10735&zoom=2&s=Galileo" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: -99px; top: -85px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt0.google.com/mt?n=404&v=ap.69&hl=de&x=17592&s=&y=10736&zoom=2&s=" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: -99px; top: 171px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt2.google.com/mt?n=404&v=ap.69&hl=de&x=17592&s=&y=10737&zoom=2&s=G" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: -99px; top: 427px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt3.google.com/mt?n=404&v=ap.69&hl=de&x=17593&s=&y=10735&zoom=2&s=Ga" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 157px; top: -85px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt1.google.com/mt?n=404&v=ap.69&hl=de&x=17593&s=&y=10736&zoom=2&s=Gal" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 157px; top: 171px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt3.google.com/mt?n=404&v=ap.69&hl=de&x=17593&s=&y=10737&zoom=2&s=Gali" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 157px; top: 427px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt0.google.com/mt?n=404&v=ap.69&hl=de&x=17594&s=&y=10735&zoom=2&s=Galil" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 413px; top: -85px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt2.google.com/mt?n=404&v=ap.69&hl=de&x=17594&s=&y=10736&zoom=2&s=Galile" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 413px; top: 171px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt0.google.com/mt?n=404&v=ap.69&hl=de&x=17594&s=&y=10737&zoom=2&s=Galileo" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 413px; top: 427px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt1.google.com/mt?n=404&v=ap.69&hl=de&x=17595&s=&y=10735&zoom=2&s=" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 669px; top: -85px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt3.google.com/mt?n=404&v=ap.69&hl=de&x=17595&s=&y=10736&zoom=2&s=G" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 669px; top: 171px; width: 256px; height: 256px; -moz-user-select: none;"><img src="http://mt1.google.com/mt?n=404&v=ap.69&hl=de&x=17595&s=&y=10737&zoom=2&s=Ga" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 669px; top: 427px; width: 256px; height: 256px; -moz-user-select: none;"></div></div><div style="position: absolute; left: 0px; top: 0px; z-index: 100;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 101;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 102;"><img class="gmnoprint" src="http://maps.google.com/intl/de_ALL/mapfiles/shadow50.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 107px; top: 50px; width: 37px; height: 34px; -moz-user-select: none; z-index: -5259197;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 103;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 104; cursor: default;"><img class="gmnoprint" src="http://maps.google.com/intl/de_ALL/mapfiles/marker.png" style="border: 0px none ; margin: 0px; padding: 0px; width: 20px; height: 34px; -moz-user-select: none; z-index: -5259197; position: absolute; left: 107px; top: 50px;"><img class="gmnoscreen" src="http://maps.google.com/intl/de_ALL/mapfiles/markerff.gif" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 107px; top: 50px; width: 20px; height: 34px; -moz-user-select: none; z-index: -5259197;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 105;"></div><div style="position: absolute; left: 0px; top: 0px; z-index: 106;"><img usemap="#gmimap0" class="gmnoprint" src="http://maps.google.com/intl/de_ALL/mapfiles/markerTransparent.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 107px; top: 50px; width: 20px; height: 34px; -moz-user-select: none; z-index: -5259197;"><map name="gmimap0"><area id="mtgt_unnamed_0" href="javascript:void(0)" alt="" shape="poly" coords="9,0,6,1,4,2,2,4,0,8,0,12,1,14,2,16,5,19,7,23,8,26,9,30,9,34,11,34,11,30,12,26,13,24,14,21,16,18,18,16,20,12,20,8,18,4,16,2,15,1,13,0" log="miw"></map></div><div style="position: absolute; left: 0px; top: 0px; z-index: 107; cursor: default;"></div></div></div><div dir="ltr" style="color: black; font-family: Arial,sans-serif; font-size: 11px; white-space: nowrap; text-align: right; -moz-user-select: none; position: absolute; right: 3px; bottom: 2px;"><span>Kartendaten ©2008 Tele Atlas - </span><a style="color: rgb(119, 119, 204);" target="_blank" href="http://www.google.com/intl/de_ALL/help/terms_maps.html">Nutzungsbedingungen</a></div><span style="-moz-user-select: none; position: absolute; left: 2px; bottom: 2px;" class="gmnoprint"><a target="_blank" href="http://maps.google.com/maps?ll=52.590248,13.284316&spn=0.007821,0.017166&z=15&key=XXXXXXXXXXXXXXXXXX&oi=map_misc&ct=api_logo" title="Klicken, um diese Region in Google Maps anzuzeigen"><img src="http://maps.google.com/intl/de_ALL/mapfiles/poweredby.png" style="border: 0px none ; margin: 0px; padding: 0px; width: 62px; height: 30px; -moz-user-select: none; cursor: pointer;"></a></span><div class="gmnoprint" style="overflow: hidden; width: 59px; height: 256px; -moz-user-select: none; position: absolute; left: 7px; top: 7px;"><div style="overflow: hidden; position: absolute; left: 0px; top: 0px; width: 59px; height: 226px;"><div style="overflow: hidden; width: 59px; height: 354px;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/mapcontrols2.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: 0px; -moz-user-select: none; width: 59px; height: 458px;"></div><div log="pan_up" title="Nach oben verschieben" style="position: absolute; left: 20px; top: 0px; width: 18px; height: 18px; cursor: pointer;"></div><div log="pan_lt" title="Nach links verschieben" style="position: absolute; left: 0px; top: 20px; width: 18px; height: 18px; cursor: pointer;"></div><div log="pan_rt" title="Nach rechts verschieben" style="position: absolute; left: 40px; top: 20px; width: 18px; height: 18px; cursor: pointer;"></div><div log="pan_down" title="Nach unten verschieben" style="position: absolute; left: 20px; top: 40px; width: 18px; height: 18px; cursor: pointer;"></div><div log="center_result" title="Zurück zum letzten Ergebnis" style="position: absolute; left: 20px; top: 20px; width: 18px; height: 18px; cursor: pointer;"></div><div log="zi" title="Vergrößern" style="position: absolute; left: 20px; top: 65px; width: 18px; height: 18px; cursor: pointer;"></div></div><div style="position: absolute; left: 0px; top: 226px; width: 59px; height: 354px; text-align: left;"><div style="overflow: hidden; width: 59px; height: 30px; position: absolute;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/mapcontrols2.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: -354px; width: 59px; height: 458px; -moz-user-select: none;"></div><div log="zo" title="Verkleinern" style="position: absolute; left: 20px; top: 11px; width: 18px; height: 18px; cursor: pointer;"></div></div><div style="position: absolute; left: 19px; top: 86px; width: 22px; height: 150px; cursor: pointer;"><div style="overflow: hidden; width: 22px; height: 14px; position: absolute; left: 0px; top: 16px; cursor: url(http://maps.google.com/intl/de_ALL/mapfiles/openhand.cur), default;"><img src="http://maps.google.com/intl/de_ALL/mapfiles/mapcontrols2.png" style="border: 0px none ; margin: 0px; padding: 0px; position: absolute; left: 0px; top: -384px; width: 59px; height: 458px; -moz-user-select: none;"></div></div></div><div style="-moz-user-select: none; position: absolute; right: 7px; top: 7px; color: black; font-family: Arial,sans-serif; font-size: small; width: 200px; height: 19px;" class="gmnoprint"><div id="amtc_option_0" title="Stadtplan anzeigen" style="border: 1px solid black; position: absolute; background-color: white; text-align: center; width: 5em; cursor: pointer; right: 10.2em;"><div style="border-style: solid; border-color: rgb(52, 86, 132) rgb(108, 157, 223) rgb(108, 157, 223) rgb(52, 86, 132); border-width: 1px; font-size: 12px; font-weight: bold;">Karte</div></div><div id="amtc_option_1" title="Satellitenbilder anzeigen" style="border: 1px solid black; position: absolute; background-color: white; text-align: center; width: 5em; cursor: pointer; right: 5.1em;"><div style="border-style: solid; border-color: white rgb(176, 176, 176) rgb(176, 176, 176) white; border-width: 1px; font-size: 12px;">Satellit</div></div><div id="amtc_option_2" title="Satellitenbilder mit Straßennamen anzeigen" style="border: 1px solid black; position: absolute; background-color: white; text-align: center; width: 5em; cursor: pointer; right: 0em;"><div style="border-style: solid; border-color: white rgb(176, 176, 176) rgb(176, 176, 176) white; border-width: 1px; font-size: 12px;">Hybrid</div></div></div></div>
es müsste eigentlich auch
am 08.04.2008 - 15:22 Uhr
es müsste eigentlich auch in $node->content das ganze vorhanden sein
also print_r($node)
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
ja, aber es bringt mir ja
am 08.04.2008 - 20:15 Uhr
ja, aber es bringt mir ja nicht, wenn alles nochmal angezeigt wird. ich brauch ja nur die karte, das andere hab ich ja anders ausgegeben.
also wenn ich:
<div><?php print_r($field_karte) ?></div>
mache, bekomme ich ja schonmal die koordinaten:
Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP )
aber wie bekomm ich nun die karte hin.
poste bitte
am 08.04.2008 - 20:28 Uhr
poste bitte mal
print_r($node)
sonst schaumal in der .theme datei in dem cck_maps module da ist die funktion drinnen die man braucht
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
also in der .theme steht ja
am 08.04.2008 - 20:42 Uhr
also in der .theme steht ja folgendes:
<?php
// $Id: cck_map.theme,v 1.1 2007/11/13 01:09:04 beeradb Exp $
function theme_cck_map($node, $field, $items, $teaser, $page){
//note: these javascript files should probably remain in tact, edit at your own peril.
drupal_add_js("/maps.google.com/maps?file=api&v=2&key=".variable_get('cck_map_key', ''));
drupal_add_js(drupal_get_path('module', 'cck_map') .'/cck_map.js');
$ouptut = '';
$prefix = str_replace("_", "-", $field['field_name']);
$jsPrefix = str_replace("-", "_", $field['field_name']);
if($field['widget']['label'])
$output .= "<h3>".$field['widget']['label']."</h3>";
//the $prefix."mapArea" div is targetted by the javascript to insert the map element in. You need an element with this id for the map to display properly.
$output .= "<div id='".$prefix."mapArea' class='mapArea' style=\"width: ".$field['widget']['mapx']."px; height: ".$field['widget']['mapy']."px\"></div>";
$items[0]['maplat'] ? $lat = $items[0]['maplat'] : $lat = 0;
$items[0]['maplon'] ? $lon = $items[0]['maplon'] : $lon = 0;
$items[0]['mapzoom'] ? $zoom = $items[0]['mapzoom'] : $zoom = 0;
$items[0]['maptype'] ? $mapType = $items[0]['maptype'] : $mapType = '';
$items[0]['points'] ? $points = $items[0]['points'] : $points = '';
//google maps doesn't like relative urls for marker images. This totally sucks and I hope to fix it. I appologize.
$tld = $_SERVER['SERVER_NAME'];
$output .= "<script type=\"text/javascript\" language=\"javascript\">var {$jsPrefix}map;{$jsPrefix}map = new gmapClientController('{$prefix}',".$lat.", ".$lon.", ".$zoom.", '".$mapType."', '".$points."', '".$tld."');</script>";
return $output;
}
?>
hatte schonmal versucht das in die template datei zu packen, aber ich glaub ich hab den nicht richtig geändert, weil man kann den ja nicht 1 zu 1 übernehmen.
den quellcode willst bei print_r($node), oder?
ich hätte gerne die
am 08.04.2008 - 20:51 Uhr
ich hätte gerne die variable $node ausgegeben so wie es geschrieben habe
aufrufen kann man das per theme('cck_map', $argum1, $argum2)... blos muss man die erstmal richtig einsetzen
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
also wenn ich
am 08.04.2008 - 21:14 Uhr
also wenn ich
<?php
print_r($node)
?>
[field_karte] => Array ( [0] => Array ( [lat] => 52.5919689628056 [lon] => 13.2807111740112 [title] => [description] => [image] => ) [maplat] => 52.5902482746 [maplon] => 13.2843160629 [mapzoom] => 15 [maptype] => G_NORMAL_MAP )
und das
[#printed] => 1 ) [field_karte] => Array ( [#access] => 1 [#value] =>
die karte wird aber auch einmal korrekt angezeigt.
an deaZa
am 09.04.2008 - 00:43 Uhr
Sag mal, welches Map Modul verwendest Du eigentlich?
Dein letzter Post sieht eindeutig nach CCK Map aus. Also nicht das grosse Googlemaps Modul mit Location im Gespann.
PS
Habe gerade Heute mit dem CCK Map Modul templated um mit einem zusaetzlichen Selectfeld die Anzeige der Karte an- und abschalten zu koennen.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
an deaZa, 2
am 09.04.2008 - 00:48 Uhr
ich hab mir jetzt eigenes template für meinen nodetyp location erstellt (node-location.tpl.php).
wie integriere ich da nun das cck_map field?
Sag mal wozu brauchst Du fuer den Nodetyp mit der Map ein Template? Was willst Du mit dem Template machen? Welche Bedeutung hat dieses Template fuer die Map?
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
an deaZa, 3
am 09.04.2008 - 00:51 Uhr
Vergiss die Datei "cck_map.theme". Was da drin steht kann nicht verwendet werden!!!
Der Maintainer des Modules hat vergessen diese Datei aus dem tar.gz zu entfernen.
Die wirkliche Theme-Funktion befindet sich in der Datei "cck_map.inc".
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
quiptime schrieb Sag mal,
am 09.04.2008 - 13:56 Uhr
Sag mal, welches Map Modul verwendest Du eigentlich?
Dein letzter Post sieht eindeutig nach CCK Map aus. Also nicht das grosse Googlemaps Modul mit Location im Gespann.
PS
Habe gerade Heute mit dem CCK Map Modul templated um mit einem zusaetzlichen Selectfeld die Anzeige der Karte an- und abschalten zu koennen.
ja wie ich von anfang an gesagt habe, ich benutze das modul: "cck_map"
Sag mal wozu brauchst Du fuer den Nodetyp mit der Map ein Template? Was willst Du mit dem Template machen? Welche Bedeutung hat dieses Template fuer die Map?
ich hab mir eine art adressbuch gebastelt, mit adresse, namen, etc. und es soll daneben auch die karte angezeigt werden. das template hab ich mir gemacht, da ich das ganze mit ccs formatiert habe, sodass ich den aufbau habe, so wie ich ihn will. zum anderen weil teilweise bestimmte felder ausgeblendet werden, wenn eine bestimmte sache ausgewählt ist.
Vergiss die Datei "cck_map.theme". Was da drin steht kann nicht verwendet werden!!!
Der Maintainer des Modules hat vergessen diese Datei aus dem tar.gz zu entfernen.
Die wirkliche Theme-Funktion befindet sich in der Datei "cck_map.inc".
ja das mit der .theme datei hab ich auch festgestellt. ich schau mal in die .inc, vielleicht hilft mir das ja weiter.
danke auf jeden fall schonmal.
ich weiß auch nicht, warum das so kompliziert ist, die karte manuell in die node-NODETYP.tpl.php zu integrieren.
Du machst es Dir selbst kompliziert
am 09.04.2008 - 14:15 Uhr
ja das mit der .theme datei hab ich auch festgestellt. ich schau mal in die .inc, vielleicht hilft mir das ja weiter.
danke auf jeden fall schonmal.
ich weiß auch nicht, warum das so kompliziert ist, die karte manuell in die node-NODETYP.tpl.php zu integrieren.
Du machst es Dir selbst kompliziert!
Die Sache ist doch ganz einfach.
Dein mit CCK aufgesetzter Nodetyp fuer die Adressen hat an einer bestimmten Stelle der Reihenfolge der einzelnen Adressfelder die Map. Und gut ist. Das Map wird mit allen anderen Adressfeldern angezeigt.
Um nun die Adresse mit der Map auszugeben braucht man KEIN extra Template fuer diesen Nodetyp. Deswegen auch meine Frage wozu ein Template.
Was willst Du noch?
Eine ganz andere Frage ist. was Du machen willst wenn das Feld mit der Map kein Pfichtfeld ist und deswegen die Map nicht angezeigt werden soll.
Bei dieser Sachlage brauchst Du aber immer noch kein Template fuer diesen Nodetyp. Bei dieser Sachlage erstellst Du das Template "cck_map.tpl.php". In diesem Template kannst Du die Anzeige des Map steuern.
PS
Ich arbeite zur Zeit fuer einen Kunden mit verschiedenen Event Nodes. Diese Event Nodes haben ein CCK Map Feld. Bei diesen Event Nodes verfahre ich so wie voran beschrieben.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
hab mal ne skizze gemacht,
am 09.04.2008 - 14:32 Uhr
hab mal ne skizze gemacht, warum ich mir eine tpl datei dafür erstellt hab:
http://img174.imageshack.us/img174/6848/templateym2.jpg
und wenn bsp. keine telefon und fax eingetragen sind, oder keine karte, werden ohne tpl trotzdem die labels angezeigt, mit tpl nicht. da ein selectfeld angelegt hab, bei dem man auswählt, ob man diese sachen angeben hat. in der tpl wir das dann überprüft und dementsprechend angezeigt, oder eben nicht.
1. mach die Reihenfolge vom
am 09.04.2008 - 14:41 Uhr
1. mach die Reihenfolge vom Maps Feld nach unten
2. per css für die 3 objekte jeweils in float:left
dann dürfte das eigentlich so funktionieren
//warum zeigt er nicht mehr an bei print_r($node) ??
--------------
Mein Blog: www.freeblogger.org: May the source be with you
Deutscher IRC-Channel: irc.freenode.net #drupal.de je mehr desto besser
... Jabber-me: dwehner@im.calug.de Warum Jabb
ja es funktioniert ja alles
am 09.04.2008 - 15:04 Uhr
ja es funktioniert ja alles mit der tpl, hab ja alles schon so formatiert, wie ich es haben will, nur die karte fehlt halt noch.
naja es wird ja noch mehr angezeigt, aber das betrifft nicht die karte bzw. das cck-map
Bitte lese meine Posts
am 09.04.2008 - 15:14 Uhr
Ich sagte bereits:
Du machst es Dir selbst kompliziert.
Einen Tipp:
Sehe Dir das Modul "Conditional Fields" an. Damit kannst Du die Anzeige und Sichtbarkeit von Feldern und kompletten Feldgruppen steuern.
und wenn bsp. keine telefon und fax eingetragen sind, oder keine karte, werden ohne tpl trotzdem die labels angezeigt,
Das kapiere ich gar nicht.
Wenn ein CCK Feld keinen Inhalt hat wird es komplett nicht angezeigt. Zu komplett gehoert auch das Label eines Feldes. Deswegen braucht man also kein Nodetype-Template um die Anzeige der Labels nicht ausgefuellter Felder zu verhindern!
Ausnahme hierbei ist das Feld mit der CCK Map! Aber das hatte ich bereits erklaert. Bitte lese meine Posts etwas genauer.
PS
Glaube mir. Du kommst im Nodetemplate an das CCK Map nicht ran. Mache es so wie von mir beschrieben und Du ersparst Dir viel Arbeit und Zeit.
Wenn Du wissen moechtest wie Du auf die Anzeige des CCK Map Einfluss nehmen kannst, wie bereits in einem der vorherigen Posts von mir angedeutet, kann ich Dir helfen.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Vorschlag
am 09.04.2008 - 15:26 Uhr
Habe mir die Skizze noch mal angesehen:
1.
Aendere die Bezeichner der Fieldgroups: Adresse -> Anschrift, Telefon -> Kontakt
2.
Definiere die Art Anzeige der Feldgruppen in den CCK Feldeinstellungen.
Hierbei eventuell mit CSS nachhelfen
3.
Mit "cck_map.tpl.php" entferne das Label ueber dem Map.
4.
Mit CSS ordne die Karte neben die beiden Feldgruppen.
--------------------------------------------------------------------------------------------
Bei dieser Vorgehensweise benoetigst Du kein Nodetype Template.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
hmm das ist echt schade,
am 09.04.2008 - 18:34 Uhr
hmm das ist echt schade, wollte es eigentlich mit der theme datei node-adressbuch.tpl.php regeln, aber wenn ihr meint, dass man da keine möglichkeit hat die cck_map zu integrieren glaub ich euch das mal.
mal schaun, vielleicht finde ich ein anderes modul.
kleiner bockiger Junge
am 09.04.2008 - 19:04 Uhr
Nicht ist unmoeglich mit Drupal.
Wenn Du unbedingt die harte Tour willst dann sehe Dir das cck_map.module genauer an. Doert gibt es eine Funktion die fuer die Ausgabe des Map zustaendig ist. Diese Funktion ruft auch theme_cck_map() auf. Nun sollte man diese Funktion im Template ansprechen koennen.
Allerdings benoetigst Du im Template alle Variablen die diese Funktion haben will damit man sie ansprechen darf. Hier die Funktion von der ich spreche:
function cck_map_field($op, &$node, $field, &$items, $teaser, $page)
Wird Dir klar was ich meine wenn ich von der harten Tour spreche?
Mein Post hier zeigt Dir neben meinem bereits geposteten Loesungsweg lediglich den Ansatz einer weiteren Loesung. Dabei werde ich Dir aber nicht helfen.
Du kommst mir gerade vor wie ein kleiner bockiger Junge: "Aber ich wollte doch . . . "
Sorry,
aber Du hast einen einfachen und praktikablen Loesungsweg von mir aufgezeigt bekommen.
Was ist das Problem bei Dir diesen Weg zu gehen?
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
danke und du kommst mir
am 10.04.2008 - 13:07 Uhr
danke und du kommst mir ziemlich unfreundlich und überheblich vor.
aber ich will jetzt keinen streit anfangen, ich bin dir ja dankbar, dass du dir die mühe gemacht hast und mir bei der lösung des problems versucht zu helfen hast.
jedenfalls ich hab es jetzt doch geschafft, dass alles so funktioniert, wie ich es will, mit dem template.
also trotzdem vielen, vielen dank dafür, dass ihr eure zeit geopfert und versucht habt mir zu helfen. thx
Ich poste ja freiwillig
am 10.04.2008 - 17:05 Uhr
Meine Absicht war es, keinesfalls unfreundlich oder überheblich zu sein. Tut mir leid wenn das bei Dir so angekommen ist. Vermutlich haben meine deutlichen Formulierungen ohne diplomatisches Gesäusel diesen Eindruck vermittelt.
Bei mir musst Du Dich nicht groß bedanken. Ich poste ja freiwillig hier im Forum.
Abschließend wäre es schön von Dir zu erfahren welche Lösung Du wie realisieren konntest.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.