WordPress/wp-content/themes/twentytwenty/inc/svg-icons.php
Sergey Biryukov 6677070a13 Bundled Themes: Correct @since tags to refer to the theme version instead of WordPress version.
This makes `@since` notations in Twenty Seventeen, Twenty Nineteen, and Twenty Twenty consistent with the previous bundled themes.

See #48303.
Built from https://develop.svn.wordpress.org/trunk@46827


git-svn-id: http://core.svn.wordpress.org/trunk@46627 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-12-07 13:56:06 +00:00

71 lines
1.8 KiB
PHP

<?php
/**
* Twenty Twenty SVG Icon helper functions
*
* @package WordPress
* @subpackage Twenty_Twenty
* @since Twenty Twenty 1.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;
}
}