PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /home/trave494/mytube.pm/wp-content/themes/oceanwp/inc/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : /home/trave494/mytube.pm/wp-content/themes/oceanwp/inc/oceanwp-svg.php |
<?php /** * OceanWP SVG Icons * * @package OceanWP WordPress theme */ // Exit if accessed directly. if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Load SVG */ function ocean_get_svg_icon() { if ( true === get_theme_mod( 'ocean_disable_svg_icons', true ) || 'svg' !== oceanwp_theme_icon_class() ) { return; } // Define SVG file. $svg = OCEANWP_THEME_DIR . '/assets/fonts/owp-icons/owp-icons.svg'; // If it exists, include it. if ( file_exists( $svg ) ) { require_once apply_filters( 'ocean_get_svg_icon', $svg ); } } add_action( 'wp_footer', 'ocean_get_svg_icon' ); /** * Return SVG markup. * * @param array $args { * Parameters needed to display an SVG. * * @type string $icon Required SVG icon filename. * @type string $title Optional SVG title. * @type string $desc Optional SVG description. * } * @param bool $location Location check. * * @return string SVG markup. */ function ocean_svg_icon( $args = array(), $location = true ) { if ( true === get_theme_mod( 'ocean_disable_svg_icons', true ) || 'svg' !== oceanwp_theme_icon_class() ) { return; } // Make sure $args are an array. if ( empty( $args ) ) { return __( 'Please define default parameters in the form of an array.', 'oceanwp' ); } // Set defaults. $defaults = array( 'icon' => '', 'class' => '', 'title' => '', 'desc' => '', 'aria_hidden' => true, 'fallback' => false, ); // Parse args. $args = wp_parse_args( $args, $defaults ); if ( empty( $args['icon'] ) || 'none' === $args['icon'] ) { return; } // Define an icon. if ( false === array_key_exists( $args['icon'], oceanwp_theme_icons() ) ) { return; } // Set aria hidden. $aria_hidden = ''; if ( true === $args['aria_hidden'] ) { $aria_hidden = ' aria-hidden="true"'; } // Set aria labelledby. $aria_labelledby = ''; if ( $args['title'] && $args['desc'] ) { $aria_labelledby = ' aria-labelledby="title desc"'; } // Get icon class. $svg = ''; $has_icon = ''; $theme_icons = oceanwp_theme_icons(); $icon_class = oceanwp_theme_icon_class(); if ( false === $location ) { $has_icon = $theme_icons[ $args['icon'] ][ $icon_class ]; } else { $has_icon = esc_attr( $args['icon'] ); } $class = ''; if ( ! empty( $args['class'] ) ) { $class = $args['class']; } // Add SVG markup. $svg = '<svg class="owp-icon owp-icon--' . $has_icon . ' ' . $class . '"' . $aria_hidden . $aria_labelledby . ' role="img">'; // If there is a title, display it. if ( $args['title'] ) { $svg .= '<title>' . esc_html( $args['title'] ) . '</title>'; } // If there is a description, display it. if ( $args['desc'] ) { $svg .= '<desc>' . esc_html( $args['desc'] ) . '</desc>'; } $svg .= '<use xlink:href="#owp-icon-' . $has_icon . '"></use>'; // Add some markup to use as a fallback for browsers that do not support SVGs. if ( $args['fallback'] ) { $svg .= '<span class="svg-fallback icon--' . $has_icon . '"></span>'; } $svg .= '</svg>'; return $svg; } /** * Allowed HTML for svg icons. */ function ocean_svg_icon_allowed_html() { $array = array( 'svg' => array( 'class' => array(), 'aria-hidden' => array(), 'role' => array(), ), 'use' => array( 'xlink:href' => array(), ), ); return apply_filters( 'ocean_svg_icon_allowed_html', $array ); } /** * Ocean SVG print icon */ function ocean_svg_print_icon( $args = array(), $echo = true ) { if ( empty( $args ) ) { return __( 'Please define default parameters in the form of an array.', 'oceanwp' ); } $icon = wp_kses( ocean_svg_icon( $args, false ), ocean_svg_icon_allowed_html() ); $icon = apply_filters( "ocean_svg_print_icon_{$icon}", $icon ); /** * Print or return icon */ if ( $echo ) { echo $icon; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } else { return $icon; } } /** * Return SVG markup. * * @param string $icon Icon class. * @param bool $echo Print string. * @param string $class Icon class. * @param string $title Optional SVG title. * @param string $desc Optional SVG description. * @param string $aria_hidden Optional SVG description. * @param boolean $fallback Fallback icon. * * @return string SVG Icon. */ function ocean_svg( $icon, $echo = true, $class = '', $title = '', $desc = '', $aria_hidden = true, $fallback = false ) { $owp_icon = wp_kses( ocean_svg_icon( array( 'icon' => $icon, 'class' => $class, 'title' => $title, 'desc' => $desc, 'area_hidden' => $aria_hidden, 'fallback' => $fallback, ) ), ocean_svg_icon_allowed_html() ); /** * Print or return icon */ if ( $echo ) { echo $owp_icon; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } else { return $owp_icon; } }