Ревизия wordpress, как убрать дубли медиафайлов!

Оптимизация wordpress удаляем дубли медиафайлов

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

Есть такая у вордпресс особенность, сохранять копии редактируемых статей и создавать клоны картинок, загружаемых в эти статьи. Если первую проблему можно легко решить с помощью плагина, Optimize Database after Deleting Revisions, который достаточно хорошо справляется с поставленной задачей, то с избавлением дублей медиафайлов, все гораздо сложнее.

Мало кто знает, особенно вначале своей блогерской карьеры, о том, что когда вы загружаете в библиотеку картинку для того или иного поста, WordPress создает несколько дублей этой картинки с разными размерами – это миниатюры, средний и большой размеры медиафайла, помимо оригинального. Таким образом, за несколько лет может накопиться очень большой объем неиспользуемых файлов, которые будут бесполезно занимать значительную часть дискового пространства вашего сервера, создавая дополнительную нагрузку.

Чистка сайта от ненужных сохраненок статей и дублей картинок, такая же необходимая процедура как например организация безопасности вашего рессурса.

Весь геморрой заключается в том, что на момент написания этого поста, нет эффективного инструмента, позволяющего автоматически убрать дубли медиафайлов в wordpress. В настоящий момент есть несколько плагинов, я знаю три — это additional-image-sizes-zui, DNUI и Cleanup Images.

Расскажу вкратце о каждом из них.

Аdditional-image-sizes-zui – не обновлялся два года. Принцип работы всех этих плагинов основан на сканировании всех изображений, которые есть на сайте и выявлении тех, которые не используются, так вот данный плагин с этой задачей не справился вообще, он просто не нашел такие картинки на моем сайте. Видать более поздние версии WordPress ему «не по зубам».

DNUI и Cleanup Images – это два идентичных плагина, последний чуть помоложе и разработан на основе первого, только немного модернизирован. DNUI также, как и Аdditional не обновлялся два года, поэтому я даже не стал его тестировать, предпочтение отдал Cleanup Images, т.к. на тот момент этот плагин не обновлялся всего семь месяцев, в отличие от двух предыдущих.

Чтобы избежать фатальных последствий, я сделал копию папки «uploads», в которой хранятся все загруженные медиафайлы блога, на рабочий стол компьютера. Эта папка находится на сервере по следующему адресу /domains/ваш сайт/wp-content/uploads, внутри нее находятся папки, разложенные по годам и по месяцам.

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

как убрать дубли wordpress

Неиспользуемые медиафайлы бесполезно занимают драгоценные мегабайты дискового пространства и должны безжалостно удаляться, что я собственно и сделал, нажав кнопку «DeleteSelected».

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

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

параметры изображения

После того, как был перелапачен весь контент на сайте и все исправлено, настал момент второй попытки, результаты которой меня снова разочаровали. Плагин все-равно снес несколько картинок из 50 штук (в настройках задал – сканировать по 50 картинок, если бы задал больше, соответственно и потерь было бы больше), кроме того, начал проверять все медиафайлы вручную и убедился, что много неиспользуемых картинок плагин просто пропустил. Дальнейшие эксперименты с Cleanup Images только подтвердили, что есть у него такой косяк, удалять то, что не следует и пропускать то, что подлежит удалению.

В итоге я удалил все ненужные дубли медиафайлов старым дедовским способом, вручную.

Как убрать в WordPress дубли медиафайлов вручную?

Удаление ненужных дублей в wordpress, ручками – процесс нудный и трудоемкий, но делать это нужно, ведь лишний вес – дополнительная нагрузка.  За несколько лет объем ненужного хлама может вырасти до нескольких десятков мегабайт.

В основной папке «uploads» находятся папки разбитые по годам, а в них папки по месяцам, ревизию начинаем делать по порядку. Подключаемся по FTPили непосредственно с хостинга, кому как удобно и копируем папку с выбранным годом (например 2013) на рабочий стол компьютера, открываем ее и выбираем папку с месяцем.

В этой папке будут медиафайлы, которые вы загружали в статьи, опубликованные в этот месяц. Выбираете в настройках папки «крупные значки», тогда вы будете видеть саму картинку и ее размер. Вы увидите кучу дублей на один медиафайл, тот, что будет без размера – это оригинал.

удаление дублей в wordpress

 

Теперь открываете пост, с выбранной картинкой в режиме редактирования и смотрите, какой размер загружен в статью, если оригинальный, то смело удаляете «средний» и «крупный», эти размеры заданы в настройках в админке, путь:  настройки / медиафайлы

У меня заданы следующие настройки (скриншот внизу). Такая конфигурация позволяет не клонировать средние и крупные дубли, но зато клонирует миниатюры в следующем порядке: 63х63; 73х73; 150х150; 200х200 и 250х250. Если поставить галку в чек-боксе «обрезать миниатюру точно по размерам», то все равно будут создаваться мелкие  миниатюры от 50 пикселей, т.к. эти размеры используются в библиотеке медиафайлов в качестве превьюшек.

настройка медиафайлов в вордпресс

 

Если удалить мелкие картинки размером от 50 до 80 px, то в библиотеке вместо превью будут пустые квадраты.

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

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

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

Не стоит редактировать сразу все 12 папок за выбранный год или тем более всю папку «uploads» сразу, лучше понемногу, по месяцам. Отредактировали папку за выбранный месяц, загрузили ее обратно в нужную директорию, затем перешли на сайт и проверили. Проверять лучше в режиме инкогнито, чтобы не чистить каждый раз кэш браузера.

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

Теперь, когда работа проделана, я стараюсь не запускать процесс и после написания нового поста, захожу в wordpress и сразу удаляю неиспользуемые дубли, так проще.

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

8 Responses to Ревизия wordpress, как убрать дубли медиафайлов!

  1. Спасибо. С дублями все понятно! Не проблема, нули в настройкх медиафайлов выставил и все. А вот как быть когда вордпресс создает дубли attachment? Как сделать чтобы они не создавались?

    • Как сделать так, чтобы не создавались дубли attachment, ответ на этот вопрос не зают наверное даже разработчики вордпресс, нет такого лекарства, остается только одно, находить и удалять, а также использовать все имеющиеся способы борьбы с этим злом, типа Robots.txt, тег «canonical» и т.д.

  2. Олег:

    Чтобы не удалять после пудликации каждого поста новые дубли фоток, просто в настройках медиафайлов на вордпрессе поставьте везде нули. И дубли не будут создаваться.

    • Олег:

      А плагин есть получше — DNUL Deletenotused image

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

    • Да, я знаю, но у меня к каждому посту идет миниатюра, если в настройках задать ноли, то миниатюры не будут выводиться…

  3. Сергей:

    Вручную вычистил все медиафайлы. Выставил в настройках медиафайлов WordPress нули и успокоился. Полез через три дня и опять появились дубли.Так, что не все здесь однозначно.

    • Дубли будут создаваться при любых настройках, например дубли маленьких миниатюр, которые используются в галереях медиа-файлов, также, если вы используете миниатюры к записям, тоже будут создаваться дубли, или при изменении размеров загружаемых картинок в редакторе…

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *