Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Both sides previous revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Letzte Überarbeitung Both sides next revision | ||
software:typo3:news [2017/02/05 20:17] khopf |
software:typo3:news [2017/02/05 21:16] khopf [Template-Files kopieren] |
||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
===== "Latest"-Ansicht für Startseiten ===== | ===== "Latest"-Ansicht für Startseiten ===== | ||
- | Die Latest-Ansicht soll z.B. auf der Startseite die letzten Nachrichten als Teaser anzeigen und soll deshalb keine Infos wie Kategorie, Datum und auch keine Bilder enthalten. Diese Anleitung orientiert sich an [[https://t3brightside.com/blog/article/typoscript-custom-latest-template-for-the-news-extension/| einer Anleitung von t3brightsight]]. | + | Die Latest-Ansicht soll z.B. auf der Startseite die letzten Nachrichten mit Titel und ggf. kurzem Teaser anzeigen. Es sollen keine Infos wie Kategorie, Datum und auch keine Bilder enthalten sein, um Platz zu sparen. Diese Anleitung orientiert sich an [[https://t3brightside.com/blog/article/typoscript-custom-latest-template-for-the-news-extension/| einer Anleitung von t3brightsight]]. |
+ | |||
+ | ==== Einstellungen per TypoScript ==== | ||
Zunächst legt man hierzu ein neues Layout an. In der Seiten TS-Config wird folgendes hinzugefügt | Zunächst legt man hierzu ein neues Layout an. In der Seiten TS-Config wird folgendes hinzugefügt | ||
<code TypoScript> | <code TypoScript> | ||
tx_news.templateLayouts { | tx_news.templateLayouts { | ||
- | latestHeaders = Latest headers | + | latestView = Latest Ansicht |
} | } | ||
</code> | </code> | ||
Zeile 33: | Zeile 35: | ||
Die drei Verzeichnisse ''Templates'', ''Partials'' und ''Layouts'' sind drei Standardverzeichnisse von Fluid-Templates (s. [[http://t3n.de/magazin/seitentemplates-fluid-226788/#article|T3N-Artikel]] für eine Erklärung. | Die drei Verzeichnisse ''Templates'', ''Partials'' und ''Layouts'' sind drei Standardverzeichnisse von Fluid-Templates (s. [[http://t3n.de/magazin/seitentemplates-fluid-226788/#article|T3N-Artikel]] für eine Erklärung. | ||
+ | |||
+ | ==== Template-Files kopieren ==== | ||
+ | Wir kopieren anschließend die Template-Dateien in unser lokales Template-Verzeichnis ''/fileadmin/templates'': | ||
+ | ^ Quelle (Extension-Source) ^ Ziel (Template-Verzeichnis) ^ | ||
+ | |EXT:news/Resources/Private/Templates/News/List.html | fileadmin/templates/ext/news/Templates/News/List.html | | ||
+ | |EXT:news/Resources/Private/Partials/List/Item.html | fileadmin/templates/ext/news/Partials/List/Latest.html | | ||
+ | ==== Template-Files anpassen ==== | ||
+ | Das ausgegebene ''<div class="news-list-view">'' Objekt soll nun nur noch ausgegeben werden, wenn das eigene Template nicht ausgewählt ist und stattdessen wollen wir ein ''<div class="news-latest-view">'' Objekt ausgeben: | ||
+ | <code XML> | ||
+ | ... | ||
+ | <f:if condition="{news}"> | ||
+ | <f:then> | ||
+ | <!-- this condition was added to introduce latest view --> | ||
+ | <f:if condition="{0:settings.templateLayout} == {0:'latestView'}"> | ||
+ | <f:then> | ||
+ | <!-- this is the code for the latest view --> | ||
+ | <div class="news-latest-view"> | ||
+ | <f:for each="{news}" as="newsItem" iteration="iterator"> | ||
+ | <f:render partial="List/Latest" arguments="{newsItem: newsItem, settings:settings, className:className, view:'list'}"/> | ||
+ | </f:for> | ||
+ | </div> | ||
+ | </f:then> | ||
+ | <f:else> | ||
+ | <!-- this was the original code --> | ||
+ | <div class="news-list-view"> | ||
+ | <f:if condition="{settings.hidePagination}"> | ||
+ | <f:then> | ||
+ | <f:for each="{news}" as="newsItem" iteration="iterator"> | ||
+ | <f:render partial="List/Item" arguments="{newsItem: newsItem,settings:settings,iterator:iterator}" /> | ||
+ | </f:for> | ||
+ | </f:then> | ||
+ | <f:else> | ||
+ | <n:widget.paginate objects="{news}" as="paginatedNews" configuration="{settings.list.paginate}" initial="{offset:settings.offset,limit:settings.limit}"> | ||
+ | <f:for each="{paginatedNews}" as="newsItem" iteration="iterator"> | ||
+ | <f:render partial="List/Item" arguments="{newsItem: newsItem,settings:settings,iterator:iterator}" /> | ||
+ | </f:for> | ||
+ | </n:widget.paginate> | ||
+ | </f:else> | ||
+ | </f:if> | ||
+ | </div> | ||
+ | </f:else> | ||
+ | </f:if> | ||
+ | </f:then> | ||
+ | </code> | ||
+ |
Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.