Media Sync


This plugin allows you to examine all files within the uploads directory to determine which ones are present in the Media Library and which ones are just sitting there unused. You can then choose the files you want to import into the database, thereby including them in the Media Library.

Moreover, you can utilize FTP to upload files directly to the uploads directory and subsequently add these files to the Media Library avoiding any file size limitations.

Avisos legales

  1. «1 file first»
    Please try to import only one file first – to see if it works as you expected.

  2. «All at once»
    This plugin is designed for scanning, selecting, and importing all files at once. However, based on your server’s configuration, memory, and timeout challenges may arise with extensive file quantities. To mitigate this, a newly revamped pro version employs incremental directory scans to effectively tackle these issues.

  3. «Your setup is unique»
    Please be aware that every WordPress installation is unique, and there may be instances where this plugin does not function as expected. Should this occur, we recommend enabling the debugging feature in the plugin’s settings to identify the issue. After investigating, kindly provide a detailed description of your findings in the Support section (or here if you’re using pro version). The more comprehensive the details, the higher the likelihood of resolving the problem effectively.

Archivos ignorados

  • varios archivos ocultos (.DS_Store, .htaccess),
  • Miniaturas generadas por WP (archivos que terminan, por ejemplo, en -100×100.jpg),
  • Imágenes escaladas generadas por WP (archivos que terminan en -scaled),
  • versiones optimizadas .webp de las imágenes originales (.jpg.webp),
  • miniaturas retina (-100×100@2x.jpg).

These can be modified and enhanced using the new advanced filters available in the pro version.

Media Sync Pro features

  • Revised incremental scan: Allows scanning and importing unlimited number of files.
  • Quick single directory rescan: Easily rescan one directory to find new files or apply a different filter without reloading the whole page.
  • Advanced filters: Find any file by customizing all default filters, search for a specific file type (images, videos, etc.), skip by tailor-made rules, or enter any custom pattern.
  • Schedule automatic imports: Select a desired interval and let the plugin automatically import any new files it finds.
  • Import logs: View the history of manual or scheduled imports.
  • Limit plugin access: Limit plugin access to a specific role.

Get pro version here.


  • Página inicial
  • Ejemplo de selección de archivos a importar
  • Importación a la biblioteca multimedia en marcha
  • Importación completada


  1. Sube el directorio media-sync al directorio /wp-content/plugins/
  2. Activa el plugin en el menú ‘Plugins’ de WordPress


Se atasca al importar / gira sin parar

Please try to increase max_execution_time (and/or memory_limit) in php.ini on server (as described here).

Archivos que no aparecen en la biblioteca de medios

Por favor, asegúrate de que la opción «Prueba en seco» NO esté marcada. Este es un mecanismo de seguridad para asegurarte de que sabes lo que estás haciendo, así que ten cuidado, pruébalo primero con solo un archivo.

No funciona

Por favor, primero intenta activar la depuración en Ajustes -> Sincronización de medios y comprueba la pestaña de red en las herramientas de desarrollo de Chrome para ver qué está sucediendo en segundo plano. Luego, informa sobre los errores reales, ya que es difícil ayudar sin conocer el error que está causando el problema.


28 de enero de 2024
Saved my Media Library after a reinstallation of Wordpress into which I copied my old library
3 de noviembre de 2023
It's simple and does the job it's meant to do. I love it and have it in my list for all the sites I work on.
18 de septiembre de 2023 1 respuesta
The directions the dev included are correct: this is not a plugin a general user should rely on and assume is working right, even if it at first appears to be. If you are not prepared to perhaps spend more time debugging than you saved by using this plugin instead of the (reliably working) native uploader in batches of 20, you may be in for some disappointment. After syncing, even if the sync appeared to complete work correctly, you're going to need to get into the PHP and test every function that you need to work (every context that attachments get called in, etc.) to verify that nothing is broken, and troubleshoot it yourself if it doesn't. +1 star because the developer was upfront that this might not work, although I didn't notice this until it was much too late. Mea culpa. This is NOT a 'support request'. I am not asking for help or support in any way. I am stating my impressions of the plugin and experience with it for benefit of other prospective users, IE a "review", not a "support request".
Leer todas las 70 reseñas

Colaboradores y desarrolladores

«Media Sync» es un software de código abierto. Las siguientes personas han colaborado con este plugin.


«Media Sync» está traducido en 3 idiomas. Gracias a los traductores por sus contribuciones.

Traduce «Media Sync» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios


  • Fix deprecated warnings with PHP 8.1
  • Increase required versions to WordPress 5.3 and PHP 7.1


  • Add correct plugin version when loading assets and updated readme.txt.


  • Fix detecting files that already in database when «Scan directory» option is used. Issue started in previous version (1.3.2).


  • Fix handling file names with even rarer special characters that might have resulted in duplicate imports.


  • Ignora las versiones .webp optimizadas de las imágenes originales (por ejemplo, .jpg.webp) y las miniaturas retina (por ejemplo, -100×100@2x.jpg) por defecto. Aún es posible personalizarlo con el gancho media_sync_filter_is_scan_object_ignored.


  • Nueva opción para establecer un tamaño de lote personalizado. Esto podría ayudar con los errores debidos a los límites del servidor (por ejemplo, max_execution_time).


  • Fix selecting multiple files without clicking on checkbox (e.g. shift-select).
  • Minor code cleanup.
  • Actualiza la versión de WordPress compatible a la 6.2.


  • Create a custom _msc record in wp_postmeta table to be able to differentiate files imported using this plugin. Could be useful to clean up the database later on.


  • Extend plugin access to «Editor» and «Author» roles.


  • If debugging is turned on, AJAX requests for import are now html which is rendered directly in UI.


  • New filter hook (media_sync_filter_before_update_metadata) which can be used to customize how metadata is updated or to run additional actions after file import.


  • Handle files with quotes (apostrophes) or other special characters in the file name.
  • Continue importing other selected files if there was an error with some of the files.
  • Show errors in UI instead of alert.


  • Better error handling and fallback when finding mime type


  • Fix meta data errors caused by invalid mime types


  • Much better error handling while importing


  • Optimized directory scanning to use less memory
  • New option to turn on debugging for this plugin
  • Changed parameters passed to media_sync_filter_is_scan_object_ignored hook function
  • Now requires PHP 5.5


  • 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.


  • Fix issues when importing files containing special characters


  • Slight improvements with error handling in JavaScript


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


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


  • 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.


  • Fix Smart File Time on Windows server


  • 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)


  • [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.


  • Reduce the number of items to import per batch


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


  • Another fix for get_current_screen error


  • Fix get_current_screen error


  • 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


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


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


  • Add plugin localization
  • Add Serbian translation


  • Various improvements and fixes


  • Fix sorting of directories and files
  • Minor wording changes and code cleanup


  • Fix error on activation


  • Initial plugin features