Repository navigation
Releases
Releases · omens-agency/omens-wp-plugin-media
v1.0.5
Hardening round from the 2026-11-03 Dev Team audit. Upload-time behavior is unchanged except where noted; the backfill gets the fixes.
- Updates require the release zip. The update checker now only accepts the
omens-wp-plugin-media.zipasset of a release and skips a release that lacks it. Before, a release with no zip (an upload that failed after the release was created, or one made in the GitHub UI) would have fallen back to GitHub's source tarball, which unpacks to a folder named after the commit; auto-installing that would have deactivated the plugin on every site within a day. - Auto-update switch anchored and named.
omens_media_auto_update()accepts only this plugin's own release-asset URLs instead of any github.com path containing the name. Newomens/media/auto_updatefilter lets a site opt out of unattended updates. - Backfill counts real work. A title that already equals what the plugin would write (one-word filenames with a leading capital, acronyms, sites on
case => none) is now "already set", not "would fill". Those were the attachments that stayed in the "Would fill" count on every run with nothing to write.omens_media_fill()returns a newwrittenlist of fields actually saved, andbackfill --applyreports from it, with a warning listing any attachment whose write failed. - Scaled and renamed images are recognized. Core sets the title from the original filename and then renames large images to
-scaledand colliding ones to-1, so the old placeholder test (title equals current filename) saw every large photo as human-edited and left its raw filename as the title. The test now also matches the filename with those suffixes removed, exactly or after slugifying both. - File-less attachments are skipped. An attachment with no
_wp_attached_file(offloaded media, broken imports) used to have its title fed back in as a filename, which made a human-written title look like a placeholder and re-cased it. The GUID's filename is used when it has one; otherwise the attachment is skipped asno-file. - Text is sanitized before it is written.
sanitize_text_field()on the humanized text, matching what core does on its own alt and title writes, so a filename set by an importer or offload plugin cannot carry markup intopost_titleor alt. - SVGs take alt text.
omens_media_takes_alt()coverswp_attachment_is_image()plusimage/svg+xml, and is used for the alt write, theimages_onlyswitch and the media-library column, so SVG logos show "Needs alt text" and non-images (PDFs, video) no longer get alt meta. - Filenames in any script count as meaningful (
\p{L}), not only Latin letters. backfill --fields=with an unknown field name errors instead of silently turning every field off.tools/release.shlints every shipped PHP file, requires a## <version>CHANGELOG section (used as the release notes), refuses to run offmainor out of sync with origin, builds the zip in a temp dir and checks its contents, pushes onlymainand the new tag, and publishes draft-then-upload-then-pre-release. Newtools/promote.shflips a verified pre-release to the full release and refuses one without its zip asset.- README and code comments no longer name a client or link to internal documents (the repo is public).
v1.0.4
Plugin icon for the WordPress Updates screen. No functional change.
v1.0.3
Releases now apply themselves on every site (auto_update_plugin for this slug, GitHub release assets only). No change to the metadata behavior.
v1.0.2
A user-facing plugin description, and a Plugins-screen warning when the plugin sits in the wrong folder (such as omens-wp-plugin-media-main from GitHub's Download ZIP).
v1.0.1
Update URI header; update checker exposed for WP-CLI probes.
v1.0.0
First release as omens-wp-plugin-media. Alt text and title from upload filenames, meaningless filenames skipped and flagged, WP-CLI backfill, self-updating from GitHub releases.