Node unveröffentlichen, wenn CCK-Feld "bis-Datum" in Vergangenheit liegt
am 19.06.2009 - 16:20 Uhr in
Mit Actions und Trigger kann man einiges machen, aber das hier wohl nicht:
Mittels Inhaltstype "Termin" kann man Eventnodes erzeugen, die auch einen "Eventzeitraum" enthalten. Dieser Eventzeitraum ist ein CCK-Feld vom Typ Datum, allerdings mit von-Datum und bis-Datum.
Nun sollen die Nodes automatisiert unveröffentlicht werden, wenn der Event voll abgelaufen ist, wenn also das bis-Datum überschrittten wurde, das Event also in der Vergangenheit liegt. Manche Events sind aber nur an einem Tag, dann dürfte das bis-Datum gleich dem von-Datum sein, jedenfalls hoffe ich, dass immer ein bis-Datum verhanden ist, damit eine einfache Abfrage möglich ist.
Wie löst man nun den Trigger aus, wenn ein bis-Datum bei einem Event-Node überschritten wurde? Braucht man dazu ein zusätzliches Modul?
Und bei Auslösung dieses Trigger soll dann der abgelaufende Eventnode "unveröffentlicht" werden.
Wer hat Ideen? Danke.
- Anmelden oder Registrieren um Kommentare zu schreiben
Rules
am 19.06.2009 - 19:59 Uhr
Ich habe es jetzt mit dem Modul "Rules" gelöst und führe bei der Bedingung folgenden benutzerdefinierten PHP-Code aus:
return( $node->field_event_zeitraum[0]['value2'] < date("c") );
Es funktioniert. date("c") ist schon ein eigenartiges Datumsformat :-)
Eigenartig ist, dass nachdem ein Event-Node unveröffentlicht wurde, dieser Node-Teaser im View zwar nicht mehr angezeigt wird, wenn man als User eingeloggt ist, aber wenn man ausgeloggt ist (nur Besucher), sieht man diesen unveröffentlichten Node-Teaser im View trotzdem noch und zwar nur wegen dem Cache.
Ich hoffe, dass der Cache da nicht ewig anhält, sonst sind solche "Unveröffentlichungen" ja nicht machbar, wenn der Cache alte Dinge anzeigt ...
Aber super Modul, diese Rules.
das wär evtl infacher gewesen
am 19.06.2009 - 21:28 Uhr
http://drupal.org/project/scheduler
Ausserdem u.U. auch flexibler.
Gruss Roger
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen