fotos automtisch löschen die älter sind als....

  • guten morgen, bitte um Hilfe,
    möchte fotos auf die webseite raufladen (ipkamera) die sollten sich atomatisch löschen die älter sind als 3-4 tage, ist das irgendwie möglich ? Vielen Dank.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich habe das bei einem Projekt über Cron-Jobs realisiert. Dort habe ich es so gelöst:

    1. eine Datein autodelete.sh angelegt mit dem Inhalt

    Bash
    #!/bin/bash
    
    
    find /*variableVerzeichnisstruktur*/httpdocs/wp-content/uploads/* -mtime +4 -exec rm '{}' \;
    mysql -h localhost --user=*dbuser* --password=*dbpassword* --database=*dbname*  --force < /*variableVerzeichnisstruktur*/httpdocs/autodelete.sql;


    Die Inhalte mit *text* müssen von dir ersetzt werden. Und ggf. stimmt httpdocs bei dir nicht. Bei vielen steht dort htdocs oder www oder public o. ä.

    2. eine Datei autodelete.sql mit dem Inhalt

    SQL
    DELETE FROM  `wp_posts` WHERE  `post_type` LIKE  'post' AND  `post_date` NOT BETWEEN DATE_ADD( NOW( ) , INTERVAL -4 DAY ) AND NOW( ) OR  `post_type` LIKE  'attachment' AND  `post_date` NOT BETWEEN DATE_ADD( NOW( ) , INTERVAL -4 DAY ) AND NOW( )
    
    
    \q


    Der Tablepräfix muss ggf. von dir angepasst werden.

    3. Einen Cronjob eingerichtet, der die autodelete.sh jeden Tag um 3 Uhr Nachts aufruft.

    Das Geheimnis des Könnens liegt im Wollen!
    [size=12]Bitte keine Hilfegesuche per PN (auch keine "privaten" Links). Das ist ein öffentliches Forum.[/SIZE]

  • Es gibt zig Möglichkeiten, Du könntest z.B. auch PHP glob() i.v.m. filemtime() und unlink() verwenden, regelmässig getriggert über WordPress wp_cron() oder ganz ohne WordPress direkt im Rahmen des Upload-Scripts des jeweils neuen Bildes. Kommt ganz auf die Rahmenbedingungen an, die wir aber aufgrund der ziemlich ungenauen Beschreibung nicht kennen (können)...

    5 Mal editiert, zuletzt von b3317133 (8. Mai 2018 um 01:30)

  • die fotos einer überwachungscam wurden immer auf den pc gespeichert filezilla als ftp server, glöscht wurden die fotos mit dem programm, delage32, nach bestimmter zeit, nun solllten die fotos auf einen externen ftp server gespeichert werden, was ja auch funktioniert, nur es sammeln sich mit der zeit viele fotos, die sollten automatsich gelöscht werden, danke.

  • Wie beschrieben, es gibt zig Möglichkeiten in PHP v.a. ausserhalb von WordPress, Deiner Kreativität sind keine Grenzen gesetzt.

    Wie werden die Fotos denn in WordPress eingebunden?

  • Wenn nur Fotos gelöscht werden sollen, dann reicht 1. aus meinem Post, sogar ohne die mysql Zeile. Dort die Pfade anpassen und per Cron aufrufen.

    Das ganze scheint mir aber, nach jetzigem Stand, kein WP Problem zu sein. PHP Scripte gibt es dazu auch.

    Das Geheimnis des Könnens liegt im Wollen!
    [size=12]Bitte keine Hilfegesuche per PN (auch keine "privaten" Links). Das ist ein öffentliches Forum.[/SIZE]

  • ein php script würde schon reichen. danke,

    Erstelle doch einfach eines anhand der oben verlinkten Funktionen, auf den entspr. Seiten sind Beispiele.

    Aufrufen kannst Du es ggf. auch manuell alle paar Wochen, wenn das mit Cron zu komplex sein sollte.

    Wenn die Fotos nicht auf dem Website eingebunden werden, stellt sich generell die Frage, warum man sie überhaupt dorthin hochlädt. Mit WordPress hat das auf jeden Fall nichts zu tun.

  • so habe eine lösung gefunden für alle die das auch so möchten, eine löschen.php datei erstellen in das verzeichnis kopieren wo auch der fotos ordner liegt mit den inhalt: ( in meinem fall werden die fotos gelöscht die älter sind als 7 tage) dann einfach die löschen.php aufrufen, oder einen cronjob einrichten!!

    <?php
    /*
    * Created on 30.01.2010 by *****
    */
    $dir =
    $_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PH
    P_SELF']).'/[COLOR=#ff4d4d]hier muss der ordnername hin der die fotos hat[/COLOR]/';
    $folder = dir($dir);
    while ($dateiname = $folder->read()) {
    if (filetype($dir.$dateiname) != "dir") {
    if (strtotime("-7 days") >
    @filemtime($dir.$dateiname)) {
    if (@unlink($dir.$dateiname) != false)
    ;
    }
    }
    }
    echo "Fertig";
    $folder->close();
    exit;
    ?>

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!