Intereting Posts
Остановить 'alt' от добавления в the_post_thumbnail Как автоматизировать adduser (на linux) при добавлении нового сайта пользователя в многопользовательском режиме в jquery читайте многомерный массив через wp_localize_script () Получать условия для нескольких сообщений сразу? Как отображать файлы изображений в виде ссылок? Как сделать структуру меню с сохранением структуры архива Пользовательский заказ для персонализированного типа сообщения импортирование стороннего json-канала как пользовательский тип сообщения Ошибка при перемещении wordpress blog Как автоматизировать плагин wordpress активировать и деактивировать по php-логике? Изменение имен классов, динамически добавленных в html-элементы wordpress Показать сообщение по заказу меню Плагин создает страницы и использует шаблоны Вставьте заголовок интервала внутри заголовка виджета, чтобы дать другой цвет второму слову Как отключить предупреждение «Резервное копирование этого сообщения в вашем браузере отличается от версии ниже»?

Как удалить все UNUSED-изображения из каталога загрузок?

Я пытаюсь очистить папки для загрузки, поскольку теперь они начинают занимать слишком много места на моем сервере.

Я попытался использовать плагины для достижения этой цели, такие как DNUI и Cleanup Images, но эти плагины либо неработоспособны, либо в случае DNUI (который недавно был обновлен и работает) не достигли точных результатов, которые я получаю после. Это связано с тем, что мой сайт использует Woocommerce и тему, которая использует изображения в других местах, а не только сообщения или страницы, такие как верхние и нижние колонтитулы и галереи. Кажется, что WC использует собственный встроенный плагин Lightbox под названием Pretty Photo, из которого вызывается образы, детализированные как «неиспользуемые» DNUI.

Я знаю, что это вопрос, но мне интересно, может ли кто-нибудь указать мне в правильном направлении? Я не разработчик, поэтому, вероятно, не стоит даже публиковать здесь, но я могу работать с течением времени и решительностью. Я видел сценарии на этом сайте, которые достигают тех же результатов, что и плагин DNUI, но ничего, что учитывает использование других изображений (если это возможно?). Любая помощь приветствуется.

Solutions Collecting From Web of "Как удалить все UNUSED-изображения из каталога загрузок?"

Удаление изображений с помощью плагина:

Вы можете использовать этот плагин, он будет искать вашу базу данных и посмотреть, будет ли изображение вставлено в любую запись (в содержании, как изображение в любом настраиваемом поле, где угодно …) или в качестве фона …

Если изображение нигде не используется, оно даст вам возможность удалить его. Вы получите список всех изображений на вашем сайте, которые больше не используются, поэтому вы можете их безопасно удалить.

https://wordpress.org/plugins/dnui-delete-not-used-image-wordpress/

и это все еще работает, даже устарело

https://wordpress.org/plugins/wordpress-uploaded-files-cleaner/


Удаление изображений вручную:

Вы также можете выполнять поиск в медиатеке для изображений, которые не привязаны к сообщениям и страницам.

Перейдите в медиа-библиотеку и нажмите «unattached», на которой будут отображаться все изображения, которые могут отображаться на других частях вашего сайта или не используются.

Задачи Cron / Scheduled и обход БД – ваш друг

Это должен быть плагин, вы можете назначить ему интервал wp_cron, даже немного отличающийся от предложенного выше, но с добавлением проверки любого поля post_content (вам нужно будет идентифицировать их, в зависимости от вашей среды WP) для URI / URL изображения. Это потенциально может быть чрезвычайно трудоемким / налоговым с точки зрения процессов системы – реалистично этот процесс нужно будет запускать только один раз в день или неделю, если нет других юридических / деловых причин, чтобы работать чаще.

конфигурация источника с ведущим-подчиненным БД позволяет этому процессу быть значительно меньше производительности, но это выходит за рамки этого вопроса, который я считаю.

Я попробовал плагин Image Cleanup, и это лучший, но все же хорошо сделать резервную копию.

Вам нужно будет сканировать папку wp-content/uploads для загруженных файлов, а затем вашу базу данных для ссылок на эти файлы и, наконец, сопоставить их вместе. То, что нельзя сопоставить, должно быть безопасным для удаления.

Сканирование базы данных – сложная часть. Большинство ссылок на файлы хранятся в медиабиблиотеке, к которой вы можете получить доступ, используя стандартные функции / API WordPress. Но что происходит с файлами, которые удаляются из медиа-библиотеки, но по-прежнему ссылаются на сообщения? Или файлы, к которым подключаются другие плагины по-разному?

Я провел значительное количество тестов и из того, что я собрал, все ссылки на файлы либо хранятся в текстовом формате (т.е. только ячейка таблицы, равная пути файла или URL-адреса), формат HTML (т. Е. Содержание сообщения), как сериализованные данные, или, наконец, как объекты JSON. Вам придется сканировать всю базу данных и попытаться угадать, какой формат используется в каждой ячейке. Конечно, могут существовать и другие экзотические способы использования некоторыми плагинами для хранения ссылок на их файлы, но их можно обрабатывать только в каждом конкретном случае.

Следовательно, я написал плагин, который автоматически делает все это, так как он мне нужен для некоторых сайтов наших клиентов и назвал его Theia Upload Cleaner . Это хорошо сработало для меня, но, конечно, вы всегда должны делать резервную копию, прежде чем пытаться что-то вроде этого.