Einträge in Kategorieansicht kürzen
Einträge in Kategorieansicht kürzen
Moin moin.
Wenn in meinem Blog eine Kategorie aufgerufen wird, sollen nur Titel und der Anfang der Artikel gezeigt werden.
Das müsste irgendwie [TM] mit {... |@truncate:200:'...'} gehen in einer entsprechenden tpl-Datei. Wie müsste die heißen? Ich glaube auch, das schonmal gesehen zu haben, aber in welchem Template? (Dann könnte ich mir das dort ansehen)
Vielen Dank.
Wenn in meinem Blog eine Kategorie aufgerufen wird, sollen nur Titel und der Anfang der Artikel gezeigt werden.
Das müsste irgendwie [TM] mit {... |@truncate:200:'...'} gehen in einer entsprechenden tpl-Datei. Wie müsste die heißen? Ich glaube auch, das schonmal gesehen zu haben, aber in welchem Template? (Dann könnte ich mir das dort ansehen)
Vielen Dank.
Re: Einträge in Kategorieansicht kürzen
Wie in der meisten Fällen: Mimbo.u1amo01 wrote:Wenn in meinem Blog eine Kategorie aufgerufen wird, sollen nur Titel und der Anfang der Artikel gezeigt werden.
Das müsste irgendwie [TM] mit {... |@truncate:200:'...'} gehen in einer entsprechenden tpl-Datei. Wie müsste die heißen? Ich glaube auch, das schonmal gesehen zu haben, aber in welchem Template? (Dann könnte ich mir das dort ansehen)
Allerdings wird es dort nicht in Kategorien-Ansicht, sondern für die Teaser auf der Startseite verwendet. Die Kürzung des Eintragstextes sieht so aus:
Code: Select all
{$entry.body|strip_tags|truncate:400:" ..."}Damit das nur in Kategorienansicht geschieht, baust Du am besten in die entries.tpl eine Abfrage ein:
Code: Select all
{if $view == 'categories'}
[gekürzter $entry.body]
{else}
[voller $entry.body]
{/if}YL
Re: Einträge in Kategorieansicht kürzen
Danke für die ausführliche Erläuterung 
Funktioniert wunderbar.
Jetzt muss ich das nur noch ein bischen aufhübschen, weil ich natürlich die Metadaten in der Kategorieansiche weghaben will. Und einen zusätzlichen Link nach dem " ..." zur Artikelansicht haben möchte. Ich denke das kriege ich hin, mal sehen.
Danke!
Funktioniert wunderbar.
Jetzt muss ich das nur noch ein bischen aufhübschen, weil ich natürlich die Metadaten in der Kategorieansiche weghaben will. Und einen zusätzlichen Link nach dem " ..." zur Artikelansicht haben möchte. Ich denke das kriege ich hin, mal sehen.
Danke!
Re: Einträge in Kategorieansicht kürzen
Dideldum, dideldei ... macht immer wieder Spaß, Serendipity 
To whom it may concern
meine Komplettlösung:
Ergänzung in entries.tpl
Eintrag in lang_de.inc.php
Eintrag in lang_en.inc.php
Die Dateien in /UTF-8 ebenfalls entsprechend ergänzen.
Voilà.
Danke!
To whom it may concern
meine Komplettlösung:
Ergänzung in entries.tpl
Code: Select all
{if $view == 'categories'}
{$entry.body|strip_tags|truncate:200:" ..."}
<p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON}</a></p>
{else}
{$entry.body}
{/if}
Code: Select all
@define('BASE_READON', 'weiterlesen »');Code: Select all
@define('BASE_READON', 'continue »');Voilà.
Danke!
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
Hallo Ihr Spezialisten,
ich habe das Problem, daß wenn ich den Code wie angegeben einbaue, der erste Teil wie gewünscht abgeschnitten wird, dann aber der komplette Text noch einmal hintenangestellt wird.
Dieses ist aber nur die halbe Wahrheit - auf der Startseite wird der komplette Text einfach zwei Mal hintereinander ausgegeben.
Was habe ich falsch gemacht? Weiterhin würde mich interessieren, ob es eine Möglichkeit gibt, diese Funktion lediglich auf die Startseite zu beschränken.
Das Problem ist hier zu besichtigen http://tiny.cc/8nc1y
Vielen Dank für Eure Hilfe.
Frank
ich habe das Problem, daß wenn ich den Code wie angegeben einbaue, der erste Teil wie gewünscht abgeschnitten wird, dann aber der komplette Text noch einmal hintenangestellt wird.
Dieses ist aber nur die halbe Wahrheit - auf der Startseite wird der komplette Text einfach zwei Mal hintereinander ausgegeben.
Was habe ich falsch gemacht? Weiterhin würde mich interessieren, ob es eine Möglichkeit gibt, diese Funktion lediglich auf die Startseite zu beschränken.
Das Problem ist hier zu besichtigen http://tiny.cc/8nc1y
Vielen Dank für Eure Hilfe.
Frank
Re: Einträge in Kategorieansicht kürzen
Zeig mal bitte den Anfang Deiner entries.tpl, also den Teil vor „<rdf:RDF“.Frankenstein wrote:ich habe das Problem, daß wenn ich den Code wie angegeben einbaue, der erste Teil wie gewünscht abgeschnitten wird, dann aber der komplette Text noch einmal hintenangestellt wird.
YL
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
yellowled wrote:Zeig mal bitte den Anfang Deiner entries.tpl, also den Teil vor „<rdf:RDF“.Frankenstein wrote:ich habe das Problem, daß wenn ich den Code wie angegeben einbaue, der erste Teil wie gewünscht abgeschnitten wird, dann aber der komplette Text noch einmal hintenangestellt wird.
YL
OK, das ist alles was davor steht
Code: Select all
<!-- ENTRIES START -->
{serendipity_hookPlugin hook="entries_header" addData="$entry_id"}
{foreach from=$entries item="dategroup"}
<div class="serendipity_Entry_Date">
{foreach from=$dategroup.entries item="entry"}
<h4 class="serendipity_title"><a href="{$entry.link}">{$entry.title}</a></h4>
{if $dategroup.is_sticky}
<h3 class="serendipity_date">{$CONST.STICKY_POSTINGS}</h3>
{else}
<h3 class="serendipity_date">{$dategroup.date|@formatTime:DATE_FORMAT_ENTRY}</h3>
{/if}
<div class="serendipity_entry serendipity_entry_author_{$entry.author|@makeFilename} {if $entry.is_entry_owner}serendipity_entry_author_self{/if}">
{if $entry.categories}
<!--
<span class="serendipity_entryIcon">
{foreach from=$entry.categories item="entry_category"}
{if $entry_category.category_icon}
<a href="{$entry_category.category_link}"><img class="serendipity_entryIcon" title="{$entry_category.category_name|@escape}{$entry_category.category_description|@emptyPrefix}" alt="{$entry_category.category_name|@escape}" src="{$entry_category.category_icon}" /></a>
{/if}
{/foreach}
</span>
-->
{if $view == 'categories'}
{$entry.body|strip_tags|truncate:200:" ..."}
<p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON}
</a></p>
{else}
{$entry.body}
{/if}
{/if}
<div class="serendipity_entry_body">
{$entry.body}
</div>
{if $entry.is_extended}
<div class="serendipity_entry_extended"><a id="extended"></a>{$entry.extended}</div>
{/if}
{if $entry.has_extended and not $is_single_entry and not $entry.is_extended}
<br /><a href="{$entry.link}#extended">{$CONST.VIEW_EXTENDED_ENTRY|@sprintf:$entry.title}</a><br /><br />
{/if}
<div class='serendipity_entryFooter'>
{$CONST.POSTED_BY} <a href="{$entry.link_author}">{$entry.author}</a>
{if $entry.categories}
{$CONST.IN} {foreach from=$entry.categories item="entry_category" name="categories"}<a href="{$entry_category.category_link}">{$entry_category.category_name|@escape}</a>{if not $smarty.foreach.categories.last}, {/if}{/foreach}
{/if}
{if $dategroup.is_sticky}
{$CONST.ON}
{else}
{$CONST.AT}
{/if} <a href="{$entry.link}">{if $dategroup.is_sticky}{$entry.timestamp|@formatTime:DATE_FORMAT_ENTRY} {/if}{$entry.timestamp|@formatTime:'%H:%M'}</a>
{if $entry.has_comments}
{if $use_popups}
| <a href="{$entry.link_popup_comments}" onclick="window.open(this.href, 'comments', 'width=480,height=480,scrollbars=yes'); return false;">{$entry.label_comments} ({$entry.comments})</a>
{else}
| <a href="{$entry.link}#comments">{$entry.label_comments} ({$entry.comments})</a>
{/if}
{/if}
{if $entry.has_trackbacks}
{if $use_popups}
| <a href="{$entry.link_popup_trackbacks}" onclick="window.open(this.href, 'comments', 'width=480,height=480,scrollbars=yes'); return false;">{$entry.label_trackbacks} ({$entry.trackbacks})</a>
{else}
| <a href="{$entry.link}#trackbacks">{$entry.label_trackbacks} ({$entry.trackbacks})</a>
{/if}
{/if}
{if $entry.is_entry_owner and not $is_preview}
| <a href="{$entry.link_edit}">{$CONST.EDIT_ENTRY}</a>
{/if}
{$entry.add_footer}
</div>
</div>Re: Einträge in Kategorieansicht kürzen
Abgesehen davon, dass das 2. {/if} (zusammen mit dem {if $entry.categories} vor dem auskommentierten Teil) überflüssig ist, macht das Template genau, was Du anweist: „falls Kategorienansicht, gib den gekürzten Eintrag und den Weiterlesen-Link aus, falls nicht, den Eintragskörper; gib danach nochmals den Eintragskörper in einem Container aus“.Frankenstein wrote:Code: Select all
{if $view == 'categories'} {$entry.body|strip_tags|truncate:200:" ..."} <p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON} </a></p> {else} {$entry.body} {/if} {/if} <div class="serendipity_entry_body"> {$entry.body} </div>
Code: Select all
<div class="serendipity_entry_body">
{if $view == 'categories'}
{$entry.body|strip_tags|truncate:200:" ..."}
<p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON}
</a></p>
{else}
{$entry.body}
{/if}
</div>YL
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
Super, das genau war der Groschen der mir an der Mark fehlte
- jetzt funktioniert alles prima.
Vielen Dank.
Eine Frage hätte ich da noch, gibt es eine Möglichkeit diese Funktion lediglich auf die Startseite zu beschränken und in der Kategorieansicht die "normale Ansicht" zu haben?
Frank
Vielen Dank.
Eine Frage hätte ich da noch, gibt es eine Möglichkeit diese Funktion lediglich auf die Startseite zu beschränken und in der Kategorieansicht die "normale Ansicht" zu haben?
Frank
Re: Einträge in Kategorieansicht kürzen
Natürlich. Ersetze {if $view == 'categories'} durch {if $view == 'start'}.Frankenstein wrote:Eine Frage hätte ich da noch, gibt es eine Möglichkeit diese Funktion lediglich auf die Startseite zu beschränken und in der Kategorieansicht die "normale Ansicht" zu haben?
(Dir ist schon bewusst, dass Du diese Funktionalität auch hinbekommen hättest, ohne im Template rumzuklöppeln, indem Du einfach erweiterte Einträge benutzt?)
YL
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
yellowled wrote:Natürlich. Ersetze {if $view == 'categories'} durch {if $view == 'start'}.Frankenstein wrote:Eine Frage hätte ich da noch, gibt es eine Möglichkeit diese Funktion lediglich auf die Startseite zu beschränken und in der Kategorieansicht die "normale Ansicht" zu haben?
(Dir ist schon bewusst, dass Du diese Funktionalität auch hinbekommen hättest, ohne im Template rumzuklöppeln, indem Du einfach erweiterte Einträge benutzt?)
YL
Danke für die Info und "nein" das war mir nicht bewusst, das es auch anders geht. Wenn es so gewesen wäre, hätte ich mir dieses hier ja sparen können (außerdem klöppel ich doch so gerne
Danke für deine Hilfe.
Frank
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
Ich hätte da noch einmal eine Frage bezüglich der verkürzten Kategorieansicht, bevor ich evtl. wieder alles etwas zu kompliziert mache.
Gibt es eine Möglichkeit in der verkürzten Ansicht ein Bild anzuzeigen und bei Aufruf des gesamten Artikel ein anderes Bild? Momentan ist es ja so, daß die eingefügten Bilder lediglich bei Ansicht des gesamten Artikels angezeigt werden, aber im verkürzten Teil dann garnichts erscheint.
Vielen Dank für Eure Hilfe.
Frank
Gibt es eine Möglichkeit in der verkürzten Ansicht ein Bild anzuzeigen und bei Aufruf des gesamten Artikel ein anderes Bild? Momentan ist es ja so, daß die eingefügten Bilder lediglich bei Ansicht des gesamten Artikels angezeigt werden, aber im verkürzten Teil dann garnichts erscheint.
Vielen Dank für Eure Hilfe.
Frank
Re: Einträge in Kategorieansicht kürzen
Grundsätzlich: Ja.Frankenstein wrote:Gibt es eine Möglichkeit in der verkürzten Ansicht ein Bild anzuzeigen und bei Aufruf des gesamten Artikel ein anderes Bild?
Simpel und einfach: Nein. (Disclaimer: Mir fällt keine simple und einfache Lösung ein. Freiwillige vor.)
Kompliziert: Anpassung des Templates analog zum Mimbo-Template, einbinden von Schmuckbildern für Artikel über das Plugin „Erweiterte Eigenschaften von Einträgen“ -- dort eines für die Kurzansicht, eines für die Artikelansicht einbauen, wie es in Mimbo gemacht wird. Alternative funktioniert es evtl. auch, nur eines für die Kurzansicht zu definieren, in der Kurzansicht in den Artikel eingebundene Bilder zu unterbinden und das Bild für die Artikelansicht klassisch in den Artikel einzubinden.
Detailliert: Habe ich zumindest aktuell keine Zeit dazu, müsste man auch definitiv mehr über Dein Template wissen bzw. erfragen.
YL
-
Frankenstein
- Regular
- Posts: 6
- Joined: Sun Feb 20, 2011 12:32 pm
- Location: Son Servera, Spanien
Re: Einträge in Kategorieansicht kürzen
yellowled wrote:Grundsätzlich: Ja.Frankenstein wrote:Gibt es eine Möglichkeit in der verkürzten Ansicht ein Bild anzuzeigen und bei Aufruf des gesamten Artikel ein anderes Bild?
Simpel und einfach: Nein. (Disclaimer: Mir fällt keine simple und einfache Lösung ein. Freiwillige vor.)
Kompliziert: Anpassung des Templates analog zum Mimbo-Template, einbinden von Schmuckbildern für Artikel über das Plugin „Erweiterte Eigenschaften von Einträgen“ -- dort eines für die Kurzansicht, eines für die Artikelansicht einbauen, wie es in Mimbo gemacht wird. Alternative funktioniert es evtl. auch, nur eines für die Kurzansicht zu definieren, in der Kurzansicht in den Artikel eingebundene Bilder zu unterbinden und das Bild für die Artikelansicht klassisch in den Artikel einzubinden.
Detailliert: Habe ich zumindest aktuell keine Zeit dazu, müsste man auch definitiv mehr über Dein Template wissen bzw. erfragen.
YL
OK, vielen Dank für die Antwort. Wenn Du Lust und vor allem mehr Zeit hast, kannst Du ja Bescheid sagen, dann können wir uns im Detail noch einmal darüber unterhalten. Wer weiß, vielleicht fällt Dir ja noch eine einfachere Lösung dazu ein.
Frank
-
montebianco
- Regular
- Posts: 42
- Joined: Tue Feb 28, 2012 9:13 am
Re: Einträge in Kategorieansicht kürzen
Wenn ich das richtig verstehe, gibt diese Anweisung in JEDEM Fall einen "weiterlesen"-Link aus... Wie muss ich den Teil da oben verändern, dass s9y das NUR bei Artikeln macht, die auch tatsächlich abgeschnitten wurden (d.h. länger als die - in diesem Fall - 200 Zeichen sind)??yellowled wrote:Abgesehen davon, dass das 2. {/if} (zusammen mit dem {if $entry.categories} vor dem auskommentierten Teil) überflüssig ist, macht das Template genau, was Du anweist: „falls Kategorienansicht, gib den gekürzten Eintrag und den Weiterlesen-Link aus, falls nicht, den Eintragskörper; gib danach nochmals den Eintragskörper in einem Container aus“.Frankenstein wrote:Code: Select all
{if $view == 'categories'} {$entry.body|strip_tags|truncate:200:" ..."} <p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON} </a></p> {else} {$entry.body} {/if} {/if} <div class="serendipity_entry_body"> {$entry.body} </div>
gibt das aus, was Du möchtest (wenn ich Dich richtig verstehe). Die Zeilen 17 bis 40 Deines Codes sind dann überflüssig.Code: Select all
<div class="serendipity_entry_body"> {if $view == 'categories'} {$entry.body|strip_tags|truncate:200:" ..."} <p class="floatr"><a href="{$entry.link}" title="{$entry.title}">{$CONST.BASE_READON} </a></p> {else} {$entry.body} {/if} </div>
YL
Macht ja keinen Sinn, unter Einträgen, die nur aus einem Satz bestehen, noch einen "Weiterlesen"-Link stehen zu haben....
lg, montebianco