=== Fixora Media Archive Export ===
Contributors: 0322lf
Tags: export media library, download media, backup uploads, media export, zip export
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Export your WordPress media library to a downloadable ZIP file. Exclude thumbnails and filter by upload date.

== Description ==

**Fixora Media Archive Export** lets you export your WordPress media library (or a filtered subset) to a downloadable ZIP archive from the admin.

Perfect for:

* **Migrating sites** - Download your media before moving to a new host
* **Backups** - Create a quick archive of your uploads folder
* **Client deliverables** - Export media for clients without FTP access
* **Archive management** - Download older media for offline storage

### Key Features

* **Smart thumbnail exclusion** - Optionally excludes WordPress-generated thumbnails (e.g., image-150x150.jpg)
* **Date filtering** - Export only media from specific year/month folders
* **Progress feedback** - Status updates while scanning and building the ZIP
* **Original folder structure** - Keeps year/month paths inside the archive
* **Temporary files** - ZIP stored under uploads and removed after download or after one hour
* **Simple admin UI** - Media → Fixora Media Archive Export

### How It Works

1. Go to **Media → Fixora Media Archive Export** in your WordPress admin
2. Choose export options (exclude thumbnails, filter by date)
3. Click **Export to ZIP**
4. Wait while the plugin scans uploads and builds the archive
5. Download the ZIP when it is ready

The plugin exports files from `wp-content/uploads`. Scan and ZIP creation each run in a single AJAX request; very large libraries may be limited by your host’s PHP memory and max execution time. Prefer date filters for bigger libraries.

### Requirements

* WordPress 6.4 or higher
* PHP 7.4 or higher
* PHP ZipArchive extension (available on most hosts)

### Privacy & Security

This plugin:

* Does NOT send data to external servers
* Does NOT track usage or collect analytics
* Uses WordPress nonces and capability checks (`upload_files`)
* Uses user-bound, unguessable transient keys for export/download flow
* Automatically cleans up temporary ZIP files
* Only accessible to users with the `upload_files` capability

== Installation ==

### From WordPress Admin

1. Go to **Plugins → Add New**
2. Search for "Fixora Media Archive Export"
3. Click **Install Now** and then **Activate**
4. Go to **Media → Fixora Media Archive Export** to start exporting

### Manual Installation

1. Download the plugin ZIP file
2. Go to **Plugins → Add New → Upload Plugin**
3. Choose the ZIP file and click **Install Now**
4. Click **Activate Plugin**

### Requirements Check

After activation, the plugin checks whether the PHP ZipArchive extension is available. If not, you will see an admin notice asking you to contact your hosting provider.

== Frequently Asked Questions ==

= What files are exported? =

By default, the plugin exports original uploaded files under `wp-content/uploads`, excluding WordPress-generated thumbnails when that option is enabled.

= What are thumbnails and why exclude them? =

When you upload an image, WordPress creates resized versions (e.g. image-150x150.jpg). Excluding them reduces archive size; WordPress can regenerate them from the originals later.

= Can I export only images from a specific time period? =

Yes. Use the "Filter by Upload Date" dropdown to select a year/month folder.

= Will this work with large media libraries? =

It can, but scan and ZIP creation each happen in one request. Host PHP limits (memory / max execution time) still apply. Use date filters for large libraries, or export in smaller ranges.

= Where is the ZIP file stored? =

Temporarily under `wp-content/uploads/mlze-temp/`. It is deleted after download or after about one hour.

= Does this export files from plugins or themes? =

No. Only files under the uploads directory are exported.

= Is my data sent to external servers? =

No. Everything runs on your WordPress server.

= What if the ZipArchive extension is not available? =

You will see a notice after activation. Ask your host to enable the PHP ZipArchive extension.

== Screenshots ==

1. Export page with media library statistics and options
2. Progress feedback during export
3. Successful export with download button
4. Date filtering options

== Changelog ==

= 1.0.4 =
* Align text domain, main file, and package folder to the approved WordPress.org slug `fixora-media-archive-export`.
* First SVN-ready build under the granted slug. Feature and security behavior unchanged from 1.0.3.

= 1.0.3 =
* Align text domain and package folder to the then-assigned WordPress.org slug `media-library-zip-export` (temporary for Plugin Check TextDomainMismatch).
* Display name remains Fixora Media Archive Export; Author remains Fixora Labs; Contributors remain 0322lf.
* Main plugin file temporarily named media-library-zip-export.php to match that assigned slug folder.

= 1.0.2 =
* Rebrand to Fixora Media Archive Export (Fixora Labs / contributor 0322lf).
* Secure export/download transients: random keys bound to user ID, ownership checks on retrieve.
* Remove "Tested up to" from the main plugin header (readme only).
* Remove broken Plugin URI / Author URI and inaccurate batch/Pro marketing claims.
* Honest large-library guidance aligned with single-request scan/ZIP behavior.

= 1.0.1 =
* Plugin Check compliance updates.

= 1.0.0 =
* Initial release: export media library to ZIP, thumbnail exclusion, date filtering, AJAX progress, nonces and capability checks.

== Upgrade Notice ==

= 1.0.4 =
Aligns package with the approved WordPress.org slug `fixora-media-archive-export`. Please update.

= 1.0.3 =
Aligns text domain and package folder with the then-assigned WordPress.org slug so Plugin Check passes. Please update.

= 1.0.2 =
Security and branding update for WordPress.org review. Please update.

== Support ==

Use the WordPress.org support forum for this plugin after it is published.
