[Bug]: Regenerate theme zips with a php8 compatible updater
Quick summary
Until recently the theme updater that gets bundled with theme zips generated by WordPress.com wasn't compatible with WordPress multi-site installs on PHP8. This incompatibility has been fixed and dozens of themes have been updated to take advantage of it.
The themes below were left to update as of 2024-01-26. Some may have been updated since then due to maintenance releases etc, I've listed the affected versions in brackets.
Steps to reproduce
- Download one of the named themes from wordpress.com/themes
- Check that the version number matches the number listed for that theme above, if the downloaded version is greater then it can be removed from the list. If it's the same, then the issue will be reproducible.
- Upload the theme via a multi-site network admin (you can use jurassic.ninja to quickly spin-up a multisite)
- Network enable the theme
- Activate it on one of the sites
- Visit wp-admin
What you expected to happen
wp-admin to load normally
What actually happened
wp-admin displays the menu and top toolbar, but the content area just says "There has been a critical error on this website."
Browser
No response
Context
No response
Platform (Simple, Atomic, or both?)
No response
Other notes
~~adventurer (1.0.3)~~ ~~aldente (1.0.3)~~ ~~alter (1.0.0)~~ ~~antonia (1.0.5)~~ ~~appleton (1.0.7)~~ ~~arbutus (1.0.17)~~ ~~archeo (1.0.20)~~ ~~archivo (1.0.5)~~ ~~artly (1.0.4)~~ ~~assembler (0.0.6)~~ ~~attar (1.0.4)~~ ~~awburn (1.0.4)~~ ~~azur (1.0.0)~~ ~~barnsbury23 (1.0.2)~~ ~~bedrock (1.0.1)~~ ~~beep (1.0.1)~~ ~~bennett (1.0.3)~~ ~~bibimbap (1.0.5)~~ ~~bibliophile (1.0.1)~~ bitacora (1.0.8) ~~blank-canvas-3 (1.0.10)~~ ~~blank-canvas-blocks (0.0.8)~~ ~~blank-canvas (1.2.11)~~ block-canvas (0.0.30) ~~blockbase (3.1.16)~~ ~~blogorama (1.0.0)~~ ~~boxedbio (1.0.0)~~ ~~brompton (1.4.27)~~ ~~bsoj (1.0.2)~~ ~~bute (1.0.2)~~ ~~calvin (1.0.2)~~ ~~calyx (1.0.13)~~ ~~common (1.0.3)~~ ~~cortado (1.0.2)~~ ~~course (1.3.6)~~ ~~covr (1.0.4)~~ ~~craftfully (1.0.1)~~ ~~creatio-2 (1.0.5)~~ ~~creatio (1.0.4)~~ ~~ctlg (1.0.2)~~ ~~curriculum (1.0.2)~~ ~~didone (1.0.2)~~ ~~disco (1.0.5)~~ ~~dorna (1.0.3)~~ ~~dos (1.0.1)~~ ~~entry (1.0.1)~~ ~~erma (1.0.8)~~ ~~eventual (1.0.0)~~ ~~farrow (1.0.1)~~ ~~fewer (1.0.5)~~ ~~freddie (1.0.0)~~ ~~geologist (1.0.43)~~ ~~george-lois (1.0.4)~~ ~~grammerone (1.0.1)~~ ~~hall (1.0.0)~~ ~~hari (1.0.3)~~ ~~heiwa (1.0.6)~~ ~~hey (1.0.6)~~ ~~ibis (1.1)~~ ~~ici (1.0.1)~~ ~~indice (1.0.2)~~ ~~iotix (1.0.9)~~ ~~issue (1.0.1)~~ ~~jackson (1.0.3)~~ ~~jaida (1.0.1)~~ ~~jinjang (1.0.0)~~ ~~kigen (1.0.2)~~ ~~kingsley (1.0.5)~~ ~~lativ (1.0.1)~~ ~~lettre (1.1.10)~~ ~~leven~~ ~~lineup (1.0.3)~~ ~~livro (1.0.24)~~ ~~loic (1.0.1)~~ ~~lois (1.0.2)~~ ~~loudness (1.0.9)~~ ~~luce (1.0.1)~~ ~~luminance (1.0.0)~~ ~~lynx (1.0.27)~~ ~~marl (1.0.4)~~ ~~masu (1.0.3)~~ ~~mayland-blocks (2.1.33)~~ ~~meraki (1.0.11)~~ ~~messagerie (1.0.1)~~ ~~montagna (1.0.3)~~ ~~mpho (1.0.3)~~ ~~muscat (1.0.4)~~ ~~negai (1.0.2)~~ ~~nook (1.0.1)~~ ~~optimismo (1.0.2)~~ ~~organizer (1.0.1)~~ ~~otis (1.0.1)~~ ~~overlaid (1.0.0)~~ ~~paimio (1.0.4)~~ ~~pendant (1.0.15)~~ ~~pieria (1.0.2)~~ ~~pixl (1.0.6)~~ ~~poema (1.0.1)~~ ~~poesis (1.0.3)~~ ~~pomme (1.0.0)~~ ~~programme (1.0.0)~~ ~~quadrat (1.1.55)~~ ~~rainfall (1.0.9)~~ ~~raw (1.0.2)~~ ~~redhill (1.5.26)~~ ~~remote (1.1.3)~~ ~~reverie (1.0.3)~~ ~~ritratto (1.0.1)~~ ~~ron (1.0.3)~~ ~~russell (1.0.28)~~ ~~screenplay (1.0.0)~~ ~~seedlet-blocks (2.1.32)~~ ~~seedlet (1.1.30)~~ ~~skatepark (1.0.52)~~ ~~spearhead-blocks (1.0.4)~~ ~~spearhead (1.3.16)~~ ~~spiel (1.0.3)~~ ~~stage (1.0.1)~~ ~~startfit (1.0.3)~~ ~~sten (1.0.2)~~ ~~stewart (1.16)~~ ~~storia (1.0.5)~~ ~~strand (1.0.2)~~ ~~sunderland (1.0.2)~~ ~~tenaz (1.0.4)~~ ~~texty (1.0.2)~~ ~~the-menu (1.0.1)~~ ~~tomoni (1.0.2)~~ ~~trellick (1.0.3)~~ ~~tronar (1.0.1)~~ ~~tu (1.0.2)~~ ~~twentytwentytwo-blue (1.8.1)~~ ~~twentytwentytwo-mint (1.8.1)~~ twentytwentytwo-pink (1.8.1) ~~twentytwentytwo-red (1.8.1)~~ ~~twentytwentytwo-swiss (1.8.1)~~ ueno (1.0.5) ~~upsidedown (1.0.4)~~ ~~varia (1.6.30)~~ ~~verso (1.0.1)~~ ~~vetro (1.0.10)~~ ~~vivre (1.0.7)~~ ~~winkel (1.0.3)~~ ~~xanadu (1.0.1)~~ ~~zoologist (1.0.43)~~
Reproducibility
Consistent
Severity
It affects people downloading some free themes from WordPress.com and using them on their own multi-site installs.
Available workarounds?
Yes
Workaround details
Fix the PHP8 errors bundled in the bundled updater.php by marking the functions called statically as static. See D135616-code for changes to the source copy.