Kategorien
- [-]Developer (93)
- API (14)
- Backend (16)
- Extensions (26)
- HTML & CSS (4)
- Typoscript (31)
- [-]Redaktionelles (15)
- Anleitungen (6)
- Tipps (6)
- Sonstiges (31)
Schlagwortwolke
| « | Februar 2012 | » | ||||
|---|---|---|---|---|---|---|
| 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 | |||
Letzte Nachrichten
- dokuwiki updaten ...
- 12.02.2012 10:01
- Dynamische Stylesheets mit less: less.app am Mac
- 11.02.2012 20:35
- Umlautprobleme beim Dumpen einer Datenbank
- 10.02.2012 22:20
- Datenschutzkonforme like-Buttons mit socialshareprivacy als...
- 22.09.2011 14:01
Letzte Kommentare
- @Peter: War überzeugt, das zweimal getestet zu haben, bevor...
- 15.02.2012 08:03
- Hallo zusammen Falls Ihr das noch nicht gesehen habt, ich...
- 01.02.2012 02:35
- @Gunter: Wie kommst du drauf, das Fluid "beim Hersteller"...
- 30.01.2012 12:29
- Ich glaube, ich habe eine mögliche Datenschutzlücke in der...
- 30.01.2012 10:43
In eigener Sache
Peter Linzenkirchner, Lisardo Multimedia 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: Developer
Filter zurücksetzen
Dynamische Stylesheets mit less: less.app am Mac
Mit less kann die Entwicklung von umfangreichen CSS-Strukturen vereinfacht werden: Es ermöglicht den Variablen, Operationen und Funktionen innerhalb einer CSS-Datei. So können zum Beispiel zu Beginn der CSS-Datei Farben, Maße und andere einheitliche Elemente definiert und anschließend als Variablen (oder eigentlich eher als Konstanten) verwendet werden. Mit Hilfe von »nested rules« kann man (wie im Typoscript) auf die lästigen Selektoren verzichten und statt dessen die CSS-Regeln einfach ineinander verschachteln. Und vieles mehr – bitte einfach auf der Originalseite nachlesen, es gibt da eine gute Dokumentation aller Techniken.
Obwohl mich less fasziniert, seit ich es zum ersten Mal gesehen habe (was für eine Zeitersparnis beim Entwickeln!) setze ich es bisher nicht ein, da die less-Dateien natürlich irgendwie aufbereitet werden müssen, bevor der Browser sie interpretieren kann. Das funktioniert entweder direkt im Bowser über JavaScript oder serverseitig über ein Ruby-Skript.
Genauer erklärt ist das Ganze hier: less: The dynamic stylesheet language.
Nun ist Ruby nicht auf allen Servern installiert und der Einsatz im Browser über JavaScript schmeckt mir auch nicht. Also war das für mich bisher ein interessanter Ansatz, aber mehr auch nicht. Bis mir das hier untergekommen ist: less.app for Mac OS X. Die App funktioniert so: ich versehe meine CSS-Datei mit der Endung .less und arbeite darin mit den less-Befehlen, wie üblich in Textmate. Vorher übergebe ich den ganzen Prohekt-Ordner an die less-App, teile der App mit, in welchen Ordner die CSS-Dateien kompiliert werden sollen, und jedes Mal wenn ich jetzt die less-Datei speichere, wird die CSS-Datei kompiliert, auf Wunsch auf minifiziert. Da die Datei geparst wird, werden dabei auch gleich noch alle kleinen Syntaxfehler gefunden ... Schöner gehts nicht; das wird in Zukunft verwendet!
Auf der Seite gibts ein kurzes Video, das den Einsatz erklärt.
Weiterführende Links
Ich habe gestern das Heise-Skript »socialshareprivacy« (siehe mehr dazu in meinem Artikel bzw. auf der Originalseite von Heise) in eine TYPO3-Extension eingebaut und ins TER hochgeladen (Downloadlink). Sie heißt einfach socialshareprivacy. Sie ist so aufgebaut, dass
- bei Neuerungen im Heise-Skript das Skript einfach in der Extension ausgetauscht werden kann
- notfalls auch über Typoscript eine externe Variante eingebunden werden kann
- das verwendete jQuery entweder automatisch durch die Extension eingebunden wird (default) oder ein bereits vorhandenes verwendet wird (Konfiguration im Extension Manager).
- praktisch alle Konfigurationsmöglichkeiten des Originalskripts über Typoscript möglich sind.
Zu beachten ist, dass das Skript von Heise nur eine Instanz pro Seite erlaubt, die Extension kann also nur einmal pro Seite eingebunden werden.
Installation:
Die Installation ist simpel: einfach im Extension Manager runterladen, installieren und danach zwei Einstellungen tätigen: die Facebook APP-ID eintragen und anklicken, ob jQuery aus der Extension geladen werden soll oder nicht.
Facebook APP-Id:
Eine Anleitung wie man an diese ID kommt ist hier zu finden: Hinweis zur Facebook App-ID
Einbinden in eine einzelne Seite:
Das Plugin wird in die Seite eingebunden wie alle anderen Plugins: einfach als Inhaltselement. Es gibt nichts zu konfigurieren, einbinden reicht.
Einbinden ins Template:
Das geht am besten über Typoscript:
Im klassischen Template-Stil:
MARKER < plugin.tx_socialshareprivacy_pi1
oder über TemplaVoila:
lib.myplaceholder < plugin.tx_socialshareprivacy_pi1
Typoscript-Konfiguration:
In der Extension-Dokumentation ist keine genaue Beschreibung aller Optionen, aber man kann sich einfach die ext_typoscript_setup.txt vornehmen, dort sind alle Optionen mit Beispielinhalten drin. Eine genaue Beschreibung der einzelnen Optionen ist auch auf der Heise-Seite zu finden. Man kann sie sogar von dort entnehmen und nach folgenden Regeln in sein Setup schreiben:
1. Allgemeine Optionen:
plugin.tx_socialshareprivacy_pi1.info_link =
etc.
2. Facebook-Optionen:
plugin.tx_socialshareprivacy_pi1.services.facebook.status = on
etc.
3. Twitter und Google+:
plugin.tx_socialshareprivacy_pi1.services.twitter.___
plugin.tx_socialshareprivacy_pi1.services.gplus.___
etc.
Textausgaben
Ich habe die Textausgaben für die Popups nicht ins Typoscript verlegt sondern in eigene Language-Dateien, um eine einfache Mehrsprachigkeit zu ermöglichen (auch wenn das in dem Fall schlicht Quatsch ist ... sehr deutsch, diese Angelegenheit). So können die Texte aber auch einfach über Typoscript geändert werden:
plugin.tx_socialshareprivacy_pi1._LOCAL_LANG.de.txt_help =
etc.
Fehler und Verbesserungsvorschläge:
Bitte nicht einfach behalten sondern an mich senden, entweder per E-Mail oder über das Kontatkformular.

