Theme readme.txt Generator

Generate a WordPress.org theme readme.txt: the header block, description, changelog, and the resource attributions the review requires.

Live output

Enable JavaScript to customise; default output below.

WordPress.org usernames, lowercase, not display names.

Must match the version in style.css, or the directory serves a different version than you think.

License

A theme in the directory must be GPL compatible, and so must everything it bundles.

Live preview readme.txt
=== My Theme ===

Contributors: yourwporgusername
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A block theme for content-first sites: fast, accessible, and easy to make your own with the site editor.

== Description ==

A block theme for content-first sites: fast, accessible, and easy to make your own with the site editor.

== Installation ==

1. In the admin, go to Appearance, Themes, Add New, and upload the zip.
2. Activate the theme.
3. Open Appearance, Editor to change templates, styles and template parts.

== Frequently Asked Questions ==

= Does this theme support the site editor? =

Yes. Templates, template parts and styles are all edited there.

== Changelog ==

= 1.0.0 =

Initial release.

== Copyright ==

My Theme bundles the following third-party resources:

Inter font, Rasmus Andersson
License: SIL Open Font License 1.1
Source: https://github.com/rsms/inter

Output is valid and updates as you type.

Generate the readme.txt a theme needs for the WordPress.org directory, including the copyright section that trips up most first submissions.

How to use

  1. Use WordPress.org usernames for contributors, lowercase, not display names. The directory links them to profiles and silently drops anything it cannot match.
  2. Keep the stable tag equal to the version in style.css. When they disagree, the directory serves a version you did not mean to publish.
  3. List every bundled resource: fonts, images, icons, scripts. Each needs an author, a source and a GPL-compatible licence. This is what the theme review checks first.
  4. Write the changelog newest first. It is shown on the theme page, and it is the only place users see what changed.
  5. Save the file as readme.txt in the theme root, in plain text.

Example

The copyright section, which is the one that gets submissions rejected:

== Copyright ==

My Theme bundles the following third-party resources:

Inter font, Rasmus Andersson
License: SIL Open Font License 1.1
Source: https://github.com/rsms/inter

“I found the image on a stock site” is not a licence. Every bundled asset needs a named source and a licence that is GPL compatible.

Pitfalls

  • A stable tag that does not match style.css is the single most common packaging mistake. The directory reads the tag, not the file.
  • Bundled images without a licence and a source will fail the theme review. A screenshot is the usual oversight.
  • Every bundled resource must be GPL compatible. A font under a licence that forbids redistribution cannot ship with the theme.
  • Contributors are usernames. A display name with capitals or spaces links to nothing.
  • Tested up to needs to be an actual WordPress version you tested against, and it ages quickly.
  • The description in the header block and the one under == Description == both appear; keeping them in step is your job.
  • A theme readme is not a plugin readme. There is no Tags: line here: tags belong in style.css.
  • Markdown does not render. The format is its own thing, with == for sections and = for subsections.

Compatibility

The readme format is read by the WordPress.org theme directory. Requires at least, Tested up to and Requires PHP are honoured by WordPress itself from 5.8 onwards for install and update checks. Themes have used this file since the directory began; the Copyright section became a review requirement for bundled resources. The tool runs entirely in your browser.

Frequently asked questions

Is this the same as a plugin readme?
Close, but not the same. A theme readme has no Tags: line, and it needs the copyright section for bundled resources.
Where do the theme tags go?
In style.css, not here. The directory reads them from the theme header.
What has to be listed under Copyright?
Everything you did not write: fonts, icons, images including the screenshot, and any bundled JavaScript.
Why does my theme show an old version?
The stable tag and the version in style.css disagree. The directory follows the tag.
Does the description support Markdown?
No. The format uses == for sections and = for subsections, and otherwise plain text.

From the people who built this tool

WP Adminify

The WordPress admin, rebuilt: a dashboard worth looking at, menu and column control, a real file manager and the login page your client sees.

See WP Adminify Free version on WordPress.org

Weekly drops

New tools, when there are new tools

One email when something worth using ships. No schedule to fill, so no filler.

Your address goes nowhere else, and one click unsubscribes.