PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 16.0-beta
Jetpack – WP Security, Backup, Speed, & Growth v16.0-beta
16.0 16.0-beta 16.0-a.7 16.0-a.5 15.9.1 16.0-a.3 16.0-a.1 15.9 15.9-beta 15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / modules / theme-tools / content-options.php
jetpack / modules / theme-tools Last commit date
compat 1 month ago content-options 2 weeks ago js 5 years ago responsive-videos 1 year ago site-logo 7 months ago social-menu 1 month ago content-options.php 7 months ago featured-content.php 7 months ago responsive-videos.php 7 months ago site-breadcrumbs.php 1 year ago site-logo.php 7 months ago social-links.php 7 months ago social-menu.php 7 months ago
content-options.php
189 lines
1 <?php
2 /**
3 * Jetpack Compatibility File
4 * See: https://jetpack.com/
5 *
6 * @package automattic/jetpack
7 */
8
9 if ( ! defined( 'ABSPATH' ) ) {
10 exit( 0 );
11 }
12
13 if ( ! class_exists( '\Automattic\Jetpack\Classic_Theme_Helper\Main' ) ) {
14
15 /**
16 * Content Options.
17 *
18 * This feature will only be activated for themes that declare their support.
19 * This can be done by adding code similar to the following during the
20 * 'after_setup_theme' action:
21 *
22 add_theme_support( 'jetpack-content-options', array(
23 'blog-display' => 'content', // the default setting of the theme: 'content', 'excerpt' or array( 'content', 'excerpt' ) for themes mixing both display.
24 'author-bio' => true, // display or not the author bio: true or false.
25 'author-bio-default' => false, // the default setting of the author bio, if it's being displayed or not: true or false (only required if false).
26 'avatar-default' => true, // display or not the default avatar for the author bio: true or false.
27 'masonry' => '.site-main', // a CSS selector matching the elements that triggers a masonry refresh if the theme is using a masonry layout.
28 'post-details' => array(
29 'stylesheet' => 'themeslug-style', // name of the theme's stylesheet.
30 'date' => '.posted-on', // a CSS selector matching the elements that display the post date.
31 'categories' => '.cat-links', // a CSS selector matching the elements that display the post categories.
32 'tags' => '.tags-links', // a CSS selector matching the elements that display the post tags.
33 'author' => '.byline', // a CSS selector matching the elements that display the post author.
34 'comment' => '.comments-link', // a CSS selector matching the elements that display the comment link.
35 ),
36 'featured-images' => array(
37 'archive' => true, // enable or not the featured image check for archive pages: true or false.
38 'archive-default' => false, // the default setting of the featured image on archive pages, if it's being displayed or not: true or false (only required if false).
39 'post' => true, // enable or not the featured image check for single posts: true or false.
40 'post-default' => false, // the default setting of the featured image on single posts, if it's being displayed or not: true or false (only required if false).
41 'page' => true, // enable or not the featured image check for single pages: true or false.
42 'page-default' => false, // the default setting of the featured image on single pages, if it's being displayed or not: true or false (only required if false).
43 'portfolio' => true, // enable or not the featured image check for single projects: true or false.
44 'portfolio-default' => false, // the default setting of the featured image on single projects, if it's being displayed or not: true or false (only required if false).
45 'fallback' => true, // enable or not the featured image fallback: true or false.
46 'fallback-default' => true, // the default setting for featured image fallbacks: true or false (only required if false)
47 ),
48 ) );
49 */
50
51 if ( ! function_exists( 'jetpack_content_options_init' ) ) {
52
53 /**
54 * Activate the Content Options plugin.
55 *
56 * @deprecated 13.9 Moved to Classic Theme Helper package.
57 * @uses current_theme_supports()
58 */
59 function jetpack_content_options_init() {
60 _deprecated_function( __FUNCTION__, 'jetpack-13.9' );
61 // If the theme doesn't support 'jetpack-content-options', don't continue.
62 if ( ! current_theme_supports( 'jetpack-content-options' ) ) {
63 return;
64 }
65
66 // Load the Customizer options.
67 require __DIR__ . '/content-options/customizer.php';
68
69 // Load Blog Display function.
70 require __DIR__ . '/content-options/blog-display.php';
71
72 // Load Author Bio function.
73 require __DIR__ . '/content-options/author-bio.php';
74
75 // Load Post Details function.
76 require __DIR__ . '/content-options/post-details.php';
77
78 // Load Featured Images function.
79 if ( jetpack_featured_images_should_load() ) {
80 require __DIR__ . '/content-options/featured-images.php';
81 }
82
83 // Load Featured Images Fallback function.
84 if ( jetpack_featured_images_fallback_should_load() ) {
85 require __DIR__ . '/content-options/featured-images-fallback.php';
86 }
87 }
88 add_action( 'init', 'jetpack_content_options_init' );
89
90 }
91
92 if ( ! function_exists( 'jetpack_featured_images_get_settings' ) ) {
93
94 /**
95 * Get featured images settings using the jetpack-content-options theme support.
96 *
97 * @deprecated 13.9 Moved to Classic Theme Helper package.
98 */
99 function jetpack_featured_images_get_settings() {
100 _deprecated_function( __FUNCTION__, 'jetpack-13.9' );
101 $options = get_theme_support( 'jetpack-content-options' );
102
103 $featured_images = ( ! empty( $options[0]['featured-images'] ) ) ? $options[0]['featured-images'] : null;
104
105 $settings = array(
106 'archive' => ( ! empty( $featured_images['archive'] ) ) ? $featured_images['archive'] : null,
107 'post' => ( ! empty( $featured_images['post'] ) ) ? $featured_images['post'] : null,
108 'page' => ( ! empty( $featured_images['page'] ) ) ? $featured_images['page'] : null,
109 'portfolio' => ( ! empty( $featured_images['portfolio'] ) ) ? $featured_images['portfolio'] : null,
110 'archive-default' => ( isset( $featured_images['archive-default'] ) && false === $featured_images['archive-default'] ) ? '' : 1,
111 'post-default' => ( isset( $featured_images['post-default'] ) && false === $featured_images['post-default'] ) ? '' : 1,
112 'page-default' => ( isset( $featured_images['page-default'] ) && false === $featured_images['page-default'] ) ? '' : 1,
113 'portfolio-default' => ( isset( $featured_images['portfolio-default'] ) && false === $featured_images['portfolio-default'] ) ? '' : 1,
114 'fallback' => ( ! empty( $featured_images['fallback'] ) ) ? $featured_images['fallback'] : null,
115 'fallback-default' => ( isset( $featured_images['fallback-default'] ) && false === $featured_images['fallback-default'] ) ? '' : 1,
116 );
117
118 $settings = array_merge(
119 $settings,
120 array(
121 'archive-option' => get_option( 'jetpack_content_featured_images_archive', $settings['archive-default'] ),
122 'post-option' => get_option( 'jetpack_content_featured_images_post', $settings['post-default'] ),
123 'page-option' => get_option( 'jetpack_content_featured_images_page', $settings['page-default'] ),
124 'portfolio-option' => get_option( 'jetpack_content_featured_images_portfolio', $settings['portfolio-default'] ),
125 'fallback-option' => get_option( 'jetpack_content_featured_images_fallback', $settings['fallback-default'] ),
126 )
127 );
128
129 return $settings;
130 }
131
132 }
133
134 if ( ! function_exists( 'jetpack_featured_images_should_load' ) ) {
135
136 /**
137 * Determine if the Jetpack Featured Images should be load.
138 *
139 * @deprecated 13.9 Moved to Classic Theme Helper package.
140 */
141 function jetpack_featured_images_should_load() {
142 _deprecated_function( __FUNCTION__, 'jetpack-13.9' );
143 // If the theme doesn't support post thumbnails, don't continue.
144 if ( ! current_theme_supports( 'post-thumbnails' ) ) {
145 return false;
146 }
147
148 $opts = jetpack_featured_images_get_settings();
149
150 // If the theme doesn't support archive, post and page or if all the options are ticked and we aren't in the customizer, don't continue.
151 if (
152 ( true !== $opts['archive'] && true !== $opts['post'] && true !== $opts['page'] )
153 || ( 1 === $opts['archive-option'] && 1 === $opts['post-option'] && 1 === $opts['page-option'] && ! is_customize_preview() )
154 ) {
155 return false;
156 }
157
158 return true;
159 }
160
161 }
162
163 if ( ! function_exists( 'jetpack_featured_images_fallback_should_load' ) ) {
164
165 /**
166 * Determine if the Jetpack Featured Images fallback should load.
167 *
168 * @deprecated 13.9 Moved to Classic Theme Helper package.
169 */
170 function jetpack_featured_images_fallback_should_load() {
171 _deprecated_function( __FUNCTION__, 'jetpack-13.9' );
172 // If the theme doesn't support post thumbnails, don't continue.
173 if ( ! current_theme_supports( 'post-thumbnails' ) ) {
174 return false;
175 }
176
177 $opts = jetpack_featured_images_get_settings();
178
179 // If the theme doesn't support fallback, don't continue.
180 if ( true !== $opts['fallback'] ) {
181 return false;
182 }
183
184 return true;
185 }
186
187 }
188 }
189