Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 10. November 2014 12:08
- antibart
- Server-Pate
- Registriert: 14. Dezember 2010
- Beiträge: 880
List2: Kategorien mit abgelaufenen Artikeln werden gezeigt
Hallo zusammen.
ich hatte das in einem anderen Thema schon mal beiläufig angesprochen. Da es jetzt wieder aktuell ist, mache ich nochmal einen eigenen Thread draus.
1. Ich gebe links ein Kategoriemenü aus. Eine einzelne Kategorie soll nur angezeigt werden, wenn sich sichtbare Artikel in dieser Kategorie befindet.
2. Die Artikel haben ein Ablaufdatum
Problem: Wenn dieses Datum erreicht wird, verschwinden zwar die Artkel wie gewünscht aus der Aufllistung – die Kategorie wird aber weiterhin angezeigt. Also praktisch eine leere Kategorie.
Meine bisherige Lösung war, die abgelaufenen Artkel zu deaktivieren [x]. Dann verschwindet auch die Kategorie.
Allerdings besteht nun der Wunsch, alte Artikel an anderer Stelle zu archivieren. Und das Archiv berücksichtigt keine deaktivierten Artikel. Abgelaufene aber schon.
Meine erste Frage ist, ob es sich dabei um einen Versionsbug handelt oder ob es so gedacht ist? Die zweite wäre, wenn es so gedacht ist - wie könnte man das umgehen?
CMSMS: 1.11.10
Listit2: 1.4.1
Beitrag geändert von antibart (10. November 2014 12:53)
Offline
#2 13. November 2014 10:56
- Janl
- Server-Pate
- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.231
- Webseite
Re: List2: Kategorien mit abgelaufenen Artikeln werden gezeigt
Ganz algemein.
Ob eine Kategorie leer ist kan doch mit einer Foreach-Schleife getestet werden (mit Zähler) um dann zu zeigen oder nicht, kostet nur etwas Zeit.
Mit freundlichen Grüßen,
Jan
Kubuntu 22.04 - Win 11 pro / Kubuntu 20.04 - win10 pro
Offline
#3 13. November 2014 11:08
- antibart
- Server-Pate
- Registriert: 14. Dezember 2010
- Beiträge: 880
Re: List2: Kategorien mit abgelaufenen Artikeln werden gezeigt
Juchei - eine Antwort. Danke.
Du meinst:
[== smarty ==]
{if $category->items|count > 0}
Das wird abgefragt. Die Abfrage bezieht allerdings abgelaufene items mit ein. Und genau das ist das Problem. Der Zähler ist dann auf 0, wenn die Beiträge deaktiviert / gelöscht werden - nicht, wenn sie abgelaufen sind.
Beitrag geändert von antibart (13. November 2014 11:31)
Offline
#4 13. November 2014 13:47
- rage_all
- kennt CMS/ms
- Ort: Augsburg
- Registriert: 09. März 2011
- Beiträge: 288
Re: List2: Kategorien mit abgelaufenen Artikeln werden gezeigt
Das hier müsste funktionieren — Du musst nur schauen wohin damit innerhalb der {foreach} und {if} Schleifen ... da schiele ich gerade und krieg es nicht auf die Reihe (davon abgesehen, dass ich Dein Template ja gar nicht kenne...).
[== Smarty / ListIt2-Template ==]
{* check if date is old *}{if $item->end_time >= $smarty.now|cms_date_format}
<!-- do this //-->
{/if}{* eof check *}
Bzw. eben dann vice-versa.
Wie sich das allerdings verhält mit "Dauer-Aktiven", also Einträgen die kein Enddatum haben, hab ich jetzt nicht nachgeschlagen. Ich hab nur getestet was passiert, wenn das Enddatum größer ist als das aktuelle Datum.
Vielleicht musst Du auch die Zeit anders rechnen als ich jetzt hier.
Ich hatte eben 2014-11-14 als Ergebnis und konnte das deswegen gut abziehen.
Ich hoffe es bringt Dich einen Schritt weiter - zu feilen gibt es sicher noch genug.
Offline
#5 13. November 2014 13:54
- antibart
- Server-Pate
- Registriert: 14. Dezember 2010
- Beiträge: 880
Re: List2: Kategorien mit abgelaufenen Artikeln werden gezeigt
Hi,
danke dir. Das sieht schon mal gut.
Jeder Termin hat ein Ablaufdatum - das wäre also kein Problem.
Offline
Seiten: 1