PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 7.5.1
Jetpack – WP Security, Backup, Speed, & Growth v7.5.1
12.0.3 12.1.3 12.2.3 12.3.2 12.4.2 12.5.2 12.6.4 12.7.3 12.8.3 12.9.5 13.0.2 13.1.5 13.2.4 13.3.3 13.4.5 13.5.2 13.6.2 13.7.2 13.8.3 13.9.2 14.0.1 14.1.1 14.2.2 14.3.1 14.4.2 All 500 releases
jetpack / modules / theme-tools.php
theme-tools.php
71 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /*
3 * Load code specific to themes or theme tools
4 * This file is special, and is not an actual `module` as such.
5 * It is included by ./module-extras.php
6 */
7
8 function jetpack_load_theme_tools() {
9 if ( current_theme_supports( 'tonesque' ) ) {
10 jetpack_require_lib( 'tonesque' );
11 }
12 }
13 add_action( 'init', 'jetpack_load_theme_tools', 30 );
14
15 /**
16 * Load theme compat file if it exists.
17 */
18 function jetpack_load_theme_compat() {
19
20 /**
21 * Filter theme compat files.
22 *
23 * Themes can add their own compat files here if they like. For example:
24 *
25 * add_filter( 'jetpack_theme_compat_files', 'mytheme_jetpack_compat_file' );
26 * function mytheme_jetpack_compat_file( $files ) {
27 * $files['mytheme'] = locate_template( 'jetpack-compat.php' );
28 * return $files;
29 * }
30 *
31 * @module theme-tools
32 *
33 * @since 2.8.0
34 *
35 * @param array Associative array of theme compat files to load.
36 */
37 $compat_files = apply_filters( 'jetpack_theme_compat_files', array(
38 'twentyfourteen' => JETPACK__PLUGIN_DIR . 'modules/theme-tools/compat/twentyfourteen.php',
39 'twentyfifteen' => JETPACK__PLUGIN_DIR . 'modules/theme-tools/compat/twentyfifteen.php',
40 'twentysixteen' => JETPACK__PLUGIN_DIR . 'modules/theme-tools/compat/twentysixteen.php',
41 'twentyseventeen' => JETPACK__PLUGIN_DIR . 'modules/theme-tools/compat/twentyseventeen.php',
42 'twentynineteen' => JETPACK__PLUGIN_DIR . 'modules/theme-tools/compat/twentynineteen.php',
43 ) );
44
45 _jetpack_require_compat_file( get_stylesheet(), $compat_files );
46
47 if ( is_child_theme() ) {
48 _jetpack_require_compat_file( get_template(), $compat_files );
49 }
50 }
51 add_action( 'after_setup_theme', 'jetpack_load_theme_compat', -1 );
52
53
54 /**
55 * Requires a file once, if the passed key exists in the files array.
56 *
57 * @access private
58 * @param string $key
59 * @param array $files
60 * @return void
61 */
62 function _jetpack_require_compat_file( $key, $files ) {
63 if ( ! is_string( $key ) ) {
64 return new WP_Error( 'key_not_string', 'The specified key is not actually a string.', compact( 'key' ) );
65 }
66
67 if ( array_key_exists( $key, $files ) && is_readable( $files[ $key ] ) ) {
68 require_once $files[ $key ];
69 }
70 }
71