Cum să dezactivezi WordPress să creeze miniaturi?

16 mar. 2013, 17:06:33
Vizualizări: 25.8K
Voturi: 19

Am căutat pe internet mult timp pentru a afla cum să dezactivez WordPress să creeze multiple miniaturi.

Am văzut în majoritatea tutorialelor să setez toate imaginile la 0 în secțiunea media. Am făcut asta, dar când mă uit în folderul uploads, încă se creează multiple imagini.

Nu pot găsi nicio soluție pentru asta. Motivul pentru care vreau acest lucru este să economisesc spațiu pe contul meu de hosting.

2
Comentarii

Te rog să dezactivezi orice pluginuri și să treci la tema implicită. Apoi ar trebui să poți seta toate dimensiunile imaginilor la 0 și să împiedici WP să genereze acele dimensiuni. Dacă această soluție nu funcționează, te rog să ne anunți. Dacă funcționează, înseamnă că un plugin sau tema interferează.

kaiser kaiser
17 mar. 2013 13:33:00

Poți folosi pluginul Stop Generating Unnecessary Thumbnails. WordPress nu generează miniaturi la încărcarea imaginilor sau la setarea imaginii reprezentative, iar imaginea nu face decuparea imaginilor cu încărcarea în folder unde se adaugă dimensiunea sau numărul de fișiere de hosting.

ahdan ahmad ahdan ahmad
27 iul. 2021 05:12:44
Toate răspunsurile la întrebare 10
0
14

Pentru a extinde răspunsul lui Max Yudin, ar trebui să folosești filtrul intermediate_image_sizes_advanced, și nu image_size_names_choose. Adaugă în functions.php

function add_image_insert_override($sizes){
    unset( $sizes['thumbnail']);
    unset( $sizes['medium']);
    unset( $sizes['large']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'add_image_insert_override' );

O altă opțiune mai ușoară care cred că funcționează este să mergi la Setări-->Media și să setezi fiecare casetă pentru lățime și înălțime la 0

16 mar. 2013 18:17:46
0
14

De asemenea, poți filtra intermediate_image_sizes cu un array gol.

 add_filter( 'intermediate_image_sizes', '__return_empty_array' );
16 mar. 2013 19:16:16
2

Accesați pagina Setări > Media din panoul de administrare WordPress. În secțiunea Dimensiuni imagine, schimbați toate valorile la 0.

Setări Media

Salvați modificările. Acest lucru va opri WordPress din generarea miniaturilor, dimensiunilor medii și mari pentru fiecare imagine încărcată.

De asemenea, veți observa că atunci când încercați să inserați o imagine, caseta derulantă "Dimensiune" va dispărea.

20 mar. 2013 05:13:06
Comentarii

Nu funcționează!

Ali Hashemi Ali Hashemi
11 sept. 2014 16:07:14

@Pazis Funcționa într-o versiune mai veche de WordPress, dar nu mai pare să funcționeze în 4.0

shea shea
12 sept. 2014 09:15:18
2

Dacă îmi amintesc corect, trebuie să unset toate dimensiunile implicite și să adaugi noua dimensiune Size acolo:

    <?php
function mxdCustomImageSizes($sizes) {
    unset( $sizes['thumbnail']);
    unset( $sizes['medium']);
    unset( $sizes['large']);
    unset( $sizes['full'] );

    $myimgsizes = array(
        'full-size' => __( 'Dimensiune completă' )
    );
    if( !empty($sizes) )
        return array_merge($sizes, $myimgsizes);
    else
        return $myimgsizes;
}
add_filter('intermediate_image_sizes_advanced', 'mxdCustomImageSizes');

Și apoi adaugi dimensiunea full-size care este 99999x99999 chiar dedesubt, care este o dimensiune aproape incredibilă, deci este dimensiune completă.

add_image_size( 'full-size', 99999, 99999, false );

Te rog să mă corectezi dacă ceva nu este în regulă

P. S. Vei avea nevoie de un plugin pentru a "salva ca" toate imaginile conform noilor setări. Pot recomanda pluginul Regenerate Thumbnails.

P. P. S. Când este singura opțiune, oricum va trebui să alegi una dintr-o singură :). Nu există o modalitate directă de a face o singură dimensiune selectată în fereastra Media nouă (3.5.1).

16 mar. 2013 17:28:43
Comentarii

Salut Max, cred că acesta este filtrul greșit, image_size_names_choose este pentru output-ul când selectezi imagini în caseta media.

Wyck Wyck
16 mar. 2013 18:15:36

Da, ai dreptate. Mulțumesc pentru informație, acum trebuie să revizuiesc câteva lucruri pe care le-am făcut deja.

Max Yudin Max Yudin
17 mar. 2013 21:03:03
0

Pentru cea mai recentă versiune de WordPress cu pluginul WooCommerce activat, folosește acest cod:

function add_image_insert_override($sizes){
    unset($sizes['thumbnail']);
    unset($sizes['medium']);
    unset($sizes['medium_large']);
    unset($sizes['large']);
    unset($sizes['1536x1536']);
    unset($sizes['2048x2048']);        
    unset($sizes['blog-isotope']);
    unset($sizes['product_small_thumbnail']);
    unset($sizes['shop_catalog']);
    unset($sizes['shop_single']);
    unset($sizes['shop_single_small_thumbnail']);
    unset($sizes['shop_thumbnail']);
    unset($sizes['woocommerce_thumbnail']);
    unset($sizes['woocommerce_single']);
    unset($sizes['woocommerce_gallery_thumbnail']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'add_image_insert_override' );
add_filter('max_srcset_image_width', create_function('', 'return 1;'));

Dar ar fi bine să lași o miniatură mică (thumbnail) și o imagine de dimensiune medie (medium).

P.S. Poți vedea toate dimensiunile înregistrate instalând pluginul Regenerate Thumbnails. Și nu uita de add_image_size() generat în tema ta.

6 nov. 2018 10:54:53
1

Dacă dorești să elimini toate dimensiunile, pur și simplu returnează un array gol.

function remove_thumbnail_image_sizes($sizes) {
    return [];
}
add_filter('intermediate_image_sizes_advanced','remove_thumbnail_image_sizes');
29 nov. 2021 08:47:25
Comentarii

Da, exact asta face răspunsul lui Chris O, dar pe hook-ul not-advanced și folosind funcția încorporată __return_empty_array.

Rup Rup
30 nov. 2021 12:53:01
1
function remove_default_image_sizes( $sizes) {
    unset($sizes['thumbnail']); // Elimină dimensiunea implicită 'thumbnail'
    unset($sizes['medium']);    // Elimină dimensiunea implicită 'medium'
    unset($sizes['large']);     // Elimină dimensiunea implicită 'large'
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced','remove_default_image_sizes');

Nu uita să return $sizes; ca în exemplu.

Apoi adaugă dimensiuni noi pentru imagini astfel...

if(function_exists('add_image_size')){
    add_image_size('my_100x100_crop',100,100,true); // Mod crop (decupare)
    add_image_size('my_100x100_resize',100,100);    // Mod resize (redimensionare)
}

Testat!

25 sept. 2013 10:59:25
Comentarii

Aceasta elimină dimensiunile din "Inserare în postare", dar WordPress continuă să genereze thumbnail-urile!

Ali Hashemi Ali Hashemi
11 sept. 2014 16:05:30
0

Am întâmpinat probleme cu utilizarea filtrului intermediate_image_sizes_advanced pe câteva site-uri recent. Se pare că în WordPress 5.3 intermediate_image_sizes este mai fiabil.

Aș recomanda eliminarea dimensiunilor nedorite astfel:

add_filter('intermediate_image_sizes', 'remove_default_img_sizes', 10, 1);

function remove_default_img_sizes($sizes)
{
    $targets = ['medium', 'medium_large', 'thumbnail'];

    foreach ($sizes as $size_index=>$size) {
        if (in_array($size, $targets)) {
            unset($sizes[$size_index]);
        }
    }

    return $sizes;
}
18 iun. 2020 22:49:40
2

Deoarece WordPress are adesea WooCommerce instalat, această funcție dezactivează regenerarea imaginilor atunci când este introdusă în functions.php (de exemplu, într-un child theme sau prin intermediul unui plugin de fragmente de cod, deoarece altfel ar putea fi suprascrisă la actualizări).

add_filter( 'woocommerce_background_image_regeneration', '__return_false' );
10 nov. 2021 16:06:44
Comentarii

Dezactivează asta cu adevărat regenerarea imaginilor sau înseamnă doar să nu o faci în fundal, dar se va întâmpla totuși în prim-plan?

Rup Rup
10 nov. 2021 23:57:08

Este o întrebare excelentă, voi verifica ce apare efectiv în directorul(-ele) media de pe server și voi încerca să îmi actualizez răspunsul în caz contrar.

K. Kilian Lindberg K. Kilian Lindberg
11 nov. 2021 10:28:17
0

În cazul meu, nu a fost suficient să dezactivez generarea de miniaturi, nici din administrare, nici din cod.

Apoi am găsit un plugin excelent.

ThumbPress – Opriți generarea de miniaturi inutile (de Codexpert, Inc)

12 mar. 2024 11:26:55