Schnellnavigation:

Kategorien

« Oktober 2017»
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

Kopieren Sie diesen Link in Ihren RSS-Reader

RSS 0.91Nachrichten
RSS 2.0Nachrichten

In eigener Sache

Peter Linzenkirchner, Lisardo EDV Beratung in Augsburg. Freelance und Partner für Design- und Webagenturen in Augsburg und München. Pixelgenaue Templates, valides HTML, barrierearm. TYPO3-Projekte, Extension-Programmierung und mehr ... 

Zur Zeit wird gefiltert nach: Typoscript
Filter zurücksetzen

Update: 

Der Artikel ist mittlerweile etwas älter geworden. Für die TYPO3-Versionen des Viererzweigs stimmt er noch, aber nicht mehr für TYPO3 6.x. Hier ist es deutlich einfacher geworden, da irgendwann seit Version 4.6 oder 4.7 der Core prinzipiell Lightboxen vorsieht. Ich habe einen kleinen Artikel verfasst, der beschreibt  wie man eine Lightbox anlegen kann, ganz ohne Extension, und diese auch im RTE freischaltet: Lightbox im RTE (rtehtmlarea) ohne Extension

----

Prinzipiell ist es möglich, mit Hife der Extension rtelightbox eine Lightbox im RTE umzusetzen – in der Regel reicht es einfach, eine gängige Lightbox zu installieren und danach im Template folgende statische Typoscript-Templates einzubinden: 

  • das Template der jeweiligen Lightbox
  • Clickenlarge Rendering (rtehtmlarea)
  • RTE Lightbox (rtelightbox)

und zwar muss das Template von RTE Lightbox an letzter Stelle stehen. 

Leider hat die Extension aber einen kleinen Fehler: sie bindet das unbearbeitete Originalbild in die Lightbox ein, heisst, man erhält unter Umständen ein viel zu großes Bild in der Lightbox. 


[mehr]

Im RTE kann man horizontale Linien einfach mittels Blockstilen zur Verfügung stellen, die einem Absatz zugewiesen werden können. Diese Stile müssen allerdings vom Entwickler zur Verfügung gestellt werden. 

Dieser Absatz hat z. B. eine Linie oberhalb, die auf diese Art eingefügt wurde. 

Der RTE kann allerdings auch das HTML-Element <hr /> einsetzen, das unabhängig ist von den Blockelementen bzw. Absätzen.

Standardmäßig macht der RTE dabei leider einen Fehler: er packt die Linie in einen Absatz: <p><hr /></p>, was beim Validieren der Seite zu einem Fehler führt. Dieser Fehler stört allerdings die optische Darstellung nicht, wer also mit einem Validierungsfehler leben kann, muss nichts weiter unternehmen. 

Der Fehler kann eleminiert werden, wenn in das TypoScript-Template der Seite diese Zeilen eingefügt werden:

  1. lib.parseFunc_RTE.externalBlocks := addToList (hr)
  2. lib.parseFunc_RTE.externalBlocks.hr.stripNL = 1

Leider hat das aber andere negative Konsequenzen. Wenn ich z. B. hier so eine Linie einfüge:


werden die folgenden Absätze nicht mehr richtig geparst. So werden z. B. in meinen Code-Snippets der <pre>-Tag nicht mehr korrekt von  tx-vjrtecodesnippets erkannt und geparst: 

lib.parseFunc_RTE.externalBlocks := addToList (hr)
lib.parseFunc_RTE.externalBlocks.hr.stripNL = 1


Ausserdem werden offensichtlich Links nicht mehr geparst. Das ganze ist ein Problem, das offenbar seit 2007 im Bugtracker steht, aber bis heute nicht wirklich gelöst wurde (hier sollte eigentlich ein Link stehen, der aber nicht geparst wird. Er folgt im nächsten Absatz, den ich in ein neues Inhaltselement packe.) 

Fazit:

Ich empfehle die Verwendung von Blockstilen wie ganz oben beschrieben. Wenn man unbedingt <hr /> verwenden muss, so sollte der Workaround gründlich getestet werden. Wenn – wie bei mir hier – die Fehler nicht gefixt werden können, dann muss man wohl oder übel mit dem Syntaxfehler des RTE leben. Wie gesagt: die Darstellung ist ja korrekt, es gefällt nur den Validatoren nicht.

Und hier ist der Link in den Bugtracker nochmals ...

[Update]
Für den Bug gibt es seit kurzem einen Fix im Bugtracker von Stanislas Rolland, der das Problem behebt. (Vielen Dank an Stanislas!)

Also Patch einspielen, oder aufs nächste Update von TYPO3 warten, dann wirds wohl dabei sein. 

[Update 2]

In Version 4.4.6 funktioniert es jetzt. 

Kategorien: Tipps/Typoscript  Kommentare 0
Tags: rte

Man kann den Like-Button von Facebook problemlos mit Typoscript auf jeder Seite einbinden. Zu beachten ist natürlich, dass immer die aktuelle Seite als Link übergeben werden muss. 

  1. lib.likebutton = COA
  2. lib.likebutton {
  3.   10 = TEXT
  4.   # aktuelle Seite
  5.   10.typolink.parameter.data = TSFE:id
  6.   # nur die URL
  7.   10.typolink.returnLast = url
  8.   # die BaseURL (muss definiert sein)
  9.   10.dataWrap = {TSFE:baseUrl}|
  10.   # URL.kodiert.
  11.     10.rawUrlEncode = 1
  12.   # und der eigentliche Inhalt
  13.   wrap = <iframe style="border:none; overflow:hidden; width:450px; height:80px;" frameborder="0" scrolling="no" src="http://www.facebook.com/plugins/like.php?href=|&layout=standard&show_faces=true&width=450&action=like&font=arial&colorscheme=light&height=80"></iframe>
  14. }

Weiterführende Links: 

Es ist möglich, beliebige Eingabefelder im Backend mit Werten vorzubelegen, um so den Redakteuren die Arbeit zu erleichtern. Seit Version 4.3 geht das nicht nur über das User-TSconfig sondern auch im page-TSconfig. Wobei letzteres nur manchmal Sinn macht. 

  1. TCAdefaults {
  2.      tt_news {
  3.          title = Ein vorgegebener Titel
  4.          author = AUTORENNAME
  5.          author_email = name@domain.de
  6.      }
  7.      pages {
  8.          hidden = 1
  9.          author = AUTORENNAME
  10.          author_email = name@domain.de
  11.      }
  12. }

Leider sind diese Optionen nicht stdWrap-fähig, so dass keine dynamischen Einträge erfolgen können (z. B. automatisch die User-Email aus dem Setup zu übernehmen). Armin Bartsch erläutert in seiner Webseite eine Möglichkeit, wie das mit Hilfe einer eingebundenen Methode doch möglich ist (habe ich allerdings nicht getestet). 

Ausserdem gibt es eine Extension, die automatisch für tt_news, pages und sys_notes Autor und E-Mail setzt: cron_setdefaultauthor

Weiterführende Links

Hier geht es um einen Typolink, der um ein Bild un einen Text liegen soll und der zudem auf einen Anker der aktuellen Seite verweisen soll:

  1. 20=COA
  2. 20 {
  3.     10=IMAGE
  4.     10.file=fileadmin/img/mai_seitenanfang.gif
  5.     20=TEXT
  6.     20.value=Seitenanfang
  7. }
  8. 20.stdWrap.typolink.parameter.dataWrap={field:uid}#page
  9.  

 

Kategorien: Typoscript  Kommentare 0
Tags: typolink
Besuchen Sie mich auf Google+