Title: Niquelao Image Optimizer
Author: Koke Pérez
Published: <strong>June 22, 2026</strong>
Last modified: June 25, 2026

---

Search plugins

![](https://ps.w.org/niquelao-image-optimizer/assets/banner-772x250.png?rev=3582459)

![](https://ps.w.org/niquelao-image-optimizer/assets/icon-256x256.png?rev=3582459)

# Niquelao Image Optimizer

 By [Koke Pérez](https://profiles.wordpress.org/kokenet/)

[Download](https://downloads.wordpress.org/plugin/niquelao-image-optimizer.1.5.1.zip)

 * [Details](https://test.wordpress.org/plugins/niquelao-image-optimizer/#description)
 * [Reviews](https://test.wordpress.org/plugins/niquelao-image-optimizer/#reviews)
 *  [Installation](https://test.wordpress.org/plugins/niquelao-image-optimizer/#installation)
 * [Development](https://test.wordpress.org/plugins/niquelao-image-optimizer/#developers)

 [Support](https://wordpress.org/support/plugin/niquelao-image-optimizer/)

## Description

Niquelao Image Optimizer automatically compresses images on upload and allows bulk
re-optimization of your entire existing media library. It uses Imagick (preferred)
or GD (fallback) — no external dependencies or API keys needed.

**Features:**

 * Automatic optimization on every upload
 * Bulk optimization of the existing media library
 * Optional WebP conversion for every image
 * Optional automatic .webp serving via .htaccess under the same original URL (no
   redirects)
 * WordPress thumbnail optimization
 * Automatic backup of the original file before processing
 * Optional thumbnail backups (disabled by default) plus a Maintenance screen to
   scan, download and purge accumulated backups
 * Detailed savings statistics per file type
 * Copyright/authorship EXIF metadata preserved after stripping
 * Optional automatic resizing with configurable maximum width and height
 * Compatible with Imagick (preferred) and GD (fallback)
 * No external dependencies — works on any shared hosting

### Requirements

 * WordPress 5.8 or higher
 * PHP 7.4 or higher
 * Imagick or GD extension enabled on the server

## Screenshots

[⌊Settings — image resizing, compression quality (JPEG/PNG/WebP) and processing 
options⌉⌊Settings — image resizing, compression quality (JPEG/PNG/WebP) and processing
options⌉[

Settings — image resizing, compression quality (JPEG/PNG/WebP) and processing options

[⌊Bulk Optimization — reoptimize your entire existing media library with a progress
bar⌉⌊Bulk Optimization — reoptimize your entire existing media library with a progress
bar⌉[

Bulk Optimization — reoptimize your entire existing media library with a progress
bar

[⌊Savings Statistics — totals by file type and a log of the most recent optimizations⌉⌊
Savings Statistics — totals by file type and a log of the most recent optimizations⌉[

Savings Statistics — totals by file type and a log of the most recent optimizations

[⌊Diagnostics — Imagick/GD availability, WebP support and uploads folder permissions⌉⌊
Diagnostics — Imagick/GD availability, WebP support and uploads folder permissions⌉[

Diagnostics — Imagick/GD availability, WebP support and uploads folder permissions

[⌊Settings — backup options and the new automatic WebP serving via .htaccess (no
redirects)⌉⌊Settings — backup options and the new automatic WebP serving via .htaccess(
no redirects)⌉[

Settings — backup options and the new automatic WebP serving via `.htaccess` (no
redirects)

[⌊Maintenance — scan, download and purge accumulated .niquelao-bak backup files 
in batches⌉⌊Maintenance — scan, download and purge accumulated .niquelao-bak backup
files in batches⌉[

Maintenance — scan, download and purge accumulated `.niquelao-bak` backup files 
in batches

## Installation

 1. Upload the `niquelao-image-optimizer/` folder to `/wp-content/plugins/`
 2. Activate the plugin from **Plugins  Installed Plugins**
 3. Configure it under **Niquelao Optimizer  Settings**

## FAQ

### Does it work on shared hosting?

Yes. It uses the PHP Imagick or GD libraries, available on virtually all shared 
hosting providers.

### Are the original images saved?

Optionally. Enable “Save backup” in the settings to keep a `.niquelao-bak` copy 
alongside each processed file.

### My hosting has limited disk space / inodes, how do I clean up backups?

By default only the full-size original is backed up, not every thumbnail size. Go
to **Niquelao Optimizer  Maintenance** to scan for accumulated `.niquelao-bak` files,
download a ZIP copy, and purge them in batches.

### Is copyright information preserved?

Yes. The EXIF/IPTC Copyright, Artist and Author fields are preserved after stripping
the rest of the metadata.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Niquelao Image Optimizer” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Koke Pérez ](https://profiles.wordpress.org/kokenet/)

[Translate “Niquelao Image Optimizer” into your language.](https://translate.wordpress.org/projects/wp-plugins/niquelao-image-optimizer)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/niquelao-image-optimizer/),
check out the [SVN repository](https://plugins.svn.wordpress.org/niquelao-image-optimizer/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/niquelao-image-optimizer/)
by [RSS](https://plugins.trac.wordpress.org/log/niquelao-image-optimizer/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.5.1

 * Fixed: Plugin Check findings — replaced direct `unlink()` calls with `wp_delete_file()`
   in the Maintenance ZIP download and cleanup routines
 * Fixed: added justified `phpcs:ignore` annotations for the unavoidable direct `
   is_writable()`/`readfile()` filesystem calls used to manage `.htaccess` and stream
   the temporary backup ZIP (no WP_Filesystem equivalent exists for these specific
   operations)
 * Fixed: added justified `phpcs:ignore` annotations for `$_POST['offset']`/`$_POST['
   token']` reads in Maintenance AJAX handlers, where the nonce is already verified
   via `check_ajax_referer()` inside `check_permissions()` earlier in the same method
 * Fixed: removed the remote Google Fonts `@import` in the admin stylesheet (present
   since the first approved version) — admin UI now uses a local system-font stack,
   with no third-party assets loaded
 * Fixed: missing i18n wrapper on the “No Imagick/GD detected” troubleshooting copy
   in the Diagnostics page
 * Fixed: hardcoded Spanish strings in the Media Library inline JS (single-image
   optimize button) now routed through PHP `__()` and passed to the script as a 
   translatable object
 * Changed: README.md rewritten to match the current version and defer to readme.
   txt as the single source of truth for the changelog, instead of duplicating (
   and drifting out of sync with) it

#### 1.5.0

 * Added: optional setting “Servir WebP automáticamente” — inserts/removes a `.htaccess`
   block (via WordPress’ insert_with_markers()/extract_from_markers()) that serves
   the `.webp` version under the same original URL when the browser supports it,
   with no redirects and no URL changes
 * Added: status indicators for mod_rewrite availability, `.htaccess` writability
   and whether the rule block is actually installed
 * Added: the `.htaccess` block is automatically removed on plugin deactivation 
   and uninstall, leaving no leftover server rules

#### 1.4.0

 * Added: optional “Keep thumbnail backups” setting (off by default) — when disabled,
   only the full-size original gets a `.niquelao-bak` copy instead of every generated
   thumbnail size, saving disk space and inodes
 * Added: new Maintenance screen to scan, download (as ZIP) and bulk-purge accumulated`.
   niquelao-bak` files, processed in batches via AJAX to support shared hosting 
   with execution time/inode limits
 * Added: uninstall routine now also removes the temporary ZIP folder and the new
   backup-thumbs option

#### 1.3.5

 * Fixed: settings page hook suffixes were calculated manually and didn’t match 
   the real hook suffixes generated by WordPress (which derive from the top-level
   menu_title, not the menu slug), causing CSS/JS to fail to load on Bulk Optimization,
   Statistics and Diagnostics pages
 * Fixed: admin styles/scripts now use the real hook_suffix returned by add_menu_page()/
   add_submenu_page() instead of a hardcoded guess
 * Fixed: media library “Optimize” button (upload.php/post.php) registered its own
   style/script handle instead of relying on a handle that wasn’t enqueued on those
   screens
 * Fixed: synced plugin version number across the main file header, the NIQUELAO_VERSION
   constant and readme.txt Stable tag
 * Fixed: missing i18n wrapper on one bulk-optimization status string

#### 1.3.2

 * Unified license to GPL-2.0-or-later across all files
 * Added full internationalization (i18n) via **() and esc_html**() functions
 * Updated Text Domain header to match plugin slug (niquelao-image-optimizer)
 * Removed deprecated load_plugin_textdomain() call (auto-loaded since WP 4.6)
 * Created uninstall.php to clean up table, options and postmeta on uninstall
 * Fixed require_once order: all includes at the top of the main file
 * languages/ folder ready for translations

#### 1.3.1

 * Updated Plugin URI to kokeperez.es

#### 1.3.0

 * Added automatic resizing with configurable maximum width and height
 * EXIF Copyright/Artist metadata now preserved after stripping (Imagick and GD)

#### 1.2.0

 * Atomic file writes using a temporary file
 * Improved diagnostics page

#### 1.1.0

 * Bulk optimization with progress bar
 * WebP conversion support
 * Statistics page

#### 1.0.0

 * Initial release

## Meta

 *  Version **1.5.1**
 *  Last updated **2 weeks ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.8 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/niquelao-image-optimizer/)
 * Tags
 * [compress images](https://test.wordpress.org/plugins/tags/compress-images/)[image optimization](https://test.wordpress.org/plugins/tags/image-optimization/)
   [imagick](https://test.wordpress.org/plugins/tags/imagick/)[performance](https://test.wordpress.org/plugins/tags/performance/)
   [webp](https://test.wordpress.org/plugins/tags/webp/)
 *  [Advanced View](https://test.wordpress.org/plugins/niquelao-image-optimizer/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/niquelao-image-optimizer/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/niquelao-image-optimizer/reviews/)

## Contributors

 *   [ Koke Pérez ](https://profiles.wordpress.org/kokenet/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/niquelao-image-optimizer/)