Zeichenbegrenzung des Teaser bei News oder Events

Manchmal ist es Sinnvoll den Teaser in Contao zu begrenzen, z.B. um optisch möglichst ähnliche Newsblöcke zu bekommen. Durch ein Zeichenbegrenzung zwingt man den Redakteur dazu seine Texte kurz zu halten.

Technisch ist dies einfach. Im Template der News (z.B. news_latest.html5) fügt man folgenden Code ein:

<?php if ($this->teaser): ?>
<?php echo \StringUtil::substr($this->teaser,100); ?>
<?php else: ?>
<?php echo \StringUtil::substr($this->text,100); ?>
<?php endif; ?>

Bei den Events hingegegen kann man im Template event_teaser.html5 folgendes einbauen:

<?php if (!$this->addBefore): ?>
	<?php if ($this->teaser): ?>
	  <?php echo \StringUtil::substr($this->teaser,80); ?>
	<?php else: ?>
	  <?php echo \StringUtil::substr($this->details,80); ?>
    <?php endif; ?>		
  <?php endif; ?>


  <?php if ($this->addBefore): ?>
	<?php if ($this->teaser): ?>
	  <?php echo \StringUtil::substr($this->teaser,80); ?>
	<?php else: ?>
	  <?php echo \StringUtil::substr($this->details,80); ?>
    <?php endif; ?>		
  <?php endif; ?>

Wichtig ist natrürlich, dass man im Template nicht nur den Code ergänzt, sondern die bestehende Teaserausgabe dort ersetzt.

Die Quelle für diesen Tipp: https://github.com/contao/contao/issues/770

Zurück