-
Notifications
You must be signed in to change notification settings - Fork 0
/
functions.php
96 lines (79 loc) · 2.25 KB
/
functions.php
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
<?php
function ahdpress_setup()
{
add_theme_support('title-tag');
register_nav_menus(
array(
'primary' => __('Primary Menu', 'ahdpress'),
)
);
add_theme_support('html5', array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption'
));
add_theme_support('custom-logo');
add_theme_support('post-thumbnails');
add_theme_support('align-wide');
add_theme_support('wp-block-styles');
add_theme_support('editor-styles');
add_theme_support('css/editor-style.css');
}
add_action('after_setup_theme', 'ahdpress-setup');
/**
* Enqueue theme assets.
*/
function ahdpress_enqueue_scripts()
{
$theme = wp_get_theme();
wp_enqueue_style('ahdpress', ahdpress_asset('css/app.css'), array(), $theme->get('Version'));
wp_enqueue_script('ahdpress', ahdpress_asset('js/app.js'), array(), $theme->get('Version'));
}
add_action('wp_enqueue_scripts', 'ahdpress_enqueue_scripts');
/**
* @param string $path Path to asset.
*
* @return string
*/
function ahdpress_asset($path)
{
if (wp_get_environment_type() === 'production') {
return get_stylesheet_directory_uri() . '/' . $path;
}
return add_query_arg('time', time(), get_stylesheet_directory_uri() . '/' . $path);
}
/**
* Adds option 'li_class' to 'wp_nav_menu'.
* @param string $classes String of classes.
* @param mixed $item The current item.
* @param WP_Term $args Holds the nav menu arguments.
*
*
*/
function ahdpress_nav_menu_add_li_class($classes, $item, $args, $depth)
{
if (isset($args->li_class)) {
$classes[] = $args->li_class;
}
if (isset($args->{"li_class_$depth"})) {
$classes[] = $args->{"li_class_$depth"};
}
return $classes;
}
add_filter('nav_menu_css_class', 'ahdpress_nav_menu_add_li_class', 10, 4);
/**
* Adds option 'submenu_class' to 'wp_nav_menu'
*/
function ahdpress_nav_menu_add_submenu_class($classes, $args, $depth)
{
if (isset($args->submenu_class)) {
$classes[] = $args->submenu_class;
}
if (isset($args->{"submenu_class_$depth"})) {
$classes[] = $args->{"submenu_class_$depth"};
}
return $classes;
}
add_filter('nav_menu_submenu_css_class', 'ahdpress_nav_menu_add_submenu_class', 10, 3);