Es hat mich schon seit längerem gestört, dass ich auf meiner Startseite den Link zum Weiter lesen eines Artikels immer angezeigt bekommen habe, auch wenn der Artikel vielleicht gar nicht mehr zum Lesen bietet und nur aus dem kurzen Teasertext besteht.
Deshalb habe ich mich heute mal rangesetzt und mir eine Möglichkeit überlegt, wie ich bei jedem Artikel einstellen kann, ober der "Weiter lesen"-Link angezeigt wird, oder nicht.
1. Erstellen eines neuen Felds vom Typ Ganzzahl mit der Bezeichnung isShorttext
Zuerstmal habe ich mir ein neues Feld für den Inhaltstyp Artikel (den ich am meisten verwende) erstellt.
2. Wertebereich für dieses Feld
Da dieses Feld nur bestimmt, ob ein Text nur aus dem Teaser besteht (also kurz ist) und deshalb kein "Weiter lesen"-Link angezeigt wird, reicht es aus, wenn man diesem Ganzzahl-Auswahlfeld nur den Wert 1 gibt und als Frontendbezeichnung ja, oder was auch immer einem da gefällt. :)
3. isShorttext von der Anzeige ausnehmen
Da das neue Feld nur ein Hilfsfeld ist, sollte es nun von der Anzeige ausgenommen werden.
4. Den Frontpage View erweitern
Nun muss das neue Feld natürlich auch Auswirkungen auf den Frontpage-View, der bei mir auf der Startseite alle Artikel anzeigt, haben.
Dazu wird dieser erstmal zum View hinzugefügt:
5. Den Frontpage-View themen
Jetzt kommt der entscheidende Schritt, im Template für meinen Frontpage-View ( views-view-table--frontpage.tpl.php ) wird der "Weiter lesen" - Link nur dann angezeigt, wenn die isShorttext-Variable nicht gesetzt wurde.
Hierbei noch ein wichtiger Hinweis:
Mein Frontpage-View ist im Design:Tabelle angelegt, da ich so am leichtesten Zugriff auf die Werte habe in meinem Template.
Nun also rein ins Template und mittels dieses kleinen Code-Snippets die Anzeige des "Mehr lesen" - Links konfigurierbar machen:
<?php if(!$row['field_isshorttext_value']): ?>
<div class="views-field-created">
<span class="field-content">
<?php print $row['view_node']; ?>
</span>
</div>
<?php endif; ?>
In der Variable view_node steht bei mir der "Mehr lesen" - Link und dieser wird durch die erste Zeile nur dann eingeblendet, wenn isShorttext nicht gesetzt ist.
6. Endergebnis
Nun kann ich, beim erstellen neuer Artikel, oder auch beim bearbeiten alter Artikel, einfach einstellen, ob es sich um einen kurzen Text handelt, bei dem es nichts mehr zu lesen gibt, als das was der Teaser hergibt, und falls dies der Fall ist, wird auch der "Weiter lesen" - Link nicht mehr angezeigt.
Wie das in meinem "Artikel erstellen"-Formular ausschaut, zeigt der folgende Screenshot, und ob bei kurze Artikeln noch ein Mehr lesen Link erscheint, seht ihr ja selbst ;)
.jpg)






Kommentar hinzufügen