/var/www/html_de/wp-content/plugins/woocommerce/src/Blocks/Templates/ComingSoonTemplate.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
97
98
99
100
101
102
103
104
105
106
107
<?php
namespace Automattic\WooCommerce\Blocks\Templates;

/**
 * ComingSoonTemplate class.
 *
 * @internal
 */
class ComingSoonTemplate extends AbstractPageTemplate {

    
/**
     * The slug of the template.
     *
     * @var string
     */
    
const SLUG 'coming-soon';

    
/**
     * Returns the title of the template.
     *
     * @return string
     */
    
public function get_template_title() {
        return 
_x'Page: Coming soon''Template name''woocommerce' );
    }

    
/**
     * Returns the description of the template.
     *
     * @return string
     */
    
public function get_template_description() {
        return 
__'Let your shoppers know your site or part of your site is under construction.''woocommerce' );
    }

    
/**
     * Returns the page object assigned to this template/page.
     *
     * @return \WP_Post|null Post object or null.
     */
    
protected function get_placeholder_page() {
        return 
null;
    }

    
/**
     * True when viewing the coming soon page.
     *
     * @return boolean
     */
    
protected function is_active_template() {
        return 
false;
    }

    
/**
     * Returns the font family for the body and heading.
     *
     * When the current theme is not an FSE theme, we use the default fonts.
     * When the current theme is an FSE theme, we use the fonts from the theme.json file if available except for the 'twentytwentyfour' theme.
     *
     * @return array
     */
    
public static function get_font_families() {
        
$default_fonts = array(
            
'heading' => 'cardo',
            
'body'    => 'inter',
        );

        if ( ! 
wp_is_block_theme() ) {
            return 
$default_fonts;
        }

        
$current_theme wp_get_theme()->get_stylesheet();

        if ( 
'twentytwentyfour' === $current_theme ) {
            return array(
                
'heading' => 'heading',
                
'body'    => 'body',
            );
        }

        if ( ! 
function_exists'wp_get_global_settings' ) ) {
            return 
$default_fonts;
        }

        
$settings wp_get_global_settings();
        if (
            ! isset( 
$settings['typography']['fontFamilies']['theme'] )
            || ! 
is_array$settings['typography']['fontFamilies']['theme'] )
        ) {
            return 
$default_fonts;
        }

        
$theme_fonts $settings['typography']['fontFamilies']['theme'];

        
// Override default fonts if available in theme.json.
        
if ( isset( $theme_fonts[0]['slug'] ) && ! empty( $theme_fonts[0]['slug'] ) ) {
            
// Convert the font family to lowercase and replace spaces with hyphens.
            
$default_fonts['heading'] = strtolowerstr_replace' ''-'$theme_fonts[0]['slug'] ) );
        }
        if ( isset( 
$theme_fonts[1]['slug'] ) && ! empty( $theme_fonts[1]['slug'] ) ) {
            
$default_fonts['body']      = strtolowerstr_replace' ''-'$theme_fonts[1]['slug'] ) );
            
$default_fonts['paragraph'] = $default_fonts['body'];
        }

        return 
$default_fonts;
    }
}