{"id":1947,"date":"2010-05-03T10:53:52","date_gmt":"2010-05-03T08:53:52","guid":{"rendered":"http:\/\/www.frische-zitronen.de\/?p=1947"},"modified":"2010-05-03T10:53:52","modified_gmt":"2010-05-03T08:53:52","slug":"typolight-einbau-eines-contentsliders","status":"publish","type":"post","link":"https:\/\/www.jukemedia.de\/blog\/2010\/05\/typolight-einbau-eines-contentsliders\/","title":{"rendered":"TYPOlight Contao: Einbau eines Contentsliders"},"content":{"rendered":"<p>Nachdem ich mittlerweile alle Typolight Contao Core-Inhaltselemente \/ Module durch habe, bin ich derzeit verst\u00e4rkt auf Entdeckungstour im Typolight Contao Extension Repository unterwegs.  Spannende Geschichte, denn seit ich begonnen habe mit dem System zu arbeiten, sind etliche Erweiterungen hinzugekommen und man kommt gar nicht so schnell hinterher wie neue Features hochgeladen werden.<\/p>\n<p>W\u00e4hrend noch vor 3-4 Jahren die Verwendung von Javascript auf Webseiten einer Tods\u00fcnde gleich kam, findet man heute kaum noch Seiten wo nicht das eine oder andere eingesetzt ist, sei  es ein h\u00fcbscher Content-Slider, eine tabbed Navigation oder auch nur eine Lightbox. M\u00f6glich gemacht haben das mehrere Javascript-Bibliotheken, von denen haupts\u00e4chlich zwei inzwischen sehr popul\u00e4r geworden sind: <a title=\"javascript framework mootools\" href=\"http:\/\/mootools.net\/\" target=\"_blank\">Mootools<\/a> und <a title=\"javascript framework jQuery\" href=\"http:\/\/jquery.com\/\" target=\"_self\">JQuery<\/a>.<\/p>\n<p>Beide k\u00f6nnen &#8211; mal auf die eine und mal auf die andere Art  &#8211; mit \u00e4hnlichen Anwendungen aufwarten, da ich jedoch mit JQuery immer ein bisschen besser zurechtgekommen bin als mit Mootools, hatte ich bisher damit ein bisschen mehr Erfahrung und auch schon einige <a href=\"http:\/\/www.jukemedia.de\/jquery-beispiele.html\">Testcases<\/a> damit gebaut. Es ist nun kein Problem JQuery in Typolight Contao einzubinden, von Haus aus setzt das System jedoch auf Mootools und da inzwischen auch viele Erweiterungen auf Mootools basierend verf\u00fcgbar sind, habe ich begonnen mit auch mit diesem Javascript-Framework anzufreunden.<\/p>\n<h3>Mein liebstes Spielzeug: der Contentslider.<\/h3>\n<p>Alle, die Powerpoint lieben, werden auch den Content-Slider lieben, denn letztendlich macht er nichts anderes. Inhalte werden in kleinen P\u00e4ckchen auf einen &#8222;Slide&#8220; gelegt und per Klick oder auch automatisch von oben, rechts, links oder auch von unten in ein Fenster &#8222;geslidet&#8220;. Und das ist noch nicht alles, denn es stehen auch f\u00fcr die &#8222;Folien\u00fcberg\u00e4nge&#8220; Effekte zur Verf\u00fcgung (Transitions) die man aber tunlichst sparsam einsetzen sollte.<\/p>\n<p><strong>In Typolight Contao steht ein solcher Contentslider im Extension-Repository zur Verf\u00fcgung.<\/strong><br \/>\n<a href=\"http:\/\/www.typolight.org\/erweiterungsliste\/view\/Contentslider.10010009.de.html\">Erweiterung Contentslider im Erweiterungskatalog besuchen<\/a><br \/>\nMein Dank f\u00fcr dieses sch\u00f6ne Feature geht an:<br \/>\nden Urheber: <a href=\"httpss:\/\/www.xing.com\/profile\/Stefan_Gandlau2\">Stefan Gandlau<\/a> und den Autor: <a title=\"Stefan Preiss\" href=\"http:\/\/www.preiss-at-work.de\" target=\"_blank\">Stefan Preiss<\/a><\/p>\n<p>Interessante Diskussionen im Forum dazu:<br \/>\n<a href=\"http:\/\/www.typolight-community.de\/showthread.php?849-ContentSlider-Problem\" target=\"_blank\">http:\/\/www.typolight-community.de\/showthread.php?849-ContentSlider-Problem<\/a><br \/>\n<a href=\"http:\/\/www.typolight-community.de\/showthread.php?982-ContentSlider-von-stefan-at-work&amp;highlight=contentslider\" target=\"_blank\">http:\/\/www.typolight-community.de\/&#8230; \/work&amp;highlight=contentslider<\/a><\/p>\n<h3>Anwendungsbeispiel<\/h3>\n<p><strong>Screenshot:<\/strong><br \/>\n<a href=\"http:\/\/www.jukemedia.de\/blog\/wp-content\/uploads\/2010\/05\/typolight-contentslider.png\"><img loading=\"lazy\" decoding=\"async\" size-full wp-image-1960\" title=\"typolight-contentslider\" src=\"http:\/\/www.jukemedia.de\/blog\/wp-content\/uploads\/2010\/05\/typolight-contentslider.png\" alt=\"typolight-contentslider\" width=\"558\" height=\"317\" \/><\/a><\/p>\n<p><a title=\"Contentslider showcase\" href=\"http:\/\/www.jukemedia.de\/contentslider.html\" target=\"_blank\"> &raquo; Anwendungsgbeispiel in Aktion auf jukemedia.de ansehen<\/a><\/p>\n<h3>Einbauhinweise<\/h3>\n<p>Unter Seitenleiste links =&gt; Erweiterungskatalog in das Extension Repository gehen und die Erweiterung zun\u00e4chst einmal installieren.<br \/>\nDanach stehen als Inhaltselement eines Artikels zwei neue Typen zur Verf\u00fcgung:<\/p>\n<ul>\n<li>Content Slider Begin<\/li>\n<li>Content Slider End<\/li>\n<\/ul>\n<p>Dort wo die Slides anfangen sollen, wird zun\u00e4chst das Inhaltselement &#8222;Content Slider Begin&#8220; gesetzt. Folgende Einstellungen wurden in dieser Installation verwendet:<\/p>\n<p>Breite: 540<br \/>\nH\u00f6he: 300<br \/>\nTransition: linear<br \/>\nTransitionEase: easeInOut<br \/>\n\u00dcbergangsdauer: 1500<\/p>\n<p>Nun die Inhaltselemente wie gewohnt z.B. als Textelement mit Bild anlegen und im Feld f\u00fcr die CSS-Kalsse das Wort &#8222;slideElem&#8220; einf\u00fcgen. Jedes Inhaltselement ergibt einen (1) Slide. Zum Abschluss das Inhaltselement &#8222;Content Slider End&#8220; setzen.<\/p>\n<p>Nun ist wichtig zu wissen, dass man noch ein paar CSS-Anweisungen ben\u00f6tigt, damit das Ganze funktioniert. In meinem Anwendungsbeispiel sieht das z.B. so aus:<\/p>\n<pre lang=\"css\">#slideWrapper,#innerslideWrapper,#innerSlideWrapper div.slideElem {\nwidth:540px;\nheight:300px;\n}\n\n#slideWrapper {overflow:hidden;\nbackground:#f4f4f4 url(\"dateien\/contentslider\/bg-contentslider.jpg\") left top no-repeat;\n}\n#slideWrapper h3 {\nmargin-bottom:20px;\npadding-left:65px;\nborder:none;\n}\n\n#innerSlideWrapper{\nbackground-color:#f4f4f4;\n}\n\n#innerSlideWrapper div.slideElem{\nfloat:left;\n}\n\n#innerSlideWrapper div.slideElem p,#innerSlideWrapper div.slideElem h3,#innerSlideWrapper div.slideElem img{\nmargin-right:65px;\nmargin-left:65px;\n}\n\n#innerSlideWrapper div.slideElem p {\nfont-size:11px;\nline-height:140%;\ntext-align: justify;\n}\n\n#innerSlideWrapper div.slideElem img {\nmargin-right:0;\n}\n\n#goForward {\nposition:relative;\nmargin-top:-250px;\nmargin-right:7px;\nmargin-bottom:0;\ncursor:pointer;\n}\n\n#goBack {\nmargin:-250px 0 0 -2px;\ncursor:pointer;}\n\n#goBack img,#goForward img {\nborder:none;\n}\n<\/pre>\n<h3>Wichtig zu wissen:<\/h3>\n<p>Das CSS kann nicht 1:1 \u00fcbernommen werden, da es sich auf mein Beispiel bezieht. Angegeben werden m\u00fcssen jedoch Breite und H\u00f6he von<br \/>\n#slideWrapper,<br \/>\n#innerSlideWrapper,<br \/>\n#innerSlideWrapper div.slideElem und die Eigenschaft float:left;  f\u00fcr div.slideElem<\/p>\n<p>Die Angaben zur Breite und H\u00f6he von #slideWrapper,#innerslideWrapper,#innerSlideWrapper m\u00fcssen exakt die gleichen Zahlen sein, wie man sie auch im Inhaltselement Content Slider Begin eingetragen hat.<br \/>\nNicht vergessen darf auch bei den Inhaltselementen des Artikel bei CSS die Klasse <strong>slideElem<\/strong> einzutragen.<\/p>\n<p>Und slideElem muss nach links <strong>floaten<\/strong>, sonst funktioniert es beim linearen Weiterschieben nicht.<br \/>\nWenn man, so wie im Beispiel zu sehen, die Tasten zum Weiterschalten links und rechts anlegen m\u00f6chte, muss man den Elementen p, img (also alles was im Slide liegt) einen entsprechenden Abstand zuweisen. Alles andere funktioniert nicht, weil der Slide (so kenne ich es jedenfalls von jQuery) in Wirklichkeit dreimal so lang ist wie ein Slide. (Anzahl der Slides x Breite)<\/p>\n<p>Inzwischen habe ich Typolight Contao auf jukemedia einige Zeit im Gebrauch und die Installation hat via Live-update-ID schon ein paar updates hinter sich. Beim Versionssprung auf 2.8. hat sich jedoch einiges getan und nachdem ich gestern auf 2.8.3. upgedatet hatte, wollte es zun\u00e4chst mit dem Content-Slider im IE7 und IE8 nicht funktionieren.<\/p>\n<p>Der Grund: ich habe auf jukemedia f\u00fcr die fe_page ein angepasstes Template verwendet und wie man wissen sollte:<strong> individuell angelegte Templates werden bei einem upddate nicht \u00fcberschrieben<\/strong>. Da jedoch gerade in Bezug auf die mootools mit dem update neue Dateien installiert wurden, griff meine Version immer noch auf die alten Dateien zu &#8211; die Verlinkung im head war ja unver\u00e4ndert. Und in den alten mootools Dateien war noch ein Bug. Durch das h\u00e4ndische Austauschen des headers und damit der richtigen Verkn\u00fcpfung zu den neueren mootools Dateien, konnte der Fehler jedoch schnell behoben werden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nachdem ich mittlerweile alle Typolight Contao Core-Inhaltselemente \/ Module durch habe, bin ich derzeit verst\u00e4rkt auf Entdeckungstour im Typolight Contao Extension Repository unterwegs.  Spannende Geschichte, denn seit ich begonnen habe mit dem System zu arbeiten, sind etliche Erweiterungen hinzugekommen und man kommt gar nicht so schnell hinterher wie neue Features hochgeladen werden.<br \/>\nW\u00e4hrend noch vor  &#8230; <a title=\"TYPOlight Contao: Einbau eines Contentsliders\" class=\"read-more\" href=\"https:\/\/www.jukemedia.de\/blog\/2010\/05\/typolight-einbau-eines-contentsliders\/\" aria-label=\"Mehr Informationen \u00fcber TYPOlight Contao: Einbau eines Contentsliders\">Weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[93,50,51,360,428],"yst_prominent_words":[],"class_list":["post-1947","post","type-post","status-publish","format-standard","hentry","category-contao","tag-contao","tag-erweiterungen","tag-javascript","tag-typolight","tag-mootools"],"_links":{"self":[{"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/posts\/1947","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/comments?post=1947"}],"version-history":[{"count":0,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/posts\/1947\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/media?parent=1947"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/categories?post=1947"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/tags?post=1947"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/www.jukemedia.de\/blog\/wp-json\/wp\/v2\/yst_prominent_words?post=1947"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}