Questions & Answers

SOLVED
aVogt
Returning Creator

Imagemap - Verweis auf Medium

Jump to solution

Hallo,

ich habe eine Imagemap in der es mรถglich sein soll einen Links auf ein Medium (PDF-Datei oder ein Bild) zu setzen.

Die Ausgabe der Area fรผr das Medium wird bei $CMS_VALUE(st_imagemap.areasAsHtml)$ nicht ausgegeben.

Iteriere ich รผber $CMS_FOR(bereich, st_imagemap.areas)$

komme ich an den alle Werte fรผr das Medium heran und ich kรถnnte alle Area erstellen.

Bit es besondere Voraussetzungen fรผr die Verweisvorlage, damit sie per $CMS_VALUE(st_imagemap.areasAsHtml)$ ausgegeben werden kann?

FS:2024.4

GrรผรŸe
Andreas

 

 

0 Kudos
1 Solution

Accepted Solutions
hoebbel
Crownpeak employee

Hallo Andreas,

warum benutzt Du denn nicht die empfohlene Ausgabe mittels CMS_FOR? Hier ein Beispielcode (die Namen der Eingabekomponenten im Link mรผssen natรผrlich entsprechend angepasst werden.

<map name="$CMS_VALUE(#global.section.name)$"$CMS_VALUE(editorId(editorName:"st_imagemap"))$>
$CMS_FOR(for_area,st_imagemap.areas)$
 <area shape="$CMS_VALUE(for_area.shape)$" coords="$CMS_VALUE(for_area.coordinates)$" href="$CMS_REF(for_area.link.lt_ref)$" alt="$CMS_VALUE(for_area.link.lt_text.convert)$" title="$CMS_VALUE(for_area.link.lt_text.convert)$"/>
$CMS_END_FOR$
</map><img src="$CMS_REF(st_imagemap.image)$")$" alt="imagemap" title="imagemap" usemap="#$CMS_VALUE(#global.section.name)$" border="0">

Das ist nicht viel lรคnger und man hat die Kontrolle darรผber, was wie ausgegeben wird.

Falls es einen Grund dafรผr gibt, den nicht empfohlenen Weg รผber $CMS_VALUE(st_imagemap.areasAsHtml)$ zu nutzen, dann stell bitte ein Ticket beim Tech Support ein, damit analysiert werden kann, wo genau das Problem liegt. Laut Doku mรผsste es ausreichend sein, wenn im Linktemplate die entsprechenden Eingabekomponenten (Text und Link) auf der Karteikarte Eigenschaften des Links korrekt zugeordnet werden. (Wobei ich mir unsicher bin, wie man einen internen Link diesbezรผglich korrekt zuweisen soll ๐Ÿค”)

Viele GrรผรŸe
Holger

View solution in original post

0 Kudos
4 Replies
hoebbel
Crownpeak employee

Hallo Andreas,

warum benutzt Du denn nicht die empfohlene Ausgabe mittels CMS_FOR? Hier ein Beispielcode (die Namen der Eingabekomponenten im Link mรผssen natรผrlich entsprechend angepasst werden.

<map name="$CMS_VALUE(#global.section.name)$"$CMS_VALUE(editorId(editorName:"st_imagemap"))$>
$CMS_FOR(for_area,st_imagemap.areas)$
 <area shape="$CMS_VALUE(for_area.shape)$" coords="$CMS_VALUE(for_area.coordinates)$" href="$CMS_REF(for_area.link.lt_ref)$" alt="$CMS_VALUE(for_area.link.lt_text.convert)$" title="$CMS_VALUE(for_area.link.lt_text.convert)$"/>
$CMS_END_FOR$
</map><img src="$CMS_REF(st_imagemap.image)$")$" alt="imagemap" title="imagemap" usemap="#$CMS_VALUE(#global.section.name)$" border="0">

Das ist nicht viel lรคnger und man hat die Kontrolle darรผber, was wie ausgegeben wird.

Falls es einen Grund dafรผr gibt, den nicht empfohlenen Weg รผber $CMS_VALUE(st_imagemap.areasAsHtml)$ zu nutzen, dann stell bitte ein Ticket beim Tech Support ein, damit analysiert werden kann, wo genau das Problem liegt. Laut Doku mรผsste es ausreichend sein, wenn im Linktemplate die entsprechenden Eingabekomponenten (Text und Link) auf der Karteikarte Eigenschaften des Links korrekt zugeordnet werden. (Wobei ich mir unsicher bin, wie man einen internen Link diesbezรผglich korrekt zuweisen soll ๐Ÿค”)

Viele GrรผรŸe
Holger

0 Kudos
aVogt
Returning Creator

Hallo Holger,

der einzige Grund ist, dass die EIngabekomponente FS_REFERENCE in den Verweisvorlagen nicht einheitlich benannt ist. mal "mediaref", "sitestoreref", "ref", .... Die unterschiedlichen Bezeichnungen stammen noch aus frรผhen Anfangszeiten, bzw. als FS_REFERENCE eine Eingabekomponente ersetzt hatte.

Da werde ich bei der Ausgabe halt auf die vorhandenen Eingabekomponenten testen mรผssen und dann die vorhandene ausgeben. 

Danke und GrรผรŸe
Andreas

0 Kudos
hoebbel
Crownpeak employee

Hallo Andreas,

Du kannst auch einfach die UID der Verweisvorlage prรผfen (for_area.link.template.uid) und dann รผber ein CMS_SWITCH die korrekte Eingabekomponente ausgeben:
$CMS_SWITCH(for_area.link.template.uid)$
$CMS_CASE("...")$$CMS_SET(set_linkref,for_area.link.mediaref)$$CMS_SET(set_linktext,for_area.link.text)$
...
$CMS_END_SWITCH$

oder die Ausgabe in der Verweisvorlage selber durchfรผhren (wie in der Doku beschrieben). Da die Verweisvorlagen ja wahrscheinlich auch noch woanders genutzt werden, wรผrde das รผber einen Schalter funktionieren, der bei der Ausgabe der Imagemap gesetzt wird:
<map...>$CMS_SET(set_imagemapOutput,true)$...$CMS_SET(set_imagemapOutput,false)$</map>
Und in den Verweisvorlagen einfach eine Weiche einbauen
$CMS_IF(isSet(set_imagemapOutput) && set_imagemapOutput)$<Imagemap output>$CMS_ELSE$<normal output>$CMS_END_IF$

Viele GrรผรŸe
Holger

0 Kudos
aVogt
Returning Creator

Da gibt es einige Mรถglichkeiten ... ich lasse mir da etwas einfallen. 

0 Kudos

Type a product name