forked from richtabor/kanso
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfunctions.php
More file actions
137 lines (115 loc) · 2.81 KB
/
functions.php
File metadata and controls
137 lines (115 loc) · 2.81 KB
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?php
/**
* Kanso functions and definitions
*
* @link https://developer.wordpress.org/themes/basics/theme-functions/
*
* @package Kanso
* @since Kanso 1.0
*/
if ( ! function_exists( 'kanso_setup' ) ) :
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* @since Kanso 1.0
*
* @return void
*/
function kanso_setup() {
// Remove theme support for the core and featured patterns coming from the WordPress.org pattern directory (for now).
remove_theme_support( 'core-block-patterns' );
}
endif;
add_action( 'after_setup_theme', 'kanso_setup' );
if ( ! function_exists( 'kanso_styles' ) ) :
/**
* Enqueue main stylesheet.
*
* @since Kanso 1.0
*
* @return void
*/
function kanso_styles() {
$theme_version = wp_get_theme()->get( 'Version' );
$version_string = is_string( $theme_version ) ? $theme_version : false;
// Register theme stylesheet.
wp_register_style(
'kanso-style',
get_stylesheet_directory_uri() . '/style.css',
array(),
$version_string
);
// Enqueue theme stylesheet.
wp_enqueue_style( 'kanso-style' );
}
endif;
add_action( 'wp_enqueue_scripts', 'kanso_styles' );
if ( ! function_exists( 'kanso_editor_styles' ) ) :
/**
* Enqueue style.css into the editor.
*
* @since Kanso 1.0
*
* @return void
*/
function kanso_editor_styles() {
// Enqueue theme stylesheet there are custom styles.
add_editor_style( 'style.css' );
}
endif;
add_action( 'admin_init', 'kanso_editor_styles' );
if ( ! function_exists( 'kanso_register_pattern_categories' ) ) :
/**
* Register pattern categories.
*
* @since Kanso 1.0
*
* @return void
*/
function kanso_register_pattern_categories() {
register_block_pattern_category(
'newsletter',
array( 'label' => __( 'Newsletter', 'kanso' ) )
);
register_block_pattern_category(
'blog',
array( 'label' => __( 'Blog', 'kanso' ) )
);
}
endif;
add_action( 'init', 'kanso_register_pattern_categories' );
/**
* Enqueue button block styles when read-more block is present
*/
function kanso_enqueue_read_more_button_styles() {
if ( is_admin() || ! is_singular() ) {
return;
}
global $post;
// Check if post content contains read-more block
if ( has_block( 'core/read-more', $post ) ) {
// Enqueue the button block styles
wp_enqueue_style( 'wp-block-button' );
}
}
add_action( 'wp_enqueue_scripts', 'kanso_enqueue_read_more_button_styles' );
/**
* Register read-more button style variation
*/
function kanso_register_read_more_button_style() {
register_block_style(
'core/read-more',
array(
'name' => 'button',
'label' => __( 'Button', 'kanso' ),
)
);
register_block_style(
'core/read-more',
array(
'name' => 'button-outline',
'label' => __( 'Button Outline', 'kanso' ),
)
);
}
add_action( 'init', 'kanso_register_read_more_button_style' );