1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<?php
/**
* Jetpack Search Overlay Settings
*
* @package automattic/jetpack-search
*/
namespace Automattic\Jetpack\Search;
// Exit if file is accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Class to initialize search settings on the site.
*/
class Settings {
/**
* Class initialization.
*/
public function __construct() {
add_action( 'admin_init', array( $this, 'settings_register' ) );
add_action( 'rest_api_init', array( $this, 'settings_register' ) );
}
/**
* Register requisite settings.
*
* @since 9.x.x
*/
public function settings_register() {
// NOTE: This contains significant code overlap with class-jetpack-search-customize.
$setting_prefix = Options::OPTION_PREFIX;
$settings = array(
array( $setting_prefix . 'color_theme', 'string', 'light' ),
array( $setting_prefix . 'result_format', 'string', 'minimal' ),
array( $setting_prefix . 'default_sort', 'string', 'relevance' ),
array( $setting_prefix . 'overlay_trigger', 'string', 'results' ),
array( $setting_prefix . 'excluded_post_types', 'string', '' ),
array( $setting_prefix . 'highlight_color', 'string', '#FFC' ),
array( $setting_prefix . 'enable_sort', 'boolean', true ),
array( $setting_prefix . 'inf_scroll', 'boolean', true ),
array( $setting_prefix . 'show_powered_by', 'boolean', true ),
);
foreach ( $settings as $value ) {
register_setting(
'options',
$value[0],
array(
'default' => $value[2],
'show_in_rest' => true,
'type' => $value[1],
)
);
}
}
}
|