Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/wp-rocket/inc/Engine/Common/Head/ElementTrait.php
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
<?php
2
+
declare(strict_types=1);
3
+
namespace WP_Rocket\Engine\Common\Head;
4
+
5
+
/**
6
+
* Element trait.
7
+
*/
8
+
trait ElementTrait {
9
+
/**
10
+
* Preload link.
11
+
*
12
+
* @param array $args Element args.
13
+
* @return array|string[]
14
+
*/
15
+
protected function preload_link( array $args = [] ) {
16
+
$args['rel'] = 'preload';
17
+
$args[] = 'data-rocket-preload';
18
+
return $this->link( $args );
19
+
}
20
+
21
+
/**
22
+
* Preconnect link.
23
+
*
24
+
* @param array $args Element args.
25
+
* @return array|string[]
26
+
*/
27
+
protected function preconnect_link( array $args = [] ) {
28
+
$args['rel'] = 'preconnect';
29
+
return $this->link( $args );
30
+
}
31
+
32
+
/**
33
+
* Dns_prefetch link.
34
+
*
35
+
* @param array $args Element args.
36
+
* @return array|string[]
37
+
*/
38
+
protected function dns_prefetch_link( array $args = [] ) {
39
+
$args['rel'] = 'dns-prefetch';
40
+
return $this->link( $args );
41
+
}
42
+
43
+
/**
44
+
* Prefetch link.
45
+
*
46
+
* @param array $args Element args.
47
+
* @return array|string[]
48
+
*/
49
+
protected function prefetch_link( array $args = [] ) {
50
+
$args['rel'] = 'prefetch';
51
+
return $this->link( $args );
52
+
}
53
+
54
+
/**
55
+
* Prerender link.
56
+
*
57
+
* @param array $args Element args.
58
+
* @return array|string[]
59
+
*/
60
+
protected function prerender_link( array $args = [] ) {
61
+
$args['rel'] = 'prerender';
62
+
return $this->link( $args );
63
+
}
64
+
65
+
/**
66
+
* Stylesheet link.
67
+
*
68
+
* @param array $args Element args.
69
+
* @return array|string[]
70
+
*/
71
+
protected function stylesheet_link( array $args = [] ) {
72
+
$args['rel'] = 'stylesheet';
73
+
return $this->link( $args );
74
+
}
75
+
76
+
/**
77
+
* Style tag.
78
+
*
79
+
* @param string $css CSS content.
80
+
* @param array $args Element args.
81
+
* @return array|string[]
82
+
*/
83
+
protected function style_tag( string $css = '', array $args = [] ) {
84
+
$element = [
85
+
'open_tag' => '<style',
86
+
];
87
+
$element += wp_parse_args(
88
+
$args,
89
+
[
90
+
'inner_content' => $css,
91
+
]
92
+
);
93
+
$element['close_tag'] = '</style>';
94
+
95
+
return $element;
96
+
}
97
+
98
+
/**
99
+
* Noscript tag.
100
+
*
101
+
* @param string $content Element contents.
102
+
* @param array $args Element args.
103
+
* @return array|string[]
104
+
*/
105
+
protected function noscript_tag( string $content = '', array $args = [] ) {
106
+
$element = [
107
+
'open_tag' => '<noscript',
108
+
];
109
+
$element += wp_parse_args(
110
+
$args,
111
+
[
112
+
'inner_content' => $content,
113
+
]
114
+
);
115
+
$element['close_tag'] = '</noscript>';
116
+
117
+
return $element;
118
+
}
119
+
120
+
/**
121
+
* Generic link tag.
122
+
*
123
+
* @param array $args Element args.
124
+
* @return array|string[]
125
+
*/
126
+
private function link( array $args = [] ) {
127
+
$element = [
128
+
'open_tag' => '<link',
129
+
];
130
+
$element += wp_parse_args(
131
+
$args,
132
+
[
133
+
'href' => '',
134
+
]
135
+
);
136
+
137
+
return $element;
138
+
}
139
+
}
140
+