Objekte per Cronjob parken und in anderes Objektverzeichnis verschieben

Fragen zum Erstellen von Templates für webEdition.
mediavantis
Senior Member
Beiträge: 238
Registriert: Do 16. Feb 2012, 12:51

Objekte per Cronjob parken und in anderes Objektverzeichnis verschieben

Beitragvon mediavantis » Sa 8. Aug 2020, 09:38

Hallo liebe Forumsgemeinde!

In einem aktuellen Projekt (WE 8.1.2) möchte ich per Cronjob "abgelaufene" News (per Formular von Usern angelegt) parken und in ein anderes Objektverzeichnis (archiv) verschieben.

Das Parken funktioniert einwandfrei indem ich per Condition und LV alle Objekte selektiere, in denen das in den Objekten befindliche Ablaufdatum mit "heute" verglichen wird.

Code: Alles auswählen

		<we:listview type="object" classid="19" order="we_id" condition="\$DeleteOldNews">
			<we:ifNotFound>
				<p>Nichts zum Parken gefunden.</p>
				<we:else />
				<we:repeat>
					<we:field name="we_id" />
					<we:field name="we_id"  nameto="ID_Del" to="global" />
					<?php
					// Objekt ID initialisieren
					$obj = new we_objectFile();
					$obj->initByID($ID_Del);
					// Objekt parken
					$obj->we_unpublish();
					?>
				</we:repeat>
			</we:ifNotFound>
		</we:listview>
Leider jedoch finde ich keinen Weg, das geparkte Objekt anschließen in das Objekt-Verzeichnis "archiv" der betreffenden Klasse zu verschieben.
Kann mir hier jemand auf die Sprünge helfen?

NilSole
Senior Member
Beiträge: 303
Registriert: Mi 27. Mär 2019, 15:28

Re: Objekte per Cronjob parken und in anderes Objektverzeichnis verschieben

Beitragvon NilSole » Sa 8. Aug 2020, 11:27

Hallo Ulrich,

Das müsste eigentlich gehen, wenn du

Code: Alles auswählen

$obj->Path = ‘deinArchiv’;
Setzt. Eventuell könntest du mit id_to_path() noch das Archivverzeichnis ermitteln.

Funktioniert glaube ich aber nicht in der 9.0.

Schöne Grüße
Nils

mediavantis
Senior Member
Beiträge: 238
Registriert: Do 16. Feb 2012, 12:51

Re: Objekte per Cronjob parken und in anderes Objektverzeichnis verschieben

Beitragvon mediavantis » Sa 8. Aug 2020, 12:08

Hallo Nils,

recht herzlichen Dank für Deine zügige Antwort.

Zwar hat Dein Vorschlag nicht funktioniert, aber Du hast mich auf den richtigen Weg gebracht :-)

So ist es schließlich richtig und funktioniert:

Code: Alles auswählen

<?php
//webEdition-Objekt mit einer bestimmten ID initialisieren
$obj = new we_objectFile();
$obj->initByID($ID_Del);
// webEdition-Seite parken
$obj->we_unpublish();
// Objekt in neues Verzeichnis verschieben
$obj->resetParentID();
$obj->ParentID = '541';
$obj->we_save();
?>

NilSole
Senior Member
Beiträge: 303
Registriert: Mi 27. Mär 2019, 15:28

Re: Objekte per Cronjob parken und in anderes Objektverzeichnis verschieben

Beitragvon NilSole » Sa 8. Aug 2020, 13:28

Stimmt natürlich Mit der ID, hatte schon länger nichts mit Objekten und PHP gemacht :D


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 35 Gäste