PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 6.6
Jetpack – WP Security, Backup, Speed, & Growth v6.6
16.2-beta 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 All 501 releases
jetpack / modules / theme-tools.php

theme-tools.php in Jetpack – WP Security, Backup, Speed, & Growth 6.6, at modules/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