Hallo.
Ich verwende Contao 2.9.5 mit Slideshow2 1.1.0 stable.
Ich bin auf folgendes Problem/Bug gestoßen:
Aufbau der Website:
- Ich habe eine Website, in der ich im Header eine Slideshow habe, die jedoch nur für gewissen eingeloggte Mitglieder sichtbar ist.
- Ich habe dies dadurch gelöst, indem ich eine spezielle Seite im Seitenbaum erstellt habe, die nirgends sichtbar ist (jedoch veröffentlicht).
- In dieser befindet sich ein Artikel, welcher geschützt ist (nur eine gewisse Gruppe darf diesen Artikel sehen).
- Als Artikelelement habe ich einen Text mit einem Insert-Tag für die Slideshow ({{slideshow2::ID}})
- Im Layout habe ich ein neues Modul hinzugefügt, welches es ermöglicht eigenen eigenen HTML-Code hinzuzufügen. Dort habe ich ein Insert-Tag zum Artikel eingefügt ({{article::ID}})
- Die Einzelnen Slides in der Slideshow waren mit einem Bild versehen, einem Text, welcher angezeigt wird und einer Verlinkung dazuhörigen Artikel des Slides.
Problem:
Mein Problem war nun, dass die Links in den Slides nicht umgewandelt wurden. {{link::ID}} blieb und wurde nicht durch den korrekten Link ersetzt, dadurch war natürlich die Verlinkung vollkommen falsch.
Lösung:
Ich bin nun ins Modul gegangen und habe nach der richtigen Code-Zeile gesucht, um dies zu ändern.
In der HookSlideshow2.php habe ich die Zeile 247:
PHP-Code:
$arrElements[$x]['url_link'] = ($objElements->url_link);
ersetzt durch:
PHP-Code:
$arrElements[$x]['url_link'] = $this->replaceInsertTags($objElements->url_link);
Nun hat es funktioniert!
Die Änderung ist wahrscheinlich in der gleichen Datei auf in Zeile 166 zu ändern (war jedoch für mich noch nicht relevant und habe ich auch nicht ausgetestet).
Auch in der ContentSlideshow2.php in Zeile 226 und 307 ist ggf. eine Anpassung nötig.
Wäre toll wenn du mir dazu eine Rückmeldung geben könntest!
Viele Grüße,
mangei
Lesezeichen