PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 6.3.7
Jetpack – WP Security, Backup, Speed, & Growth v6.3.7
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
70 lines 2.0 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 ) );
43
44 _jetpack_require_compat_file( get_stylesheet(), $compat_files );
45
46 if ( is_child_theme() ) {
47 _jetpack_require_compat_file( get_template(), $compat_files );
48 }
49 }
50 add_action( 'after_setup_theme', 'jetpack_load_theme_compat', -1 );
51
52
53 /**
54 * Requires a file once, if the passed key exists in the files array.
55 *
56 * @access private
57 * @param string $key
58 * @param array $files
59 * @return void
60 */
61 function _jetpack_require_compat_file( $key, $files ) {
62 if ( ! is_string( $key ) ) {
63 return new WP_Error( 'key_not_string', 'The specified key is not actually a string.', compact( 'key' ) );
64 }
65
66 if ( array_key_exists( $key, $files ) && is_readable( $files[ $key ] ) ) {
67 require_once $files[ $key ];
68 }
69 }
70