Sindbad~EG File Manager
<?php
/**
* Inspiro Lite SVG Icon helper functions
*
* @package Inspiro
* @subpackage Inspiro_Lite
* @since Inspiro 1.0.0
*/
if ( ! function_exists( 'inspiro_the_theme_svg' ) ) {
/**
* Output and Get Theme SVG.
* Output and get the SVG markup for an icon in the Inspiro_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 inspiro_the_theme_svg( $svg_name, $group = 'ui', $color = '' ) {
echo inspiro_get_theme_svg( $svg_name, $group, $color );
}
}
if ( ! function_exists( 'inspiro_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 inspiro_get_theme_svg( $svg_name, $group = 'ui', $color = '' ) {
// Make sure that only our allowed tags and attributes are included.
$svg = wp_kses(
Inspiro_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;
}
}
/**
* Add dropdown icon if menu item has children.
*
* @param string $title The menu item's title.
* @param WP_Post $item The current menu item.
* @param stdClass $args An object of wp_nav_menu() arguments.
* @param int $depth Depth of menu item. Used for padding.
* @return string The menu item's title with dropdown icon.
*/
function inspiro_dropdown_icon_to_menu_link( $title, $item, $args, $depth ) {
if ( 'primary' === $args->theme_location ) {
foreach ( $item->classes as $value ) {
if ( 'menu-item-has-children' === $value || 'page_item_has_children' === $value ) {
$title = $title . inspiro_get_theme_svg( 'angle-down' );
}
}
}
return $title;
}
add_filter( 'nav_menu_item_title', 'inspiro_dropdown_icon_to_menu_link', 10, 4 );
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists