Автоматическое удаление ненужных метаданных вложений после удаления дополнительных размеров изображений WordPress - PullRequest
0 голосов
/ 24 мая 2018

Некоторые версии WordPress 4.8x молча решили, что мне нужны дополнительные изображения для каждого, который я уже загрузил в его медиатеку.Хотя я абсолютно не такой.

Я предотвратил любое дальнейшее создание дополнительных изображений в медиатеке WP, добавив следующий код в мою functions.php:

// Prevent WordPress from generating additional image sizes
function shapeSpace_customize_image_sizes($sizes) {
    unset($sizes['thumbnail']);
    unset($sizes['medium']);
    unset($sizes['medium_large']);
    unset($sizes['large']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_customize_image_sizes');
add_filter('max_srcset_image_width', create_function('', 'return 1;'));

По крайней мере, я надеюсьЯ предотвратил эту ненужную для меня функцию.Есть ли у меня?

Теперь мне нужно удалить любое ненужное изображение, что также не является проблемой.

Проблема заключается в удалении бесполезных метаданных из базы данных MySQL WP.У меня около 700 изображений, поэтому я предпочитаю не делать это вручную.

Какой запрос MySQL поможет мне сделать это парой кликов?

Я считаю, что мне нужно выполнить пакетное редактирование.столбец _wp_attachment_metadata таблицы wp_postmeta , удаляющий любую часть строки, которая содержит -100x100.jpg (или -700x700.jpg в моей конкретной таблице или любой другой размер).

Вот содержимое образца ячейки

a:5:
    {s:5:"width";i:700;s:6:"height";i:700;s:4:"file";s:65:"IMAGE1.jpg";s:5:"sizes";a:2:
        {s:29:"woocommerce_gallery_thumbnail";a:4:
            {s:4:"file";s:73:"IMAGE1-100x100.jpg";s:5:"width";i:100;s:6:"height";i:100;s:9:"mime-type";s:10:"image/jpeg";}
        s:18:"woocommerce_single";a:4:
            {s:4:"file";s:73:"IMAGE1-700x700.jpg";s:5:"width";i:700;s:6:"height";i:700;s:9:"mime-type";s:10:"image/jpeg";}
        }
        s:10:"image_meta";a:12:{s:8:"aperture";s:1:"0";s:6:"credit";s:0:"";s:6:"camera";s:0:"";s:7:"caption";s:0:"";s:17:"created_timestamp";s:1:"0";s:9:"copyright";s:0:"";s:12:"focal_length";s:1:"0";s:3:"iso";s:1:"0";s:13:"shutter_speed";s:1:"0";s:5:"title";s:0:"";s:11:"orientation";s:1:"0";s:8:"keywords";a:0:{}
        }
    }

Правильно ли я думаю, что мне следует освободить каждую ячейку в столбце _wp_attachment_metadata из

    {s:29:"woocommerce_gallery_thumbnail";a:4:
        {s:4:"file";s:73:"IMAGE1-100x100.jpg";s:5:"width";i:100;s:6:"height";i:100;s:9:"mime-type";s:10:"image/jpeg";}
    s:18:"woocommerce_single";a:4:
        {s:4:"file";s:73:"IMAGE1-700x700.jpg";s:5:"width";i:700;s:6:"height";i:700;s:9:"mime-type";s:10:"image/jpeg";}
    }

МожетЯ делаю это, указывая в запросе только -100x100.jpg или -700x700.jpg?

Наконец, как должен выглядеть запрос?


PS: Я вижу, что WooCommerce является единственнымтот, кому нужны эти дополнительные изображения.

PPS: Слишком большой вопрос.Я прошу прощения за это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...