如何禁用WordPress创建缩略图?


17

我一直在网上寻找很长一段时间,以了解如何禁止WordPress创建多个缩略图。

我在大多数教程中都看到在媒体部分将所有图像设置为0。我已经做到了,但是转到我的上载文件夹,它仍然会创建多个图像。

我找不到任何解决方案。我想要这样做的原因是为了节省主机帐户上的空间。


请关闭所有插件,然后切换到默认主题。然后,您应该能够将所有图像尺寸设置为,0并防止WP生成这些尺寸。如果这不起作用,请报告。如果可行,则存在一些插件或主题干扰。
kaiser

Answers:


14

要建立Max Yudin的答案,您应该使用intermediate_image_sizes_advanced过滤器,而不是image_size_names_choose。添加到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' );

我认为可行的另一个更简单的选择是转到“设置”->“媒体”,然后将每个框的宽度和高度设置为 0


9

您还可以使用一个空数组来过滤middle_image_sizes。

 add_filter( 'intermediate_image_sizes', '__return_empty_array' );

3

如果我没记错的话,您必须保留unset所有默认值,然后在其中添加新的默认值Size

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

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

然后添加full-size大小99999x99999正好在其以下的尺寸,几乎是不可思议因此添加完整尺寸。

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

如果出现问题,请纠正我

PS:您需要一个插件来根据新设置将所有图像“另存为”。我可以推荐“重新生成缩略图”插件。

PPS无论是哪种方式,您都必须选择一种:)。在新的(3.5.1)媒体窗口中无法直接选择一种尺寸。


嗨,麦克斯,我认为这是错误的过滤器,image_size_names_choose用于在媒体框中选择图像时的输出。
Wyck

你是对的。谢谢您提供信息,现在我必须修改一些已经完成的内容。
Max Yudin 2013年

2

访问WordPress信息中心的“设置”>“媒体”页面。在“ 图像尺寸”部分下,将所有值更改为0。

媒体定势

保存更改。这将阻止WordPress为您上传的每张图像生成缩略图,中型和大尺寸图像。

您还将注意到,当您插入图像时,“大小”下拉框丢失了。


1
这行不通!
Ali Hashemi 2014年

@Pazis它在较旧版本的WordPress中有效,但在4.0中似乎不起作用
shea

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

不要忘了return $sizes;喜欢这个。

然后添加新的图像尺寸,例如...

if(function_exists('add_image_size')){
    add_image_size('my_100x100_crop',100,100,true); // Crop mode
    add_image_size('my_100x100_resize',100,100); // Resize mode
}

经过测试!


1
这样可以从“插入后发布”中删除尺寸,但Wordpress仍会生成缩略图!
Ali Hashemi 2014年

0

对于具有WooCommerce激活插件的最新WordPress,请使用以下代码:

function add_image_insert_override($sizes){
    unset($sizes['thumbnail']);
    unset($sizes['medium']);
    unset($sizes['medium_large']);
    unset($sizes['large']);        
    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;'));

但是,如果您留下一张小缩略图(thumbnail)和一张中型图像(medium),那将是很好的。

PS您可以通过安装“ 重新生成缩略图”插件来查看所有已注册的大小。并且不要忘记add_image_size()在主题方面进行生成。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.