Ergebnis 1 bis 27 von 27

Thema: Catalog Slider

  1. #1
    Contao-Fan
    Registriert seit
    29.07.2011.
    Beiträge
    411

    Standard Catalog Slider

    Hallo!

    Erweiterung catalogslider gibt keine Bilder aus. Ich habe template kopiert mod_catalog_slider.tpl und html5 aber unter Temples gibt es kein Auswahl und in FE wird auch nichts angezeigt

    fehlt da noch etwas?
    Angehängte Grafiken Angehängte Grafiken

  2. #2
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo max-muster,
    ich kenne das Template nicht.
    Eventuell musst du das aber auch noch auf deine Bedürfnisse anpassen?

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  3. #3
    Contao-Fan
    Registriert seit
    29.07.2011.
    Beiträge
    411

    Standard

    ok, aber warum ist template in BE überhaupt nicht zu sehen? ich kann kein template auswählen um zu sehen wie das überhaupt in FE aussieht

  4. #4
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich hab keine Ahnung warum da nichts ist.
    Was für ein Modul benutzt du denn da überhaupt?

    Der Catalog selber bringt ja schon ein haufen eigene Templates mit... wenn die nicht da sind, dann müsstest du die noch mal übertragen (und eventuell andere Dateien auch).

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  5. #5
    Contao-Fan
    Registriert seit
    29.07.2011.
    Beiträge
    411

    Standard

    ich habe eigentlich alles nach Anleitung gemacht, letzter Punkt "Das Modul zum Katalogeintrags-Artikel hinzufügen" geht aber nicht:
    • Katalog installieren und konfigurieren
    • Ein Mehrfachauswahl-Dateifeld zum Katalog hinzufügen, welches die Bilder für jeden Katalogeintrag aufnehmen wird
    • Optional: Ein Dateifeld zum Katalog hinzufügen, welches das erste zu zeigende Bild für jeden Katalogeintrag enthalten wird
    • Bilder zu den Katalogeinträgen hinzufügen
    • Im Theme: Ein neues Modul hinzufügen. Als Typ 'Katalog-Image-Slider' auswählen
    • Das Modul konfigurieren:
    • Zuerst den richtigen Katalog auswählen
    • Als sichtbare Felder zumindest das Dateifeld mit den Bildern auswählen, optional auch das Feld mit dem ersten Bild
    • (mit eigenen Templates können auch weitere Katalogfelder zum Modul hinzugefügt werden)
    • Höhe und Breit der Slideshow (die Bildgröße) einstellen
    • Die richtigen Felder in den Dropdowns 'Bilder' und ggfs. 'Erstes Bild' auswählen
    • Slider-Einstellungen wie gewünscht konfigurieren
    • 'catalog_slider' als Kataloglayout wählen (es kann auch ein angepasstes Template verwendet werden, das sollte aber von 'catalog_slider' kopiert werden, da dieses einen Grossteil der Logik enthält)
    • Das Modul zum Katalogeintrags-Artikel hinzufügen

  6. #6
    Contao-Fan
    Registriert seit
    29.07.2011.
    Beiträge
    411

    Standard

    modul: ModuleCatalogSlider.php
    templates siehe unten, da war nur catalog_slider.tpl, andere sind von mir
    Angehängte Grafiken Angehängte Grafiken

  7. #7
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Halll max-muster,
    ich hab die Erweiterung wie gesagt noch nicht benutzt und kenne die bisher auch gar nicht... hier mal für alle ein Link zu der Erweiterung im ER -> http://www.contao.org/de/extension-l...slider.de.html

    1. Hmm die Erweiterung ist für Contao 2.10.4 freigegeben. D.h. da könntest du schon ordentliche Probleme mit deinem 2.11 haben.
    2. wenn du die SVN Version vom Catalog nutzt: da hat sich sehr viel getan, kann sein das die Erweiterungen nicht komplatibel sind.
    3. Die Erweiterung ist ja eh erst Beta.. kann auch sein das es ein Bug in der Erweiterung ist.

    Schreib doch einfach mal den Entwickler und schick ihm einem Link zu dem Thread hier. Ich weiß jetzt nicht ob der regelmäßig hier ist.. im Catalog Bereich tummeln sich ja nicht so viele supporter rum.

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  8. #8
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Hi,
    falls du das ganze ohne extra Erweiterung machen willst, ich hab mal catalog templates (für die Katalog-Liste) erstellt für die slideshow2 und den coinslider.

    Hier gibts auch ne Demo und die Anleitung: http://debug.tim-gatzky.de/kataloge-...in-slider.html

    Die Templates häng ich an:


    Da musst du eigentlich nur noch die Feldnamen ersetzen und oben die jeweiligen Plugin-Pfade setzen. (der coinslider ist ein jquery plugin)


    Grüße,
    Tim
    ps. das sind noch .tpls. Ich denke aber, dass die auch noch unter dem aktuellen catalog laufen.
    Angehängte Dateien Angehängte Dateien
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  9. #9
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Ich schon wieder

    Hi Tim,

    ein Problem folgt dem nächsten )

    Erst mal danke für die Anleitung mit dem Catalog-ImageSlider, so ein Teil ist ja unverzichtbar !!!

    Leider bekomme ich nach Deiner Anleitung folgende Fehlermeldung-Tapete:

    Code:
    <br><strong>Warning</strong>: mb_strpos() [<a href='function.mb-strpos'>function.mb-strpos</a>]: Empty delimiter in <strong>/Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php</strong> on line <strong>104</strong>
    <pre style="margin:11px 0 0">
    #0 [internal function]: __error(2, 'mb_strpos() [<a...', '/Applications/M...', 104, Array)
    #1 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(104): mb_strpos('', '')
    #2 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleCatalogReader->compile()
    #3 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalog.php(164): Module->generate()
    #4 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(74): ModuleCatalog->generate()
    #5 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ContentModule.php(72): ModuleCatalogReader->generate()
    #6 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(511): ContentModule->generate()
    #7 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(194): Controller->getContentElement('60')
    #8 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleArticle->compile()
    #9 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(71): Module->generate()
    #10 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(443): ModuleArticle->generate(false)
    #11 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(307): Controller->getArticle('13', false, false, 'main')
    #12 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/PageRegular.php(100): Controller->getFrontendModule('0', 'main')
    #13 /Applications/MAMP/htdocs/fiDesign/index.php(266): PageRegular->generate(Object(DB_Mysql_Result))
    #14 /Applications/MAMP/htdocs/fiDesign/index.php(401): Index->run()
    #15 {main}
    </pre><br><strong>Warning</strong>: mb_strpos() [<a href='function.mb-strpos'>function.mb-strpos</a>]: Empty delimiter in <strong>/Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php</strong> on line <strong>111</strong>
    <pre style="margin:11px 0 0">
    #0 [internal function]: __error(2, 'mb_strpos() [<a...', '/Applications/M...', 111, Array)
    #1 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(111): mb_strpos('', '')
    #2 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleCatalogReader->compile()
    #3 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalog.php(164): Module->generate()
    #4 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(74): ModuleCatalog->generate()
    #5 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ContentModule.php(72): ModuleCatalogReader->generate()
    #6 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(511): ContentModule->generate()
    #7 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(194): Controller->getContentElement('60')
    #8 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleArticle->compile()
    #9 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(71): Module->generate()
    #10 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(443): ModuleArticle->generate(false)
    #11 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(307): Controller->getArticle('13', false, false, 'main')
    #12 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/PageRegular.php(100): Controller->getFrontendModule('0', 'main')
    #13 /Applications/MAMP/htdocs/fiDesign/index.php(266): PageRegular->generate(Object(DB_Mysql_Result))
    #14 /Applications/MAMP/htdocs/fiDesign/index.php(401): Index->run()
    #15 {main}
    </pre><br><strong>Warning</strong>: mb_strpos() [<a href='function.mb-strpos'>function.mb-strpos</a>]: Empty delimiter in <strong>/Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php</strong> on line <strong>122</strong>
    <pre style="margin:11px 0 0">
    #0 [internal function]: __error(2, 'mb_strpos() [<a...', '/Applications/M...', 122, Array)
    #1 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(122): mb_strpos('', '')
    #2 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleCatalogReader->compile()
    #3 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalog.php(164): Module->generate()
    #4 /Applications/MAMP/htdocs/fiDesign/system/modules/catalog/ModuleCatalogReader.php(74): ModuleCatalog->generate()
    #5 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ContentModule.php(72): ModuleCatalogReader->generate()
    #6 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(511): ContentModule->generate()
    #7 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(194): Controller->getContentElement('60')
    #8 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/Module.php(140): ModuleArticle->compile()
    #9 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/ModuleArticle.php(71): Module->generate()
    #10 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(443): ModuleArticle->generate(false)
    #11 /Applications/MAMP/htdocs/fiDesign/system/libraries/Controller.php(307): Controller->getArticle('13', false, false, 'main')
    #12 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/PageRegular.php(100): Controller->getFrontendModule('0', 'main')
    #13 /Applications/MAMP/htdocs/fiDesign/index.php(266): PageRegular->generate(Object(DB_Mysql_Result))
    #14 /Applications/MAMP/htdocs/fiDesign/index.php(401): Index->run()
    #15 {main}
    </pre><br><strong>Warning</strong>: Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/fiDesign/system/functions.php:161) in <strong>/Applications/MAMP/htdocs/fiDesign/system/libraries/Template.php</strong> on line <strong>285</strong>
    <pre style="margin:11px 0 0">
    #0 [internal function]: __error(2, 'Cannot modify h...', '/Applications/M...', 285, Array)
    #1 /Applications/MAMP/htdocs/fiDesign/system/libraries/Template.php(285): header('Vary: User-Agen...', false)
    #2 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/FrontendTemplate.php(233): Template->output()
    #3 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/PageRegular.php(171): FrontendTemplate->output()
    #4 /Applications/MAMP/htdocs/fiDesign/index.php(266): PageRegular->generate(Object(DB_Mysql_Result))
    #5 /Applications/MAMP/htdocs/fiDesign/index.php(401): Index->run()
    #6 {main}
    </pre><br><strong>Warning</strong>: Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/fiDesign/system/functions.php:161) in <strong>/Applications/MAMP/htdocs/fiDesign/system/libraries/Template.php</strong> on line <strong>286</strong>
    <pre style="margin:11px 0 0">
    #0 [internal function]: __error(2, 'Cannot modify h...', '/Applications/M...', 286, Array)
    #1 /Applications/MAMP/htdocs/fiDesign/system/libraries/Template.php(286): header('Content-Type: t...')
    #2 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/FrontendTemplate.php(233): Template->output()
    #3 /Applications/MAMP/htdocs/fiDesign/system/modules/frontend/PageRegular.php(171): FrontendTemplate->output()
    #4 /Applications/MAMP/htdocs/fiDesign/index.php(266): PageRegular->generate(Object(DB_Mysql_Result))
    #5 /Applications/MAMP/htdocs/fiDesign/index.php(401): Index->run()
    #6 {main}
    </pre>
    Ist das ein CHMOD-Problem?
    Vielleicht sollte ich noch erwähnen, dass ich 2.11.5 einsetze und ich Dein Template von .tpl in .html5 umbenannt habe.
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  10. #10
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Ein Tipp?

    ...hat mir jemand in der Sache einen Tipp?

    Hier noch die Screenshots der Einstellungen für das Template:
    Angehängte Grafiken Angehängte Grafiken
    Geändert von mike_mcfly (09.08.2012 um 22:06 Uhr)
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  11. #11
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Einfache PHP Abfrage bringt mich ins straucheln!

    So ich versuche mich gerade daran, den Catalog-Slider mit dem flexslider jQuery plugin umzusetzen.

    Allerdings habe ich immer alle Bilder 6fach im Quellcode:

    HTML-Code:
    <ul class="slides">
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    </ul>
    Es sind augenblicklich nur 3 Bilder in diesem Katalog-Eintrag, statt 18. Damit müsste der generierte Quellcode eigentlich so aussehen:

    HTML-Code:
    <ul class="slides">
    
    <li><span class="image first even"><img src="system/images/Projektbild_01-9761ea69.jpg" alt="Projektbild 01" width="900" height="300" /></span></li>
    <li><span class="image odd"><img src="system/images/Projektbild_02-9befb23b.jpg" alt="Projektbild 02" width="900" height="300" /></span></li>
    <li><span class="image last even"><img src="system/images/Projektbild_03-15ce33d5.jpg" alt="Projektbild 03" width="900" height="300" /></span></li>
    				
    </ul>

    Die Stelle im Template sieht so aus (nicht lachen, PHP ist für mich ein Buch mit sieben Siegeln):

    PHP-Code:
        <ul class="slides">
            <?php foreach ($entry['data'] as $field=>$data): ?>
            <li><?php echo $entry['data']['bilder']['value']; ?></li>
            <?php endforeach; ?>        
        </ul>
    Ansonsten funktioniert der Slider... liegt also nur an dieser Schleife.

    P.S. ich hänge diesem Post noch das Template (Achtung: die Endung txt entfernen) dran... für alle Fälle.
    Angehängte Dateien Angehängte Dateien
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  12. #12
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    damit müsste $entry['data'] ein array mit 6 einträgen sein...
    läßt sich mit
    PHP-Code:
    <pre><?php print_r($this->entries); ?></pre>
    am Anfang vom template anzeigen...
    Geändert von magicsepp (10.08.2012 um 07:14 Uhr)

  13. #13
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Array auslesen

    Ja, ich kenne das. Hilft mir nur nicht weiter, da ich nicht weis, wie ich es RICHTIG auslesen kann. Bin ja Grafik- und Medien-Designer und zu der Zeit, als ich auf der Uni war, gab's da kein PHP-Grundkurs

    Sieht so aus:

    [bilder] => Array
    (
    [label] => Bilder
    [type] => file
    [raw] => a:3:{i:0;s:52:"tl_files/Projekte/Verpackung/Test/Projektbild_01.jpg";i:1;s:52:"tl_files/Projekte/Verpackung/Test/Projektbild_02.jpg";i:2;s:52:"tl_files/Projekte/Verpackung/Test/Projektbild_03.jpg";}
    [value] =>
    [files] => Array
    (
    [0] => tl_files/Projekte/Verpackung/Test/Projektbild_01.jpg
    [1] => tl_files/Projekte/Verpackung/Test/Projektbild_02.jpg
    [2] => tl_files/Projekte/Verpackung/Test/Projektbild_03.jpg
    )
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  14. #14
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    teste bitte mal ...
    PHP-Code:
    <?php foreach ($entry['data'][bilder][files] ): ?>
            <li><?php echo $entry['data']['bilder']['value']; ?></li>
    <?php endforeach; ?>

  15. #15
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard

    Zitat Zitat von magicsepp Beitrag anzeigen
    teste bitte mal ...
    PHP-Code:
    <?php foreach ($entry['data'][bilder][files] ): ?>
            <li><?php echo $entry['data']['bilder']['value']; ?></li>
    <?php endforeach; ?>
    Ne, klappt nicht. Ich hab's noch abgeändert in, klappt aber auch nicht:

    PHP-Code:
    <?php foreach ($entry['data'][bilder][files] ): ?>
    <li><?php echo $entry['data']['bilder']['value']; ?></li>
    <?php endforeach; ?>
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  16. #16
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Schleife um Array auszulesen

    Die Abfrage des Arrays im Template:
    HTML-Code:
    <?php foreach ($this->entries as $entry): ?>
    		<li><img src="<?php echo $entry['data']['bilder']['meta']['0']['src']; ?>"></li>
    		<li><img src="<?php echo $entry['data']['bilder']['meta']['1']['src']; ?>"></li>
    		<li><img src="<?php echo $entry['data']['bilder']['meta']['2']['src']; ?>"></li>
    <?php endforeach; ?>
    So klappt's natürlich, allerdings nicht dynamisch, da ich von Hand die drei Array reingeschrieben habe. Vermutlich bräuchte ich einen Schleifen-Zähler, der die Anzahl der Arrays in [meta] ermittelt, also 0-2, und diese dann in eine Variable schreibt. Diese Variable kann ich dann im Teplate einsetzen. Leider kenn ich die Syntax nicht aber noch warscheinlicher ist, dass ich mich damit völlig auf dem Holzweg befinde



    So sieht das meta-Array aus:

    Code:
    [meta] => Array
                                    (
                                        [0] => Array
                                            (
                                                [src] => system/images/Projektbild_01-9761ea69.jpg
                                                [alt] => Projektbild 01
                                                [lb] => lbcatalogreader0
                                                [w] => 900
                                                [h] => 300
                                                [wh] => width="900" height="300"
                                                [caption] => 
                                                [metafile] => 
                                            )
    
                                        [1] => Array
                                            (
                                                [src] => system/images/Projektbild_02-9befb23b.jpg
                                                [alt] => Projektbild 02
                                                [lb] => lbcatalogreader0
                                                [w] => 900
                                                [h] => 300
                                                [wh] => width="900" height="300"
                                                [caption] => 
                                                [metafile] => 
                                            )
    
                                        [2] => Array
                                            (
                                                [src] => system/images/Projektbild_03-15ce33d5.jpg
                                                [alt] => Projektbild 03
                                                [lb] => lbcatalogreader0
                                                [w] => 900
                                                [h] => 300
                                                [wh] => width="900" height="300"
                                                [caption] => 
                                                [metafile] => 
                                            )
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  17. #17
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    ...Anführungsstrichlein vergessen
    so dann in etwa...
    PHP-Code:
     <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): ?>
    $i = '0';
            <li><?php echo $this->entries['data']['bilder']['meta'][$i]['src']; ?>"></li>
    $i++;
    <?php endforeach; ?>

  18. #18
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard

    Zitat Zitat von magicsepp Beitrag anzeigen
    ...Anführungsstrichlein vergessen
    so dann in etwa...
    PHP-Code:
     <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): ?>
    $i = '0';
            <li><?php echo $this->entries['data']['bilder']['meta'][$i]['src']; ?>"></li>
    $i++;
    <?php endforeach; ?>

    Noch nicht ganz:
    Parse error: syntax error, unexpected ')' in /Applications/MAMP/htdocs/fiDesign/templates/fi_templates/catalog_flexslider_fi.html5 on line 16

    Zeile 16 ist:
    HTML-Code:
    <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): ?>
    Mit echo kann man scheinbar das mehrdimensionale Array ausgeben aber in einer foreach-Schleife kann das mit entries['data']['bilder']['files']['meta'] nicht übergeben werden, oder?
    Geändert von mike_mcfly (10.08.2012 um 13:42 Uhr)
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  19. #19
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    so ist das wenn man das aus dem Kopf macht $i... gehören natürlich auch noch ins php tag

    PHP-Code:
     <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): $i '0'?>
            <li><?php echo $this->entries['data']['bilder']['meta'][$i]['src']; ?>"></li>
    <?php $i++; endforeach; ?>

  20. #20
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard

    Zitat Zitat von magicsepp Beitrag anzeigen
    so ist das wenn man das aus dem Kopf macht $i... gehören natürlich auch noch ins php tag

    PHP-Code:
     <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): $i '0'?>
            <li><?php echo $this->entries['data']['bilder']['meta'][$i]['src']; ?>"></li>
    <?php $i++; endforeach; ?>
    Ergebnis ist das selbe:
    Parse error: syntax error, unexpected ')' in /Applications/MAMP/htdocs/fiDesign/templates/fi_templates/catalog_flexslider_fi.html5 on line 16


    Der Fehler scheint in Zeile 16 zu liegen:
    PHP-Code:
    <?php foreach ($this->entries['data']['bilder']['files']['meta'] ): $i '0'?>
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  21. #21
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard PHP Array Syntax-Error

    Mit echo kann man scheinbar das mehrdimensionale Array ausgeben aber in einer foreach-Schleife kann das mit entries['data']['bilder']['files']['meta'] nicht ausgelesen werden, oder?

    Edit:
    Hab' die Fehlermeldung falsch gelesen, das ist ein Syntax-Error


    Ich verschiebe den Threat mal in einen anderen Foren-Bereich, da es ja hier eigentlich um einen Catalog-Slider geht. Wenn ich die Antwort für diese Array-Abfrage habe, poste ich die Lösung dann hier.
    Geändert von mike_mcfly (10.08.2012 um 14:13 Uhr)
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  22. #22
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    könnte sein das da doch daa "as $bilder" noch dazu muss... in theorie bin ich nicht wirklich gut....

  23. #23
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Anleitung: Catalog-Slider

    Ahoi zusammen,

    ich hab' jetzt ganze zwei Tage damit zugebracht: ein Catalog-Slider mit jQuery (Flexslider) umzusetzen.

    Hier meine Lösung dazu:

    1) Template anlegen:
    1a) am besten ein bestehendes Catalog-Leser-Template duplizieren und
    1b) folgende Zeilen einfügen (@Flex: danke für Deine Hilfe mit der Syntax):

    PHP-Code:
    <div class="flexslider">
    <ul class="slides">  
            <?php  
            
    foreach($this->entries as $entry) :    
                foreach(
    $entry['data']['bilder']['meta'] as $picture) {  
                    echo 
    "<li><img src=\"{$picture['src']}\" width=\"900\" height=\"300\"/></li>\n";  
                }   
            endforeach; 
    ?>      
    </ul>
    </div>
    1c) das Feld ['bilder'] durch das Feld ersetzen, in dem man im Katalog die Bilder für den Slider hat. Die Werte zu width und height entsprechend euerer Bildmaße ändern.

    2) Im Backend ein Modul Katalog-Leser anlegen und das in Schritt 1) erstellte Template auswählen. Nicht vergessen bei sichtbare Felder das Feld für das Feld in 1c) anzuklicken.

    3) Das flexslider.js in den body eintragen. Kann man hier downloaden.

    4) Jetzt noch das Modul in einen Artikel packen und fertig!
    Geändert von mike_mcfly (12.08.2012 um 05:33 Uhr)
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  24. #24
    Contao-Nutzer Avatar von florilein
    Registriert seit
    12.01.2012.
    Ort
    Spanien
    Beiträge
    64

    Standard

    Tim G funktioniert das ganze auch mit mehrern Bildern? Ich hab das ganze nun in den catalog_reader gepakct funktioniert auch soweit nur leider mit nur einem Bild sobald ich mehrfachauswahl auswähle funktioniert es nicht mehr und meine Programmierkenntnisse sind sehr Bescheiden

  25. #25
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Catalog Slider

    Hi 11florilein,

    ein Slider macht natürlich nur mit mehreren Bildern Sinn. Du musst schon etwas detaillierter beschreiben was für ein Fehler bei Dir kommt.
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  26. #26
    Contao-Nutzer Avatar von florilein
    Registriert seit
    12.01.2012.
    Ort
    Spanien
    Beiträge
    64

    Standard

    Hi Mc Fly.


    ich habe das Script von TimG in das catalog_reader.tpl eingefügt. dies sieht nun so aus
    PHP-Code:
     <?php if (count($this->entries)): ?>

    <div class="layout_full">

    <?php foreach ($this->entries as $entry): ?>
    <div class="item<?php echo $entry['class'] ? ' '.$entry['class'] : ''?>">
    <?php if($entry['linkEdit']): ?><?php echo $entry['linkEdit']; ?><?php endif; ?>
    <?php 
    foreach ($entry['data'] as $field=>$data): ?>
    <?php 
    if (strlen($data['raw']) && !in_array($field, array('catalog_name','parentJumpTo'))): ?>
    <div class="field <?php echo $field?>">
        <div class="label"><?php echo $data['label']; ?></div>
        <div class="value"><?php echo $data['value']; ?></div>
    </div>
    <?php endif; ?>
    <?php 
    endforeach; ?>
    </div>
    <?php endforeach; ?>
    </div>

    <?php else: ?>
    <p class="info">Invalid item reference for catalog.</p>
    <?php endif; ?>
    <?php
    /**
     * Catalog : Cataloglist Template with Slideshow2 Support
     * @author: Tim Gatzky <info@tim-gatzky.de>
     */

    ?>

    <?php if (count($this->entries)): ?>


    <!-- include slideshow 2 scripts -->
    <?php
    $GLOBALS
    ['TL_CSS'][] = 'plugins/slideshow2/css/slideshow.css';
    $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/slideshow2/js/slideshow.js';
    $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/slideshow2/js/slideshow.fold.js';
    $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/slideshow2/js/slideshow.kenburns.js';
    $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/slideshow2/js/slideshow.push.js';
    $GLOBALS['TL_JAVASCRIPT'][] = 'plugins/slideshow2/js/slideshow.flash.js';
    ?>

    <?php
    /**
     * Catalog settings
     */
    $Beschreibungsfeld 'description'// Das Feld in Deinem catalog, das fuer die ie Untertitel benutzt wird
    $Namesfeld 'name'// Das Feld in Deinem catalog, das fuer den Name des Bildes und fŸr den Anchor title benutzt wird
    $Bildfeld 'image'// Das Feld in Deinem catalog, aus dem die Bilder benutzt werden sollen
    #$Galeriefeld = 'gallery'; // baue ich noch ein


    /**
     * Slideshow settings
     */
    $slideshowEffect ''// Slideshow Effekt z.B.: 'Fold', 'KenBurns', 'Push', 'Flash'
    $thumbnailPadding 10// Padding der Vorschaubilder
    $thumbnailSize 80;
    $image_linked_to 'catalog'// 'lightbox', 'catalog'
    $duration 3500// Laenge der Einblendung
    $delay 1500// Dauer des Effekts
    $loop 'true';
    $random 'false'// Zufall
    $captions 'true'// Untertitel
    $controls 'true'// Slideshow-Steuerung anzeigen
    $paused 'false'// pausiert, kein autoplay
    $thumbnails 'true'// Vorschaubilder anzeigen


    // -------------------------------------- do the work

    // Gather images
    $arrImages = array();
    $arrUrl = array();
    $arrSRC = array();
    foreach (
    $this->entries as $entry)
    {
        foreach (
    $entry['data'] as $field=>$data)
        {
            
    // work on image field. must be type 'file'
            
    if($data['type'] == 'file' && $field == $Bildfeld )
            { 
                
    // store image information
                
    $arrImages[] = array(
                    
    'id' => $entry[id],
                    
    'src' => $data['meta'][0]['src'],
                    
    'thumbnail' => $data['meta'][0]['src'], // compressed image
                    
    'raw' => $data['raw'],
                    
    'size' => getimagesize($data['raw']), // can be outcommented for performance
                    
    'width' => $data['meta'][0]['w'],
                    
    'height' => $data['meta'][0]['h'],
                    
    'wh' => $data['meta'][0]['wh'],
                    
    'caption' => $entry['data'][$Beschreibungsfeld]['value'],
                    
    'name' => $entry['data'][$Namesfeld]['value'],
                    
    'url' => $entry['url'],
                    
    'lightbox' => $data['meta'][0]['lb']
                );
                
    $arrUrl[] = $entry['url']; // store urls
                
    $arrSRC[] = $data['raw'];
            }
        }
    }

    // slideshow vars
    $slideshowWidth 0;
    $slideshowHeight 0;

    // get slideshow size by dimensions of the field thumbnails settings
    if($this->entries[0]['data'][$Bildfeld]['meta'][0])
    {
        
    $slideshowWidth $this->entries[0]['data'][$Bildfeld]['meta'][0]['w']; 
        
    $slideshowHeight $this->entries[0]['data'][$Bildfeld]['meta'][0]['h'];
        
    $hasMeta true;
    }
    // check if thumbnail override is set
    else if($this->moduleTemplate->arrData['catalog_thumbnails_override'] && $this->entries[0]['data'][$Bildfeld]['meta'][0])
    {
        
    $size deserialize($this->moduleTemplate->arrData['catalog_imagemain_size']);
        
    $slideshowWidth $size[0];
        
    $slideshowHeight $size[1];
        
    // get slideshow size from image size
        
    if($size[2] == 'proportional')
        {
            
    $tmpImg $this->entries[0]['data'][$Bildfeld]['raw'];
            
    $tmpImgSize getImagesize($tmpImg);
            
    $prop $tmpImgSize[0] / $tmpImgSize[1];
            if(!
    strlen($slideshowWidth))
                
    $slideshowWidth $slideshowHeight $prop;
            if(!
    strlen($slideshowHeight))
                
    $slideshowHeight $slideshowWidth $prop;
        }
        
    $hasMeta true;
    }
    else
    {
        
    // get slideshow size by image dimensions
        
    $tmpImg $this->entries[0]['data'][$Bildfeld]['raw'];
        
    $tmpImgSize getImagesize($tmpImg);
        
    $slideshowWidth $tmpImgSize[0];
        
    $slideshowHeight $tmpImgSize[1];
    }



    // Thumbnails
    $thumbnailWidth $thumbnailSize//$arrImages[0]['width'];
    $thumbnailHeight $thumbnailSize//$arrImages[0]['height'];
    if($thumbnails)
    {
        foreach(
    $arrImages as $i => $image)
        {
            
    // create a new thumbnail
            // $width, $height, $mode=''
            
    $thumb $this->getImage($image['raw'],$thumbnailSize,$thumbnailSize,'crop');
            
    $arrImages[$i]['thumbnail'] = $thumb;
        }
    }


    // build data/images string for the slideshow
    foreach($arrImages as $image)
    {
        
    $strOptions ':{';

        if(
    $captions)
        {    
            
    $strOptions .= 'caption:' "'" $image['caption'] . "'";
        }
        else
        {
            
    $strOptions .= 'caption:' "'" "'";
        }
        
        if(
    $thumbnails)
            
    $strOptions .= ', thumbnail:' "'"  $image['thumbnail'] . "'"

        
    $strOptions .= '}'// close options
        
        
    $strData .= "'" $image['raw'] . "'";
        
    $strData .= $strOptions;
        
    $strData .= ','// close string
    }


    ?>





    <?php $id $this->moduleTemplate->arrData['id']; // set a unique id ?>
    <div class="layout_full catalog_slideshow<?php echo $id?>">

    <script type="text/javascript">        
    //<![CDATA[
    window.addEvent('domready', function(){

    // Init the slideshow
    var images_<?php echo $id?> = {<?php echo $strData?>};
    var show_<?php echo $id?> =
    <?php if(strlen($slideshowEffect)): ?>
    new Slideshow.<?php echo $slideshowEffect?>('show<?php echo $id?>', images_<?php echo $id?>,
    <?php else: ?>
    new Slideshow('show<?php echo $id?>', images_<?php echo $id?>,
    <?php endif; ?>

        width: <?php echo $slideshowWidth?>,
        height: <?php echo $slideshowHeight?>,
        delay: <?php echo $duration?>,
        duration: <?php echo $delay?>,
        transition: 'quad:in:out',
        thumbnails: <?php echo $thumbnails?>,
        captions: <?php echo $captions?>
        loop: <?php echo $loop?>,
        paused: <?php echo $paused?>,
        <?php if($image_linked_to == 'lightbox'): ?>
        linked: true,
        <?php endif; ?>
        random: <?php echo $random?>,
        fast: 1,
        controller: <?php echo $controls?>,
        hu: '',
        loader: {'animate': ['plugins/slideshow2/img/loader-#.png', 12]}
    });

    });
    //]]>
    </script>





    <div id="show<?php echo $id?>" class="slideshow">
    <div class="slideshow-images">

    <!-- lightbox -->
    <?php if ($image_linked_to == 'lightbox'): ?><a rel="lightbox" href="#" title="<?php echo $arrImages[0]['name']; ?>"><?php endif; ?>

    <!-- link to catalog -->
    <?php if($image_linked_to == 'catalog'): ?><a href="<?php echo $arrImages[0]['url']; ?>"  title="Katalogeintrag ansehen"><?php endif; ?>
    <script type="text/javascript">
    <!--//--><![CDATA[//><!-- 

    // grab the current href string and use it to find the corresponding catalog entry
    window.addEvent('domready', function() 
    {
        var arrA = $$('#show<?php echo $id?> .slideshow-images a' );
        var strUrl = "<?php echo implode(',',$arrUrl); ?>";
        var arrUrl = strUrl.split(',');
        var strSRC = "<?php echo implode(',',$arrSRC); ?>"
        var arrSRC = strSRC.split(',');
        var arrTemp = new Array();
        arrUrl.each(function(elem, index)
        {
            arrTemp[index] = new Array(elem, arrSRC[index]);
        });

        // set a new href for the clicked image
        arrA.addEvents({
            'click' : function() 
            {
                var src = this.getElement('img').get('src');
                var newHref = '';
                arrTemp.each(function(elem, index)
                {
                    if(elem[1] == src )
                    {
                        newHref = elem[0];
                    }
                });
                // set href
                this.set('href',newHref);
            }    
        });
    });
    //--><!]]>
    </script>
        <img id="slide<?php echo $id?>-<?php echo $arrImages[0]['id']; ?>" src="<?php echo $arrImages[0]['src']; ?>" width="<?php echo $arrImages[0]['w']; ?>" height="<?php echo $arrImages[0]['h']; ?>" alt="<?php echo $arrImages[0]['name']; ?>" />
    <?php if ($image_linked_to != ''): ?></a><?php endif; ?>
    </div>
    </div>


    </div>

    <!-- stylesheet -->
    <style type="text/css">
    #show<?php echo $id?> {
        width:<?php echo $slideshowWidth?>px;    
        height:<?php echo $slideshowHeight $thumbnailHeight +  $thumbnailPadding?>px;
        <?php if($this->play_image): ?>background: transparent url(<?php echo $this->play_image?>) top center no-repeat;<?php endif; ?>
    }
    #show<?php echo $id?> .slideshow-images {
        width:<?php echo $slideshowWidth?>px;
        height:<?php echo $slideshowHeight?>px;
    }

    <?php if($captions == true): ?>
    /* Captions - Untertitel */
    #show<?php echo $id?> .slideshow-captions {
        width:<?php echo $slideshowWidth?>px;
        bottom:<?php echo $thumbnailHeight $thumbnailPadding?>px;
    }
    .slideshow-captions-visible {
        height:30px;
        opacity: .7;
    }
    <?php endif; ?>

    <?php if($controls): ?>
    /* Controls - Steuerung */
    #show<?php echo $id?> .slideshow-controller {
        margin:-44px 0 0 -119px;
        top:50%;
    }
    <?php endif; ?>

    <?php if($thumbnails): ?>
    /* Thumbnails */
    #show<?php echo $id?> .slideshow-thumbnails {
        height:<?php echo $thumbnailHeight $thumbnailPadding?>px;
        width:<?php echo $slideshowWidth?>px;
        bottom:0;
        left:0;
        overflow:auto;
    }
    #show<?php echo $id?> .slideshow-thumbnails ul {
        height:<?php echo $thumbnailHeight?>px;
        width:<?php echo ( ($thumbnailWidth $thumbnailPadding) * count($arrImages) ); ?>px;
    }
    /* Add a margin to the thumbnails */
    #show<?php echo $id?> .slideshow-thumbnails li {
        margin:0;
    }
    #show<?php echo $id?> .slideshow-thumbnails a {
        float:left;
        opacity:.5;
        background-color: #FFF !important;
    }
    #show<?php echo $id?> .slideshow-thumbnails a:hover {
        background-color: #000 !important;
        opacity: 1;
    }
    #show<?php echo $id?> .slideshow-thumbnails a img {
        border:0;
    }
    <?php endif; ?>


    </style>








    <?php else: ?>

    <?php if ($this->condition): ?>
    <div class="condition"><?php echo $this->condition?></div>
    <?php else: ?>
    <p class="info">There are no entries matching your search.</p>
    <?php endif; ?>

    <?php endif; ?>
    eingebaut auf der seite hier zu sehen http://www.hvmotor.es/inicio-reader/...20tes%201.html

    funktioniert ja auch. Ich möchte aber nun mehrer Bilder auswählen die im Slider angezeigt werden. Stelle ich im Catalog auf Datei-Mehrfachauswahl und wähle dann z.b. Drei vier Bilder aus wird der Slider nicht mehr angezeigt. (einfach leere Seite).

  27. #27
    Alter Contao-Hase
    Registriert seit
    22.06.2009.
    Ort
    Köln
    Beiträge
    1.342

    Standard

    Benötigt das Template Ajax?

    Ich habe es genau wie beschrieben eingefügt aber die Bilder werden ohne Funktion untereinander als Liste dargestellt.

    Ich habe die Daten aus der jquery.flexslider.js vom Download in den Headbereich gesetzt oder auch einmal als eigender JavaScript Code in das Layout gesetzt..
    Muss auch das CSS in Contao geladen werden?

    Grüße
    Matu
    Geändert von matuweb (13.03.2013 um 16:10 Uhr)
    Viele Grüße aus Köln
    Matu

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •