[TYPO3-german] Problem mit wrap Funktion

Stefan Padberg post at bergische-webschmiede.de
Thu May 21 17:37:36 CEST 2015


Hallo Christian,

der wrap funktioniert nur mit EINEM senkrechten Strich, zwei Striche 
verkraftet der nicht.

Das gehört zum Basiswissen im Umgang mit Typoscript.
http://docs.typo3.org/typo3cms/TyposcriptReference/DataTypes/Wrap/Index.html

Das, was du realisieren willst, muss man etwas anders angehen. Aber 
vorher möchte ich nochmal den Sinn dieser Maßnahme hinterfragen: Mir 
erschließt er sich nicht. Ich würde das weglassen.


Ich hab dir hier mal ein Snippet gebaut, ohne Gewähr, habs nicht 
getestet, aber so in etwa könnte das klappen:

     tt_content.stdWrap {
       prepend >
       prepend = COA

       # 1. Schritt: ein Reigster mit dem umgewandelten Titel befüllen
       prepend.10 = LOAD_REGISTER
       prepend.10 {
         1.speakinganchor.cObject = TEXT
         1.speakinganchor.cObject {
           field = header
           case = lower
           replacement {
             10 {
               search = / /
               useRegExp = 1
               replace = -
             }
             20 {
               search = /[^a-zA-Z0-9-]/
               useRegExp = 1
               replace =
             }
           }
         }
       }

       # 2. Schritt: den Anchor-Tag mit dem Registerinhalt ausgeben
       prepend.20 = TEXT
       # das Folgende steht in einer Zeile
       prepend.20.stdWrap.dataWrap = <a id="{REGISTER:speakinganchor}" 
href="{REGISTER:speakinganchor}"></a>

       # 3. Schritt: das Register zurücksetzen
       prepend.30 = RESTORE_REGISTER
     }



Noch eine Kleinigkeit: Ich habe das "c-" in der Anchor-Id weggelassen, 
es ist für einen speaking anchor nicht sinnvoll. Aber du magst es gerne 
einfügen, wenn es dir so besser gefällt.


Beste Grüße
Stefan


Am 21.05.2015 um 16:52 schrieb Christian Mansch:
> Hallo zusammen,
>
> ich bin ein Neuling in Typo3 und wollte jetzt auf einer Seite sprechende
> Ankerlinke einsetzten.
> Dazu bin ich auf folgende Seite gestoßen:
> https://www.fiedomedia.de/news/artikel/typo3-sprechende-anker-links-content-elemente/
>
> Das funktioniert so weit. Aber ich möchte das ganze noch ein wenig
> erweitern
>
> Den zweiten Teil mit der Ersetzung und dem erzeigen eines sauberen Links
> kann ich noch so halbwegs nachvollziehen.
> Aber beim ersten Teil mit der Wrap hab ich Verständniss-Probleme.
>
> tt_content.stdWrap {
>   # alte prepend-Funktion von CSS Styled Content loeschen
>   prepend >
>   prepend = COA
>   prepend.stdWrap {
>     # Vor Content-Block einen Anker einfuegen
>     wrap = < a id="c- | "></a>
>     # Anker aber nur setzen, wenn der Content-Block mit Anker
> umschlossen werden soll    if.isTrue.field = sectionIndex
>   }
>
> Es geht mir hier um die Zeile wrap= <a id="c- | "></a>
> Nach dem "c-" erscheint dann der Ankerlink der automatisch aus der
> Überschrift generiert wird.
> Jetzt möchte ich aber noch das "href"-Attibut einbinden, dessen link
> ebenfalls der modifizierte Ankerlink ist.
> Also habe ich folgendes versucht :
>
> <a id="c- | " href=" | ">link</a>
>
> Anschließend war die Seite komplett zerschossen. Was mir völlig abwägig
> erscheint.
> Wie greife ich denn auf den dynamisch erzeugten Ankerlink zu?
> Wieso zerschießet mir die kleine Änderung die Seite.
> Wie mache ich es richtig?
>
> Ich hab bisher noch keine gescheite Doku gefunden. Die offizielle Doku
> ist nur für fortgeschrittene (meine Meinung).
> Und was in anderen Foren diskutiert wird übersteigt meinen Kenntnis-Level.
>
> Kann mir jemand bei dem Problem helfen??
> Oder mir den Code etwas erklären? das wäre echt klasse.



More information about the TYPO3-german mailing list