Πώς διαγράφετε αυτόματα τις εικόνες προϊόντων στο WooCommerce, με το προϊόν

Παρόλο που το WooCommerce είναι μια πολύ ισχυρή πλατφόρμα αγορών και έχει αναπτύξει πολλά τα τελευταία χρόνια, εξακολουθούν να υπάρχουν πολλές επιλογές που λείπουν. Ένα από αυτά είναι η δυνατότητα να διαγράψετε αυτόματα τις εικόνες των προϊόντων στο Wocommerce όταν διαγράφεται ένα προϊόν.

Συγκεκριμένα, όταν διαγράφουμε ένα προϊόν WooCommerce, οι εικόνες που σχετίζονται με αυτό παραμένουν στο διακομιστή. Σε ένα ηλεκτρονικό κατάστημα με χιλιάδες προϊόντα, θα συγκεντρωθεί ένας σημαντικός αριθμός εικόνων. Εάν αυτές οι εικόνες δεν διαγράφονται με τα προϊόντα, τότε ένας σημαντικός αποθηκευτικός χώρος θα φροντίσει.

Όταν σε Woocommerce Προστίθεται ένα νέο προϊόν, τουλάχιστον η εικόνα παρουσίασης θα αντιγραφεί από τουλάχιστον τρία – Τέσσερις φορές, σε διαφορετικές διαστάσεις. Υπάρχουν μερικά themes από τον Woo που μπορεί να φτιάξει έως και 10 παιδιά της αρχικής εικόνας, για διαφορετικές διατάξεις.

Η καλύτερη λύση για τη βελτιστοποίηση του χώρου που καταλαμβάνει στον διακομιστή WebHosting από τις εικόνες του προϊόντος είναι ότι διαγράφονται με τα προϊόντα που αφαιρούνται από το ηλεκτρονικό κατάστημα.

Πώς διαγράφετε αυτόματα τις εικόνες προϊόντων στο WooCommerce κατά τη διαγραφή προϊόντων

Έχω ένα ηλεκτρονικό κατάστημα που έχει media library 23.567 εικόνες, τα περισσότερα από τα προϊόντα WooCommerce. Εάν διαγράψω τα προϊόντα που δεν είναι πλέον σε απόθεμα, οι εικόνες θα παραμείνουν στη βιβλιοθήκη πολυμέσων (στον διακομιστή).

Εικόνες προϊόντων στη βιβλιοθήκη πολυμέσων
Εικόνες προϊόντων στη βιβλιοθήκη πολυμέσων

Για να διαγράψετε αυτόματα τις εικόνες των προϊόντων στο WooCommerce, με τα προϊόντα, το μόνο που έχετε να κάνετε είναι να προσθέσετε στο αρχείο functions.php του ενεργού θέματος, τον ακόλουθο κωδικό:

*Συνιστάται ιδιαίτερα να δημιουργήσετε ένα αντίγραφο ασφαλείας του φακέλου πριν wp-content/uploads.

// Automatically Delete Woocommerce Images After Deleting a Product
add_action( 'before_delete_post', 'delete_product_images', 10, 1 );

function delete_product_images( $post_id )
{
    $product = wc_get_product( $post_id );

    if ( !$product ) {
        return;
    }

    $featured_image_id = $product->get_image_id();
    $image_galleries_id = $product->get_gallery_image_ids();

    if( !empty( $featured_image_id ) ) {
        wp_delete_post( $featured_image_id );
    }

    if( !empty( $image_galleries_id ) ) {
        foreach( $image_galleries_id as $single_image_id ) {
            wp_delete_post( $single_image_id );
        }
    }
}

Είναι καλό να γνωρίζετε ότι αφού αποθηκεύσετε τον παραπάνω κώδικα functions.php, Οι εικόνες προϊόντων θα διαγραφούν αυτόματα, με το προϊόν. Όταν τα προϊόντα διαγράφονται και από “Trash“.

Πώς διαγράφετε αυτόματα τις εικόνες προϊόντων στο WooCommerce, με το προϊόν
Διαγραφή εικόνας προϊόντος WooCommerce

Με τα προϊόντα που έχουν αφαιρεθεί από το ηλεκτρονικό κατάστημα διαγράφηκαν και 3336 εικόνες Συσχετισμένο. Ένας αρκετά σημαντικός αριθμός, ο οποίος θα είχε καταλάβει άχρηστο χώρο στον διακομιστή φιλοξενίας ιστοσελίδων.

Μην χρησιμοποιείτε αυτήν την επιλογή εάν χρησιμοποιείτε τις ίδιες εικόνες για πολλά προϊόντα. Αυτά θα διαγραφούν αυτόματα εάν εξαλειφθεί ένα προϊόν στο οποίο υπάρχουν.

Παθιασμένος με την τεχνολογία, γράφω με ευχαρίστηση στο stealthsetts.com ξεκινώντας από το 2006. Έχω μια πλούσια εμπειρία στα λειτουργικά συστήματα: MacOs, Windows και Linux, αλλά και σε γλώσσες προγραμματισμού και πλατφόρμες blogging (WordPress) και για ηλεκτρονικά καταστήματα (WooCommerce, Magento, Presashop).

Home Η πηγή σας σε μαθήματα, χρήσιμες συμβουλές και νέα. Πώς διαγράφετε αυτόματα τις εικόνες προϊόντων στο WooCommerce, με το προϊόν

3 Σκέψεις για το "Πώς διαγράφετε αυτόματα τις εικόνες προϊόντων στο WooCommerce, με το προϊόν”

  1. Ακριβώς αυτό που έψαχνα ή χρειαζόμουν 👍

    Το plugin που έχω χρησιμοποιήσει μέχρι στιγμής δεν λειτούργησε τόσο αξιόπιστα όσο αυτό το απόσπασμα

    Σας ευχαριστώ πολύ, αυτό μου εξοικονομεί πολλή δουλειά και πολύ χρόνο

    Απάντηση
Αφήστε ένα σχόλιο