从自动缩放图像Wordpress中删除“-scaled”

问题描述 投票:0回答:2

WordPress 自动缩放尺寸超过 2000 像素的图像。 我只是想从文件名和图像网址末尾删除 -scaled 。我知道 big_image_size_threshold 保存图像的原始副本。我不关心原始尺寸的图像。我只想删除 -scaled。

我尝试使用该函数重命名文件,但没有成功。我认为缩放过程正在运行

function wpa59168_rename_attachment( $post_ID ) {

    $post = get_post( $post_ID );
    $file = get_attached_file( $post_ID );
    $path = pathinfo( $file );

    $new_name=str_replace('-scaled', '', $path['filename']);
    $new_file = $path['dirname'] . '/' . $new_name . '.' . $path['extension'];
    rename( $file, $new_file );    
    update_attached_file( $post_ID, $new_file );

}
add_action( 'add_attachment', 'wpa59168_rename_attachment' );
php wordpress wordpress-theming
2个回答
1
投票

我也不想要缩放图像,我添加了这段代码:

add_filter( 'big_image_size_threshold', function ( $treshold, $imagesize, $file, $attachment_id ) {
        return false;
    }, 10, 4 );

这实际上杀死了我网站上的缩放图像。如果这就是您正在寻找的。具有原始尺寸的原始图像仍然存在,文件名中没有“-scaled”部分


0
投票

如果删除“-scaled”文件名部分,您将获得原始文件名,但这将导致 rename( $file, $new_file ) 调用失败,因为同名文件已存在。

在尝试重命名缩放版本之前删除原始文件。

C.

© www.soinside.com 2019 - 2024. All rights reserved.