Синхронизация медиа

Описание

Вы можете сканировать содержимое директории "uploads" и видеть какие файлы действительно там находятся. Затем вы можете отметить необходимые для импорта в базу данных, таким образом сделав их доступными в Библиотеке файлов административной панели.

Вы также можете использовать FTP для загрузки файлов в директорию "uploads" и использовать данный плагин, для их вывода в Библиотеку файлов административной панели.

Почему создан этот плагин

Однажды я скопировал WordPress-сайт с одного сервера на другой и обнаружил, что Библиотека файлов опустела, не смотря на то, что все файлы остались лежать в директории "uploads" и в базе данных также было всё по прежнему. Я воспользовался каким-то плагином, который вынуждал вручную вводить каждую директорию для импорта файлов порциями. Но мне нужно было просто импортировать всё что там было за раз, так я создал этот плагин.

Ignored files

  • index.php,
  • various hidden files (.DS_Store, .htaccess),
  • WP generated thumbnails (files ending with for example -100×100.jpg),
  • WP generated scaled images (files ending with -scaled).

This is now configurable with a custom hook function and it can totally overwrite these rules or add additional ones.

Скриншоты

  • Начальная страница
  • Пример выбора файлов для импорта
  • Импорт в Библиотеку файлов выполняется
  • Импорт завершён

Установка

  1. Загрузите директорию media-sync в /wp-content/plugins/
  2. Активируйте плагин в разделе ‘Плагины’ административной панели WordPress

Часто задаваемые вопросы

Q: Stuck at importing / spins endlessly
A: Please try to increase max_execution_time in php.ini on server (as described here). Or if you have too many files, try going to Settings -> Media Sync and change «Scan directory» to some inner folder.

Q: Files not showing up in Media Library
A: Please make sure «Dry Run» option is NOT checked. This is a safety mechanism to make sure you know what you’re doing, so be careful, try it first with just one file.

Q: Doesn’t work
A: Please first try to turn on debugging by adding this: define('WP_DEBUG', true); to your wp-config.php and check Network tab in Chrome DevTools to see what is going on in the background. Then report actual errors since it’s hard to help without knowing the error which is causing the problem.

Отзывы

08.07.2020
I have tried this several times as i could not believe it is so bad after all the 5 star reviews. My lib was unsynced by a restore that was corrupted slightly. all files are physically in the directories but the lib only shows empty placeholders for some. so perfect scenario for this plugin BUT after applying it (it correctly identified the missing pics) SEVERAL OTHER PICS WHERE IN THE LIB TWICE and the missing ones where still all missing. had to restore the db to get my old settings back. what a waste of time!
06.07.2020
I recently updated the theme and backend of a site with a large number of images. It would have been a waste of time to manually add all images in the new theme. So, natually, I uploaded all images via SFTP. Problem? None of the images were added to the WordPress database. Yikes 🙁 After paniking for a few minutes, quick researched turned up Media Sync! Media Sync imported all images in to the new database and I was up and running. Thank you, Media Sync! Bryan
Посмотреть все 28 отзывов

Участники и разработчики

«Синхронизация медиа» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

«Синхронизация медиа» переведён на 1 язык. Благодарим переводчиков за их работу.

Перевести «Синхронизация медиа» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений

1.1.8

  • Fix handling big («-scaled.jpg») images introduced in WordPress 5.3. These files will now be skipped and won’t be imported multiple times.
  • Add handy «Re-scan» button.

1.1.7

  • Fix issues when importing files containing special characters

1.1.6

  • Slight improvements with error handling in JavaScript

1.1.5

  • Always convert backslashes («\») to forward slashes («/») to fix various issues when using Windows Server.

1.1.4

  • Important backslash («\») vs forward slash («/») fix for use on Windows Server.

1.1.3

  • New option to set «Scan directory» in settings which will allow checking only certain sub directory.
  • New hook function media_sync_filter_is_scan_object_ignored which can be used to overwrite which files are ignored by default or to just skip additional files.

1.1.2

  • Fix Smart File Time on Windows server

1.1.1

  • Reduce the maximum number of items to import per batch from 20 to 10.
    So batch sizes are now: 1 (importing 1 to 10 items); 5 (importing 11 to 100 items) or 10 (importing more than 100 items)

1.1.0

  • [IMPORTANT] Date of imported Media Library items now defaults to the current date.
    But there are options to choose before importing and also a possibility to overwrite that using the custom hook.
  • New options page with the option to disable and hide «Dry Run».
  • Fix Media Library filter that was showing all items when the filter didn’t find any result.

1.0.4

  • Reduce the number of items to import per batch

1.0.3

  • Support multisite network by changing required access capability from update_plugins to import

1.0.2

  • Another fix for get_current_screen error

1.0.1

  • Fix get_current_screen error

1.0.0

  • New option to clean up Media Library from items that are missing actual files (using custom Media Library filter)
  • New filter when scanning uploads directory which can help to show only files missing from Media Library

0.1.6

  • Fix PHP short array syntax
  • Update required PHP version to 5.4

0.1.5

  • Date of imported Media Library item is now set based on file modification timestamp

0.1.4

  • Add plugin localization
  • Add Serbian translation

0.1.3

  • Various improvements and fixes

0.1.2

  • Исправлена сортировка директорий и файлов
  • Незначительные изменения в формулировке текста и чистка кода

0.1.1

  • Исправлена ошибка при активации

0.1.0

  • Исходный функционал плагина