Skip to content

Releases: vergelabsnathan/vergelabs-media-library

VergeLabs Media Library 3.16.0 — one button instead of a copied key

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 02 Sep 11:24

Connect a site without copying anything. The AI screen now has a Connect button: it sends you to vergelabsmedia.com, you choose which licence the site should use, and you land back in WordPress with the key already in place. The key is fetched between the two servers and never travels through the browser; the code that carries the handshake is single use, expires in ten minutes, and only works for the site it was minted for. Pasting a key by hand still works — for a site that cannot reach out, and for a network licence.

Fixed: the credit balance was only ever overheard. The service reports what is left alongside every description, and the plugin simply remembered that — so a site that had bought credits and not described anything since kept showing the number from its last run, which reads exactly like a payment that never arrived. It asks outright now.

Full changelog: https://vergelabsmedia.com/changelog

VergeLabs Media Library 3.15.0 — multilingual, and verified against the real plugins

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 02 Sep 05:56

Folders and AI descriptions now work with Polylang and WPML: a translated image lands in the same folders as its original — one tree, whichever language is selected. Divi's Folder gallery module verified rendering from a built page; the SEO context live-checked against current Yoast, Rank Math, SEOPress and All in One SEO releases. Full changelog: https://vergelabsmedia.com/changelog

v2.10.0 — the three paid features, rebuilt and free

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 21 Aug 18:36

The three features that used to require the paid add-on, rebuilt and free.

Search by filename, uploader and category. WordPress searches titles, captions and descriptions. This adds the rest, and lets you switch each column off — searching a category name finds everything filed under it, whether or not the name appears in the file.

New uploads inherit the post's categories. Turn it on per taxonomy, and a file uploaded while editing a post is filed under that post's terms. Terms are added, never replaced.

Bulk categorise from the media list. Add to, or remove from, the category picked beside the Bulk actions menu. Files you cannot edit are skipped and counted rather than silently ignored.

Also a pass over the settings screens to sit with how the WordPress admin looks now, mirrored for right-to-left languages.

Verified

  • Plugin Check: 0 errors, 0 warnings across all five categories, run against this archive.
  • Upgrading from Enhanced Media Library 2.9.4 carries over every setting, taxonomy, custom MIME type and term assignment, leaves the original options untouched so a rollback still works, and survives both plugins being active at once.
  • Runs beside Elementor, WooCommerce, ACF, Beaver Builder, Divi Builder, Jetpack, Polylang, WPML, Yoast, Rank Math, WP Rocket, LiteSpeed Cache, FooGallery, MetaSlider, NextGEN, Smush, ShortPixel and Classic Editor — each alone, and fourteen together.

Not yet covered: multisite, WPML's media translation add-on, and Jetpack inside a full plugin stack.

Try it without installing anything: https://vergelabs-media-library-demo.vercel.app

Based on Enhanced Media Library by wpUXsolutions. GPLv2 or later.

Verge Media Library 2.9.8 — review-ready

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 19 Aug 11:21

Recommended build. Supersedes 2.9.7.

Try it in your browser, no install

Tested on WordPress 7.0.4 / PHP 8.3.33. WordPress's automated Plugin Check reports zero errors and zero warnings.

Security

  • Request data across the media filters, the list table filters, the network settings form and the drag-and-drop reorder is unslashed and sanitised on the way in.
  • The settings import no longer passes the uploaded file through as-is; every field is rebuilt and sanitised first.
  • The list view was handing the entire raw query string to JavaScript. Sanitised.
  • Saving an attachment's fields now verifies its nonce before reading what was submitted, rather than after.

Removed

Three settings blocks that were permanently greyed out and labelled "/ Premium Feature" — Search, Bulk Edit, and auto-assign with Synchronize Now. None of them did anything: the options were stored but never read, because the behaviour lived in a paid add-on that is not part of this plugin. WordPress.org does not allow locked features used as upsell, and shipping dead controls is not much better.

The Search box stays, and now simply works — search on enter, minimum letter count and auto search were never paid features.

Also gone: links to the original author's documentation and support desk, and a note promising a fix in "the upcoming major update v3.0", which was their roadmap.

Fixed

  • Reordering media clears the affected items from the object cache, so the old order is not served back.
  • Media filters in the modal no longer shrink to a few characters wide when several are enabled.

Note for translators

Labels that previously borrowed WordPress's own translations now carry this plugin's text domain, because wordpress.org does not permit borrowing core's. They read in English until translated.

Based on Enhanced Media Library by wpUXsolutions. GPLv2 or later.

Verge Media Library 2.9.7 — Bulk select restored

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 18 Aug 22:45

Recommended build. Supersedes 2.9.6.

Try it in your browser, no install

Tested on WordPress 7.0.4 / PHP 8.3.33.

Restored

  • Bulk select and Delete selected are back on the media grid. Stock WordPress has them; this plugin has been shipping without them, because its media grid runs as a custom frame that WordPress does not recognise as the grid, so core never built them. Bulk trash and delete now work again using WordPress's own handling rather than a copy of it.
  • Escape leaves bulk select. The frame's reference to the page body was commented out while the key handler still used it, so entering bulk select threw. Invisible until now only because bulk select could not be entered.

Fixed

  • The toolbar renders WordPress's filters-heading again, the hidden heading that tells screen reader users what the filter row is. It was lost because the plugin replaced WordPress's toolbar code wholesale instead of extending it.
  • Bulk select sits after the filter row rather than between two dropdowns.

Under the hood

  • Both minified JavaScript files now ship as readable source. The constant meant to load a readable copy pointed at a directory that was never in the distribution, so there was no way to read or safely edit them.
  • The toolbar code extends WordPress's instead of replacing it. This is the change that stops the WordPress 7.0 breakage from recurring: fixes and additions in WordPress now arrive on their own.

Moving over from Enhanced Media Library

Activating copies your existing settings across — taxonomies, MIME types, library and filter options. The originals are left untouched. Deactivate Enhanced Media Library first.

Based on Enhanced Media Library by wpUXsolutions. GPLv2 or later.

Verge Media Library 2.9.6 — WP 7.0 layout fix, PHP 8 cleanup, security pass

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 18 Aug 10:28

Recommended build. Supersedes 2.9.5.

Try it in your browser, no install — boots WordPress 7.x on PHP 8.3, activates the plugin, seeds media categories and images, and lands on the repaired media grid.

Tested on WordPress 7.0.4 / PHP 8.3.33.

Fixed

  • WordPress 7.0 media toolbar. Core made .media-toolbar-secondary a fixed 2x2 CSS grid and placed only its own two filters, by id. Every control this plugin adds had no grid area and stacked below the toolbar. 300px over six rows, down to 66px over two.
  • The author filter drew on top of the type filter. It inherited the base view's id media-attachment-filters instead of declaring its own, so under id-based placement both were assigned the same cell. This is why the type filter looked missing and the labels sat above the wrong controls.
  • PHP 8 warnings. The four settings handlers read their nonce field before checking it existed; with WP_DEBUG on that echoed warning also broke headers for the rest of the request. Plus four get_terms() calls using the signature deprecated in WP 4.5.
  • Security. The AJAX handler that applies settings across a multisite network checked a nonce but no capability. It now requires manage_network_options.
  • Coexistence. Script and style handles, CSS classes, DOM ids and the custom AJAX actions still carried the upstream prefix and would have collided with Enhanced Media Library. All moved to vergeml-.

Moving over

Activating copies your existing Enhanced Media Library settings across — taxonomies, MIME types, library and filter options. The originals are left untouched, so switching back loses nothing. Deactivate Enhanced Media Library first.

Install: download the zip below, then Plugins → Add New → Upload Plugin.

Based on Enhanced Media Library by wpUXsolutions. GPLv2 or later.

Verge Media Library 2.9.5 — WordPress 7.0 layout fix

Choose a tag to compare

@vergelabsnathan vergelabsnathan released this 18 Aug 09:35

Superseded by 2.9.6. This build predates a missing capability check on the multisite network-settings handler, and predates the prefix isolation that stops handle collisions with Enhanced Media Library. Use 2.9.6.