You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.8 KiB
70 lines
1.8 KiB
<?php |
|
/** |
|
* Twenty Twenty SVG Icon helper functions |
|
* |
|
* @package WordPress |
|
* @subpackage Twenty_Twenty |
|
* @since 1.0.0 |
|
*/ |
|
|
|
if ( ! function_exists( 'twentytwenty_the_theme_svg' ) ) { |
|
/** |
|
* Output and Get Theme SVG. |
|
* Output and get the SVG markup for an icon in the TwentyTwenty_SVG_Icons class. |
|
* |
|
* @param string $svg_name The name of the icon. |
|
* @param string $group The group the icon belongs to. |
|
* @param string $color Color code. |
|
*/ |
|
function twentytwenty_the_theme_svg( $svg_name, $group = 'ui', $color = '' ) { |
|
echo twentytwenty_get_theme_svg( $svg_name, $group, $color ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in twentytwenty_get_theme_svg();. |
|
} |
|
} |
|
|
|
if ( ! function_exists( 'twentytwenty_get_theme_svg' ) ) { |
|
|
|
/** |
|
* Get information about the SVG icon. |
|
* |
|
* @param string $svg_name The name of the icon. |
|
* @param string $group The group the icon belongs to. |
|
* @param string $color Color code. |
|
*/ |
|
function twentytwenty_get_theme_svg( $svg_name, $group = 'ui', $color = '' ) { |
|
|
|
// Make sure that only our allowed tags and attributes are included. |
|
$svg = wp_kses( |
|
TwentyTwenty_SVG_Icons::get_svg( $svg_name, $group, $color ), |
|
array( |
|
'svg' => array( |
|
'class' => true, |
|
'xmlns' => true, |
|
'width' => true, |
|
'height' => true, |
|
'viewbox' => true, |
|
'aria-hidden' => true, |
|
'role' => true, |
|
'focusable' => true, |
|
), |
|
'path' => array( |
|
'fill' => true, |
|
'fill-rule' => true, |
|
'd' => true, |
|
'transform' => true, |
|
), |
|
'polygon' => array( |
|
'fill' => true, |
|
'fill-rule' => true, |
|
'points' => true, |
|
'transform' => true, |
|
'focusable' => true, |
|
), |
|
) |
|
); |
|
|
|
if ( ! $svg ) { |
|
return false; |
|
} |
|
return $svg; |
|
} |
|
}
|
|
|