Liebe Community, lieber BugBuster,
gerne möchte ich die generierte Banner-Url bbfebanner/banclicks/bid/Banner-ID auch in eigenen Elementen mit [madeyourday/contao-rocksolid-custom-elements] oder als Links im Fließtext zum Zählen von Klicks auf eine E-Mail-Adresse nutzen. Dies könnte für eine E-Mail-Adresse im Header bspw. wie folgt angelegt werden:
HTML-Code:
<!-- indexer::stop -->
<ul>
<li class="envelope"><a href="bbfebanner/banclicks/bid/Banner-ID" rel="nofollow">mail@mailadresse.tpl</a></li>
</ul>
<!-- indexer::continue -->
Folgende Konfiguration habe ich für den Banner gewählt:
- Bannerquelle: Textbanner
- Bannername: mail@mailadresse.tpl
- Bannerziel-Seite (Seite als externe Weiterleitung mit Link-Adresse mailto:mail@mailadresse.tpl)
- Interner Link aktiviert
So kann ich in jedem eigenen Element oder im Fließtext, etc. auch direkt die Url bbfebanner/banclicks/bid/Banner-ID aufrufen und es wird ein Klick gezählt. Damit die Links in der Systemwartung nit mit in den IIndex aufgenommen werden, setze ich immer indexer::stop und indexer::continue.
Jedoch wird der Link in der Suche nach defekten Links immer als broken link deklariert und als Fehler ausgegeben. Woran liegt das? Der Fehler tritt nicht auf, wenn ich den Textbanner als Modul (Banner) mit der Bannervorlage wie folgt einbinde:
PHP-Code:
<!-- indexer::stop -->
<aside class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
<?php foreach ($this->banners as $banner): ?>
<?php if ($banner['banner_text']) : ?>
<figure class="banner_wrap<?php echo $banner['banner_wrap_class']; ?>"<?php echo $banner['banner_wrap_id']; ?>>
<div class="banner_text" id="banner_<?php echo $banner['banner_id']; ?>">
<div class="banner_text_name"><?php if ($banner['banner_url']): ?><a href="<?= $this->route('bugbuster_banner_frontend_clicks') ?>/<?php echo $banner['banner_key'].'/'.$banner['banner_id']; ?>" <?php echo $banner['banner_target']; ?> title="<?php echo $banner['banner_name']; ?>" ><?php endif; ?><?php echo $banner['banner_name']; ?><?php if ($banner['banner_url']): ?></a><?php endif; ?></div>
</figure>
<?php endif; ?>
<?php endforeach; ?>
</aside>
<!-- indexer::continue -->
Hier wird die E-Mail-Adresse anhand des Bannernamens angezeigt und auf die bbfebanner/banclicks/bid/Banner-ID verlinkt. Da ich jedoch die Url auch in eigenen Elementen, bzw. überall nach eigenen Anforderungen einbinden möchte, erschien mir der Weg über die Url ganz logisch. Wie lässt sich die Anzeige als broken link vermeiden, bzw. sich die Urls aus der Suche ausschließen?
Vielen Dank für Eure Unterstützung. Ich hoffe, dass ich mit meiner ausfürhlichen Frage auch andere Anwender der Erweiterung helfen, bzw. sogar auf eine Idee bringen könnte.
Lesezeichen