#49199 closed feature request (fixed)
Introduce Automatic Update opt-in setting for Themes
Reported by: | audrasjb | Owned by: | audrasjb |
---|---|---|---|
Milestone: | 5.5 | Priority: | normal |
Severity: | normal | Version: | |
Component: | Themes | Keywords: | has-screenshots has-patch |
Focuses: | administration, multisite | Cc: |
Description
Automatic Updates for core, plugins and themes are βone of the key projects for 2019 (and now 2020).
This ticket aims to introduce Automatic Updates for Themes.
For reference, there is already a Trac ticket to introduce Plugins Autoupdates.
For the moment, the goal of this ticket is to introduce Themes Autoupdates as an on-demand/opt-in setting so WordPress admins could choose manually which themes they want to auto-update. They could also disable previously enabled autoupdates as well.
Related: #48850
Attachments (14)
Change History (50)
@
5 years ago
Themes Screen: Deactivate autoupdate button + information about the next scheduled update
@
5 years ago
Updates screen (update-core.php): Informations about eventual scheduled autoupdates for Themes
#2
@
5 years ago
- Keywords has-patch added; needs-patch removed
49199.diff
is a first workaround for this feature.
Itβs an adaptation of my previous work on #48850, for themes.
#3
@
5 years ago
Please note that with 49199.diff
, automatic updates are triggered based on WordPress update/version check Cron.
To test this patch, you'll have to wait for the related cron task to happen (or to trigger it manually).
This ticket was mentioned in βSlack in #design by karmatosed. βView the logs.
5 years ago
This ticket was mentioned in βSlack in #core by francina. βView the logs.
5 years ago
This ticket was mentioned in βSlack in #design by karmatosed. βView the logs.
5 years ago
#8
@
5 years ago
- Keywords needs-design-feedback removed
I'm going to dive in here and give some feedback. First, I think there's a lot could be done but thinking about a minimum to do and build up, makes a lot of sense with a feature being worked on the whole year.
On the theme details screen, perhaps wouldn't bring another button in for 'disable auto update'. Maybe it's also not be 'live preview' and under the title?
As far as the updates screen makes sense I think using a new line for the scheduling information would make it clearer.
#9
@
5 years ago
49199.1.diffβ adjusts the text of the enable/disable actions to be the same as on Plugins proposal (#48850) as "Enable/Disable automatic updates" for consistency. Also moves it under the title in the theme overlay instead of being a button as well as splits the information into 2 lines under Updates page as proposed in comment 8.
Previews with this patch 49199.1_2_lines_on_updates.jpgβ , 49199.1_theme_overlay_under_title_with_update.jpgβ and 49199.1_theme_overlay_under_title_without_update.jpgβ
I hope I didn't miss anything (or misunderstood even π).
#10
@
5 years ago
- Owner set to audrasjb
- Status changed from new to accepted
@xkon I definitely vote for your proposal, it looks perfect to me! βοΈ
#11
@
5 years ago
In 49199.2.diff
, I added multisite support by replacing get_option
with get_site_option
and I replaced the option name for better consistency with plugins.
Also, I have to check but I think we'll probably need some other adjustments to handle properly mulitisites.
#12
@
5 years ago
Glad you like it! I just delivered the minor updates on the patch, thanks to π @karmatosed for showing the way haha π ( 8 ). I do like it very much as well, it's way more readable and looks really clean!
One question & noting also that I noticed on the previous (button) iteration.
The button was not visible to select automatic updating on the Active theme
(at least for me), was this intentional? By moving the links under the title they are now visible always for all themes active & inactive. I'm mentioning and making it clear to avoid any accidental breaking of flow.
#13
@
5 years ago
The button was not visible to select automatic updating on the Active theme (at least for me), was this intentional?
I could say it was intentional to save face, but I have to admit it wasn't a feature, it was definitely a bug. π
#15
@
5 years ago
In 49199.3.diff
:
- Added
WP_DISABLE_THEMES_AUTO_UPDATE
constant to disable auto updates - Added
wp_is_themes_auto_update_enabled()
PHP function to check wether the theme auto updates are enabled or not on the website - Added
wp_themes_auto_update_enabled
filter - Added some conditional statements so the auto update UI stuff is hidden if automatic updates are disabled
- Documented the new functions
It works fine on my side :-)
#16
@
5 years ago
- Focuses multisite added
Note: we have to implement the feature on Network Admin Theme screen (see screenshot above).
This ticket was mentioned in βSlack in #core by audrasjb. βView the logs.
5 years ago
#18
@
5 years ago
In 49199.4.diff
:
- Added multisite/network support for Themes Autoupdates.
Please test.
This ticket was mentioned in βSlack in #core-multisite by audrasjb. βView the logs.
5 years ago
#20
@
5 years ago
Left some feedback over on the plugin ticket that also applies to themes: https://core.trac.wordpress.org/ticket/48850#comment:46
#21
@
5 years ago
Related to the work that's gone on with plugins, I began to explore themes a bit. I think the extra button could be replaced by a section, a section makes it clearer. This could go below but also swap to the top.
This is clear, allows for messaging and causes less finger traps than a new button, clearer as a section.
When viewing all themes in multisite, it would be great to add that new auto update column from the plugins ticket @audrasjb - is that possible?
#22
@
5 years ago
Relating to the above, we need to make sure the language is the same as the plugin work being done, to align. That's where my explorations are coming from right now.
#23
@
5 years ago
A question regarding themes, how would you bulk enable or disable auto updates? I think as with plugins this might be useful.
#24
@
5 years ago
The button was removed some patches earlier from your previous comment at 8 and was moved right below the title as seen at 49199.1_theme_overlay_under_title_without_update.jpgβ.
Just mentioning in case it was missed :-), moving it at the bottom though seems like a much better positioning also as it's closer to the "actions" in general and doesn't get easily lost from the surrounding text!
#25
@
5 years ago
Thanks for clarity, I wasn't sure if the text was staying so happy about the button going. My point does still stand about it being a section I think feels better in this case, I am glad you seem to feel that too.
#26
@
5 years ago
Yep, I totally agree from what I see in the mockups!
Regarding the bulk since single sites don't have a "table" view, that will definitely need some extra thinking π
.
Would be possible to introduce a checkbox for example on the Single site Theme listing? I'm thinking maybe in a similar way as we have Bulk Select on Media? Not really sure if that would fit the overall design here though at all.
#27
@
5 years ago
I am wondering if for the first pass on themes, not including a bulk enable/disable mechanism (except in multisite on the network admin themes page where there is a list table) is reasonable.
While it's not uncommon for sites to have many installed themes, it is less common than having many plugins.
But, because the themes page is different, maybe adding something in the top bar next to the search input field would work?
#28
@
5 years ago
One consideration is that the message at the top is really quite prominent, however, I think that's being added not by this update and already in core? Just wanted to check that. Would we at all be able to move that to the bottom also and consider moving the update scheduling information outside? Maybe like this?
#29
@
5 years ago
Added some general thoughts to the plugins ticket, sharing those that apply here too.
- If
WP_DISABLE_THEMES_AUTO_UPDATE === true
,wp_is_themes_auto_update_enabled()
should return early and never hit the filter. This will prevent developers overriding the site owner's hard coded choice. - For themes that use semantic versioning and therefore may have breaking changes between versions, do we need to modify the .org API to return
offer_minor
andoffer_patch
to allow the theme additional control over how it may be auto updated - To prevent
malicious-plugin
from messing what's offerer togood-honest-themes
, do we need to use PHP Reflections to limit filters running on the the plugin to the theme itself. This is super complex I know but keep in mind the offered file can be changed from wp.org to malicious.org via filters. This is perhaps a topic for another time. - if
WP_DISABLE_THEMES_AUTO_UPDATE === true
and for sites using version control then the auto-updates UI ought not be displayed. - It looks like
WP_DISABLE_THEMES_AUTO_UPDATE
is a new constant, in which case please figure out a positive/negative setup so it matches the proposedWP_AUTO_UPDATE_PLUGINS
in the plugins ticket.
As with plugins, I think this is too late for 5.4. Could it be released as a feature plugin prior to the release of 5.5? Again, given everyone's hard work I apologise for the lateness of my feedback.
This ticket was mentioned in βSlack in #core by david.baumwald. βView the logs.
5 years ago
This ticket was mentioned in βSlack in #core by david.baumwald. βView the logs.
5 years ago
#34
@
5 years ago
Work on this has continued in the βWordPress Auto-updates feature plugin (via it's βGitHub repo).
The development of the feature plugin is close to being "feature complete" and we are getting ready to put together a merge proposal.
#35
@
4 years ago
- Keywords dev-feedback needs-dev-note early removed
- Resolution set to fixed
- Status changed from accepted to closed
Closing this ticket as the feature was introduced in #50052
Themes Screen: Activate autoupdate opt-in button