WordPress.org

Make WordPress Core

Opened 8 years ago

Closed 2 years ago

#13780 closed feature request (duplicate)

WordPress Version Requirement Support for Themes

Reported by: kretzschmar Owned by:
Milestone: Priority: normal
Severity: normal Version:
Component: Themes Keywords: needs-patch
Focuses: Cc:

Description

Right now, there seems to be no way to add a minimum required version to a themes style.css.

This should be used for the automatic update of themes build into WordPress. The theme update should only be applied after WordPress is updated to at least that version.

Attachments (3)

13780-check-theme-version-on-upload.diff (1.9 KB) - added by pdclark 5 years ago.
Check theme version when uploading .zip. Checks for "Requires at least:" in theme style.css head.
13780-check-theme-version-from-api.diff (861 bytes) - added by pdclark 5 years ago.
Checks theme version when "requires" value sent by theme API.
13780-check-theme-version-on-activate.diff (1.6 KB) - added by pdclark 5 years ago.
Check theme version before switching themes. Checks for "Requires at least:" in theme style.css head.

Download all attachments as: .zip

Change History (22)

#1 @dd32
8 years ago

  • Component changed from Themes to WordPress.org
  • Milestone changed from Unassigned to WordPress.org site
  • Owner set to ryan
  • Type changed from enhancement to feature request

This doesnt really need to be done inside of WordPress, rather, its a feature request for the Themes directory.

With all the new functionalities in each version, and the functions which Themes can call to register certain things, Adding a required version would get a +1 for me.

#2 @ocean90
7 years ago

Related/Duplicate: #16868

#3 @bpetty
5 years ago

  • Cc bpetty added
  • Keywords needs-patch twentythirteen added
  • Milestone changed from WordPress.org to 3.6
  • Priority changed from normal to high
  • Summary changed from add require version tag to style.css to Twenty Thirteen: WordPress Version Requirement Support

Pushing this to 3.6 milestone since this is now a priority for Twenty Thirteen.

As discussed in Twenty Thirteen office hours, this theme will require WP 3.6 (mostly due to post formats focus).

The tasks involved here may include:

  • Hiding WP.org themes with specified requirement in style.css from themes API search used by older versions of WP (API and core work required).
  • Preventing activation of theme uploaded manually by ZIP if minimum required WP version is not met (which obviously won't help older versions of WP, but will help in the future with this).

See this post for more info.

#4 @lancewillett
5 years ago

  • Cc lancewillett added

#5 @philiparthurmoore
5 years ago

  • Cc philip@… added

#6 @pdclark
5 years ago

  • Keywords has-patch added; needs-patch removed

Uploaded patches for all the cases I could think of.

13780-check-theme-version-on-upload.diff​ checks theme's minimum required WordPress version not just on upload, but also when a theme is being installed from themes_api(). Because of this, 13780-check-theme-version-from-api.diff isn't really necessary unless modifying the remote API is worth saving a small bit of bandwidth.

13780-check-theme-version-on-activate.diff​ covers cases where a user might have uploaded a theme over FTP – it does a check during switch_theme(), which should catch when clicking "Activate" or doing a theme preview.

Some things to consider:

  • I used "Requires at least" as the plugin head key to match wordpress.org plugin syntax for readme.txt. If matching theme head / plugin head to readme.txt isn't necessary, then "Requires" is worth considering.
  • The WP_Error IDs being passed currently match their context -- incompatible_archive and themes_api_failed. A more specific error, like requirement_not_met might be appropriate
  • API revision isn't necessary when Theme_Upgrader is patched.

Items I didn't address:

  • Hiding incompatible themes outright in API search. It seems like a flag or warning might be more appropriate.

#7 @pdclark
5 years ago

  • Keywords needs-patch added; has-patch removed

@pdclark
5 years ago

Check theme version when uploading .zip. Checks for "Requires at least:" in theme style.css head.

@pdclark
5 years ago

Checks theme version when "requires" value sent by theme API.

@pdclark
5 years ago

Check theme version before switching themes. Checks for "Requires at least:" in theme style.css head.

#9 @lancewillett
5 years ago

In 23816:

Twenty Thirteen: add back-compat function to avoid activation with older WordPress installs. Props kovshenin, see #23819 and #13780.

#10 @bpetty
5 years ago

  • Milestone changed from 3.6 to WordPress.org

As the Twenty Thirteen part of this issue is handled, moving to WordPress.org milestone.

#11 @SergeyBiryukov
5 years ago

  • Summary changed from Twenty Thirteen: WordPress Version Requirement Support to WordPress Version Requirement Support for Themes

#12 @SergeyBiryukov
5 years ago

#16868 was marked as a duplicate.

#13 @cais
5 years ago

  • Cc edward.caissie@… added

#14 @mercime
5 years ago

  • Cc mercijavier@… added

#15 @DrewAPicture
4 years ago

  • Component changed from WordPress.org site to Themes
  • Keywords twentythirteen removed
  • Milestone changed from WordPress.org to Awaiting Review
  • Priority changed from high to normal

#16 @iandunn
4 years ago

The Meta team discussed this and concluded it's more of a Core issue, since the fundamental checks will happen there. If anything is needed from the API or the theme repo, please open ticket(s) on http://meta.trac.wordpress.org.

#17 @iandunn
4 years ago

  • Cc ian.dunn@… added

#18 @ryan
4 years ago

  • Owner ryan deleted
  • Status changed from new to assigned

#19 @chriscct7
2 years ago

  • Milestone Awaiting Review deleted
  • Resolution set to duplicate
  • Status changed from assigned to closed

Duplicate of #28574.

Note: See TracTickets for help on using tickets.