|
1 <?php |
|
2 /** |
|
3 * Twenty Thirteen back compat functionality |
|
4 * |
|
5 * Prevents Twenty Thirteen from running on WordPress versions prior to 3.6, |
|
6 * since this theme is not meant to be backward compatible and relies on |
|
7 * many new functions and markup changes introduced in 3.6. |
|
8 * |
|
9 * @package WordPress |
|
10 * @subpackage Twenty_Thirteen |
|
11 * @since Twenty Thirteen 1.0 |
|
12 */ |
|
13 |
|
14 /** |
|
15 * Prevent switching to Twenty Thirteen on old versions of WordPress. |
|
16 * |
|
17 * Switches to the default theme. |
|
18 * |
|
19 * @since Twenty Thirteen 1.0 |
|
20 * |
|
21 * @return void |
|
22 */ |
|
23 function twentythirteen_switch_theme() { |
|
24 switch_theme( WP_DEFAULT_THEME, WP_DEFAULT_THEME ); |
|
25 unset( $_GET['activated'] ); |
|
26 add_action( 'admin_notices', 'twentythirteen_upgrade_notice' ); |
|
27 } |
|
28 add_action( 'after_switch_theme', 'twentythirteen_switch_theme' ); |
|
29 |
|
30 /** |
|
31 * Add message for unsuccessful theme switch. |
|
32 * |
|
33 * Prints an update nag after an unsuccessful attempt to switch to |
|
34 * Twenty Thirteen on WordPress versions prior to 3.6. |
|
35 * |
|
36 * @since Twenty Thirteen 1.0 |
|
37 * |
|
38 * @return void |
|
39 */ |
|
40 function twentythirteen_upgrade_notice() { |
|
41 $message = sprintf( __( 'Twenty Thirteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again.', 'twentythirteen' ), $GLOBALS['wp_version'] ); |
|
42 printf( '<div class="error"><p>%s</p></div>', $message ); |
|
43 } |
|
44 |
|
45 /** |
|
46 * Prevent the Theme Customizer from being loaded on WordPress versions prior to 3.6. |
|
47 * |
|
48 * @since Twenty Thirteen 1.0 |
|
49 * |
|
50 * @return void |
|
51 */ |
|
52 function twentythirteen_customize() { |
|
53 wp_die( sprintf( __( 'Twenty Thirteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again.', 'twentythirteen' ), $GLOBALS['wp_version'] ), '', array( |
|
54 'back_link' => true, |
|
55 ) ); |
|
56 } |
|
57 add_action( 'load-customize.php', 'twentythirteen_customize' ); |
|
58 |
|
59 /** |
|
60 * Prevent the Theme Preview from being loaded on WordPress versions prior to 3.4. |
|
61 * |
|
62 * @since Twenty Thirteen 1.0 |
|
63 * |
|
64 * @return void |
|
65 */ |
|
66 function twentythirteen_preview() { |
|
67 if ( isset( $_GET['preview'] ) ) { |
|
68 wp_die( sprintf( __( 'Twenty Thirteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again.', 'twentythirteen' ), $GLOBALS['wp_version'] ) ); |
|
69 } |
|
70 } |
|
71 add_action( 'template_redirect', 'twentythirteen_preview' ); |