TemplaVoila

Linktarget in FCE

Nach Tutorial würde man einen Link in einem flexiblen Inhaltselement (FCE) durch Mappen auf das Attribut "href" erzeugen.

TYPO3 fügt dann folgenden Code in die Datenstruktur, die den Link zurückgibt (welcher dann als href gemappt ist)

10 = TEXT
10.field=field_linktextl
10.typolink.parameter.current = 1
10.typolink.returnLast = url

Logischer Weise kann somit das Linkziel (target) nicht vom Redakteur angepasst werden, auch wenn die Eingabe im Backend dies vermuten lässt.

Möchte man ein Linkziel verwenden, so muß man den gesamten Link von TYPO3 generieren lassen, dazu gibt es zwei Möglichkeiten:

A) Das Linkfeld anpassen

Die erste Möglichkeit ist, dass Linkfeld anzupassen. Dazu muß das Feld den kompletten Link zurückgeben, muß also den Linktext selbst auch enthalten.

  1. TypoScript in der Datenstruktur anpassen
  2. Datenstruktur ändern (Mappingtype Attribut löschen / hsc flag abschalten)
  3. TemplaVoila Vorlage (TO) neu mappen: auf das Linktag im Modus outer

Die geänderte Datenstruktur (Auszug) sieht dann in etwa so aus:

...
  <type>attr</type>
  <type>no_map</type>
  <tags>a:attr:href</tags>
  <TypoScript><![CDATA[
    10 = TEXT
    10.field=field_linktext
    10.typolink.parameter.current = 1
    ]]></TypoScript>
   <proc type="array">
     <HSC type="integer">0</HSC>
   </proc>
.....

In dem Beispiel wird der Linktext aus einem weiterem Eingabefeld in der Datenstruktur ermittelt.

B) zu verlinkendes Feld anpassen

Die zweite Möglichkeit besteht darin, das Feld, welches verlinkt wird anzupassen. Und zwar sollte dieses mit Link zurückgegegeben werden.

Schritte:

  1. DS ändern (<type>no_map</type> in das Linkfeld)
  2. TypoScript anpassen. (typolink Eigenschaft im zu verlinkenden Feld)
  3. Mapping neu speichern. (zu verlinkendes Feld auf Linktag im Modus outer)

typoscript - typolink Beispiel:

    10.typolink.parameter.field=field_home_link
    10.typolink.ATagParams=class="homelink"

blog comments powered by Disqus
blogroll