WordPress.org

Make WordPress Core

Opened 4 years ago

Last modified 2 years ago

#14849 new enhancement

Rewrite rules should be flushed when you switch themes

Reported by: jorbin Owned by:
Milestone: Future Release Priority: normal
Severity: normal Version: 3.0
Component: Permalinks Keywords: needs-patch
Focuses: Cc:

Description

@nacin said so at WCMA, so here's a patch to do it.

Attachments (1)

theme.php.15608.diff (380 bytes) - added by jorbin 4 years ago.

Download all attachments as: .zip

Change History (13)

jorbin4 years ago

comment:1 greenshady4 years ago

Why should rewrite rules be flushed when switching themes?

comment:2 follow-up: filosofo4 years ago

I suppose in case a theme is using custom post types. But it seems that, like plugins, themes that need flushed rules should handle it themselves.

comment:3 in reply to: ↑ 2 nacin4 years ago

Replying to filosofo:

But it seems that, like plugins, themes that need flushed rules should handle it themselves.

Unfortunately, there's no activation hook for them to do so. (For example P2 uses an option to store whether rules have been flushed.) I suggested this in response to a question for how to handle things that add rewrite rules...

I don't think this patch will work, though, because the new theme isn't included on that pageload so the old rules will still be regenerated. Sounds to me that to do an activation hook for themes, we need to add an autoloaded option to keep track.

comment:4 greenshady4 years ago

Adding an activation hook sounds like the best solution for this. We have switch_theme, which works on deactivation. Themes that add custom post types and taxonomies should be flushing the rewrite rules themselves.

comment:5 hakre4 years ago

+1 for theme activation hook.

comment:6 dd324 years ago

  • Keywords needs-patch added; has-patch removed

resetting keywords since the attached patch will not work as intended.

comment:7 jane3 years ago

  • Version set to 3.0

If anyone would like to get this in for 3.1, there are a few days left to submit patches for enhancements before freeze.

comment:8 johnpbloch3 years ago

  • Cc johnpbloch added

comment:9 nacin3 years ago

  • Milestone changed from 3.1 to Future Release

This is done in 3.0 on wp-admin/themes.php. We should do this better, in conjunction with a real theme activation hook, in the future.

Version 0, edited 3 years ago by nacin (next)

comment:10 nacin3 years ago

FYI, the jank was removed in 3.1. [17241]. Need to do this properly in 3.2.

comment:11 WraithKenny3 years ago

  • Cc Ken@… added

comment:12 scribu2 years ago

Related: #7795

Note: See TracTickets for help on using tickets.