forked from richtabor/MerlinWP
-
Notifications
You must be signed in to change notification settings - Fork 0
/
merlin-filters.php
executable file
·93 lines (80 loc) · 2.82 KB
/
merlin-filters.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
<?php
/**
* Available filters for extending Merlin WP.
*
* @package Merlin WP
* @version @@pkg.version
* @link https://merlinwp.com/
* @author Richard Tabor, from ThemeBeans.com
* @copyright Copyright (c) 2017, Merlin WP of Inventionn LLC
* @license Licensed GPLv3 for open source use
*/
/**
* Filter the home page title from your demo content.
* If your demo's home page title is "Home", you don't need this.
*
* @param string $output Home page title.
*/
function prefix_merlin_content_home_page_title( $output ) {
return 'My front page';
}
add_filter( 'merlin_content_home_page_title', 'prefix_merlin_content_home_page_title' );
/**
* Filter the blog page title from your demo content.
* If your demo's blog page title is "Blog", you don't need this.
*
* @param string $output Index blogroll page title.
*/
function prefix_merlin_content_blog_page_title( $output ) {
return 'Journal';
}
add_filter( 'merlin_content_blog_page_title', 'prefix_merlin_content_blog_page_title' );
/**
* Add your widget area to unset the default widgets from.
* If your theme's first widget area is "sidebar-1", you don't need this.
*
* @see https://stackoverflow.com/questions/11757461/how-to-populate-widgets-on-sidebar-on-theme-activation
*
* @param array $widget_areas Arguments for the sidebars_widgets widget areas.
* @return array of arguments to update the sidebars_widgets option.
*/
function prefix_merlin_unset_default_widgets_args( $widget_areas ) {
$widget_areas = array(
'sidebar-1' => array(),
);
return $widget_areas;
}
add_filter( 'merlin_unset_default_widgets_args', 'prefix_merlin_unset_default_widgets_args' );
/**
* Custom content for the generated child theme's functions.php file.
*
* @param string $output Generated content.
* @param string $slug Parent theme slug.
*/
function prefix_generate_child_functions_php( $output, $slug ) {
$slug_no_hyphens = strtolower( preg_replace( '#[^a-zA-Z]#', '', $slug ) );
$output = "
<?php
/**
* Theme functions and definitions.
*/
function {$slug_no_hyphens}_child_enqueue_styles() {
if ( SCRIPT_DEBUG ) {
wp_enqueue_style( '{$slug}-style' , get_template_directory_uri() . '/style.css' );
} else {
wp_enqueue_style( '{$slug}-minified-style' , get_template_directory_uri() . '/style.min.css' );
}
wp_enqueue_style( '{$slug}-child-style',
get_stylesheet_directory_uri() . '/style.css',
array( '{$slug}-style' ),
wp_get_theme()->get('Version')
);
}
add_action( 'wp_enqueue_scripts', '{$slug_no_hyphens}_child_enqueue_styles' );\n
";
// Let's remove the tabs so that it displays nicely.
$output = trim( preg_replace( '/\t+/', '', $output ) );
// Filterable return.
return $output;
}
add_filter( 'merlin_generate_child_functions_php', 'prefix_generate_child_functions_php', 10, 2 );