Releases and Updates
This page combines the current release guidance for both the theme and the plugin.
Stable release ZIPs remain publicly downloadable from this docs site. Beta builds do not: they stay available only through the private update channel.
Theme Release Flow
Section titled “Theme Release Flow”The theme and plugin use a private update service through the bundled Plugin Update Checker library.
The update service decides which package URL to return:
- stable releases can point to the public ZIP hosted on this docs site
- beta releases should point to a private URL controlled by your backend
Before Releasing The Theme
Section titled “Before Releasing The Theme”- Finish the code changes.
- Update the
Version:header inpolimi-cds-theme/style.css. - Commit everything.
- Make sure dependencies are installed so the release script is available.
Release Command
Section titled “Release Command”From the repo root:
npm run releaseThe theme release script:
- reads the version from
style.css - creates an annotated
v...tag - pushes
HEADand the tag - relies on GitHub Actions to build the release ZIP
- republishes the stable ZIP on this docs site, while beta artifacts stay private
Stable vs Prerelease Theme Versions
Section titled “Stable vs Prerelease Theme Versions”Examples:
- stable:
1.7.0 - prerelease:
1.7.0-beta.1
If beta updates are disabled on a site, prerelease theme versions are hidden.
Theme administrators can enable prerelease updates from:
Settings -> Polimi Theme Settings
Note:
- the setting controlling prerelease behavior is
polimi_cds_enable_beta_updates
Plugin Release Flow
Section titled “Plugin Release Flow”The plugin also uses the same private update service.
Before Releasing The Plugin
Section titled “Before Releasing The Plugin”Update the version in both places:
polimi-plugin/index.phppolimi-plugin/package.json
Then build assets:
npm run buildTypical Release Steps
Section titled “Typical Release Steps”git add -Agit commit -m "Release vX.Y.Z"git push origin mainnpm run release -- --tag vX.Y.ZIf no tag is passed, the script reads the version from index.php.
Stable vs Prerelease Plugin Versions
Section titled “Stable vs Prerelease Plugin Versions”Examples:
- stable:
1.2.47 - prerelease:
1.2.48-beta.1
Plugin administrators can allow prerelease updates from:
Settings -> Polimi Plugin
Operational Notes
Section titled “Operational Notes”Theme and Plugin Compatibility
Section titled “Theme and Plugin Compatibility”Because the theme expects the plugin and the plugin reuses the theme-bundled update-checker library, it is safest to:
- test both together before release
- avoid shipping plugin changes that assume theme-side code not yet deployed
- verify block rendering on a real WordPress instance after publishing
- verify registration and update metadata responses on a real WordPress instance after publishing
Rewrite Rules
Section titled “Rewrite Rules”The theme flushes rewrite rules:
- when the theme is activated
- when the theme version changes
- when the Testimonials visibility setting changes
This helps keep CPT URLs working after updates.
Admin Verification After Release
Section titled “Admin Verification After Release”After publishing:
- force a WordPress update check
- confirm the expected version appears
- confirm prerelease visibility matches site settings
- spot-check the homepage, one normal page, one archive, and one block-heavy page