问题描述

我已经升级了一个被忽视的 Wordpress 安装,这是几个版本。

在安装和升级多个版本之后,我的所有图像现在都已经坏了,以前没有。每当我追溯文件名回到目录,它应该在我看到同样的事情 – 图像是存在的,但是 Wordpress 已经在 Wordpress 的每个引用附加了一个维度 x 维。

明白了吗:

我已经尝试了类似 WP 问题的所有解决方案,但是没有一个解决问题。

以下这个线程 https://wordpress.org/support/topic/after-upgrade-to-44-media-files-are-not-showing 我收到一个服务器 500 错误。

添加这个条件显示了 add_filter 在 functions.php 中不可用

if (function_exists('add_filter')){
        add_filter('wp_get_attachment_image_attributes', function($attr) {
        if (isset($attr['sizes'])) unset($attr['sizes']);
        if (isset($attr['srcset'])) unset($attr['srcset']);
        return $attr;
    }, PHP_INT_MAX);

    add_filter('wp_calculate_image_sizes', '__return_false', PHP_INT_MAX);

    add_filter('wp_calculate_image_srcset', '__return_false', PHP_INT_MAX);

    remove_filter('the_content', 'wp_make_content_images_responsive');

} else echo 'No function exists for this method!';

有人可以帮助我让 Wordpress 停止引用我的图像不正确的文件名?对此的任何帮助将会非常棒。 WordPress 还提供这些尺寸… 它们是针对视口大小还是这些主题具体?

还请注意,我已经关闭所有插件,并按照 WP 支持网站的建议恢复为默认的 Wordpress 主题。

谢谢你!

更新:由于目前没有任何建议工作,我将回到旧版本,然后引入响应图像功能,我将再次迁移。我会让大家知道我的进步。我倾向于认为这是在安装过程中删除图像造成的 (他们被扫描以确保没有病毒/恶意软件隐藏在旧的感染盒子的图像中)

最佳解决方案

我认为快速缩略图再生可能是治愈这个。尝试使用 Regenerate Thumbnails 或类似的插件,但在继续之前备份您的 uploads 目录。

为了禁用 WP 响应图像,请使用此过滤器。

/**
 * Disable WP 4.4 srcset
 */
add_filter( 'wp_calculate_image_srcset', '__return_empty_array' );

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。