Updating Bundled Theme Versions

The Process

Every release, if there have been any changes in a bundled theme, we ship a new version to the WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ theme directory. What follows are detailed steps to update the themes.

  1. Read each theme’s changelog in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., and create a changelog file with the highlights (used in Trac tickets, both coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and theme review). The changelog should start at the last version of the theme released.
  2. Create a new core Trac ticketticket Created for both bug reports and feature development on the bug tracker. (like #54783) to bump the POT and versions for each theme.
  3. Locally, check out the current version of the theme from the WordPress.org theme directory, e.g., the largest number in each of these directories:
  4. Compare with a diff tool to the theme versions in core trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision., is there anything to test or note specifically? Any big unexpected changes?
  5. Test! Load the themes on all recent versions of WordPress (five back is a good place to start). Run the Theme Check plugin, and check for any errors or things we didn’t catch in the core cycle.
  6. Bump the theme versions by 0.1 in core, in each stylesheet.
  7. Bump the theme versions by 0.1 in core, in each package.json and package-lock.json file.
  8. Update “Tested up to” in each readme.
  9. If you’re updating Twenty Ten or Twenty Eleven, wait for the POT update for each theme to be committed, then proceed to make the ZIP packages (a committercommitter A developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component. is needed to trigger the POT files update). This can be done like this example php makepot.php wp-theme ../../src/wp-content/themes/twentyeleven twentyeleven.pot. Run that from the tools/i18n directory. For all other default themes, translations are managed by WordPress.org GlotPress, outside of the theme. So this step isn’t necessary for Twenty Twelve and later.
  10. Run the theme build script when one is present (currently Twenty Nineteen, Twenty Twenty, and Twenty Twenty-One). Some themes copy the version into generated files (RTL stylesheets, etc.).
  11. Prepare the new version of each theme.
    • svn export from core repository to a temporary location on your local hard drive.
    • Do another quick diff with the previous version for a final sanity check.
    • Zip it: zip -r [name].zip name (Be sure the file name is the same as the theme directory path, otherwise the theme repository will consider the theme new on upload.)
  12. All contributors with WordPress Core commit access are able to upload new versions of the default themes to WordPress.org through the theme uploader. Note: theme updates will go live automatically if manual intervention is not taken beforehand by the theme or metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. team. If this is not desired, contact them first to prevent the go-live process. If needed: note in the ticket, “Do not approve yet, please. We’d like to coordinate with the core release.”
  13. PingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” the release leadRelease Lead The community member ultimately responsible for the Release. to coordinate with the main release process. The updates should be approved automatically. @Otto42 can help if anything goes wrong, and the release should know when everything is uploaded and live.

Top ↑

Tips

  • If a major version of WordPress is also being released with a new bundled theme, the oldest theme being bundled needs to be removed from the build script. To keep packages sizes down, only the 3 most recent default themes should be included in WordPress packages.
  • If a theme has any code changes, that means it should get a version number bump and changelog update. Not updating the version number means a new version of the theme can’t be uploaded to the theme directory.
  • Sometimes when looking at the diff of changes after a theme is uploaded, you may notice image or font files showing up as changed when they haven’t been changed. This is a Trac oddity.
  • All default themes are marked as special cases on WordPress.org Themes Trac. Themes marked as special still show the theme check errors, but they upload anyway.

Last updated: