芝麻web文件管理V1.00
编辑当前文件:/var/www/cognitio.in/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php
\s*', '><', $svg ); // Remove whitespace between SVG tags. return $svg; } return null; } /** * GET SOCIAL LINK SVG * Detects the social network from a URL and returns the SVG code for its icon. * * @since Twenty Twenty 1.0 * * @param string $uri The URL to retrieve SVG for. */ public static function get_social_link_svg( $uri ) { static $regex_map; // Only compute regex map once, for performance. if ( ! isset( $regex_map ) ) { $regex_map = array(); /** * Filters Twenty Twenty's array of domain mappings for social icons. * * By default, each Icon ID is matched against a .com TLD. To override this behavior, * specify all the domains it covers (including the .com TLD too, if applicable). * * @since Twenty Twenty 1.5 * * @param array $social_icons_map Array of default social icons. */ $map = apply_filters( 'twentytwenty_social_icons_map', self::$social_icons_map ); /** * Filters Twenty Twenty's array of social icons. * * @since Twenty Twenty 1.5 * * @param array $social_icons Array of default social icons. */ $social_icons = apply_filters( 'twentytwenty_svg_icons_social', self::$social_icons ); foreach ( array_keys( $social_icons ) as $icon ) { $domains = array_key_exists( $icon, $map ) ? $map[ $icon ] : array( sprintf( '%s.com', $icon ) ); $domains = array_map( 'trim', $domains ); // Remove leading/trailing spaces, to prevent regex from failing to match. $domains = array_map( 'preg_quote', $domains ); $regex_map[ $icon ] = sprintf( '/(%s)/i', implode( '|', $domains ) ); } } foreach ( $regex_map as $icon => $regex ) { if ( preg_match( $regex, $uri ) ) { return twentytwenty_get_theme_svg( $icon, 'social' ); } } return null; } /** * ICON STORAGE * Store the code for all SVGs in an array. * * @since Twenty Twenty 1.0 * @var array */ public static $ui_icons = array( 'arrow-down' => '
', 'arrow-down-circled' => '
', 'bookmark' => '
', 'calendar' => '
', 'chevron-down' => '
', 'comment' => '
', 'cross' => '
', 'ellipsis' => '
', 'edit' => '
', 'folder' => '
', 'link' => '
', 'search' => '
', 'tag' => '
', 'user' => '
', ); /** * Social Icons – domain mappings. * * By default, each Icon ID is matched against a .com TLD. To override this behavior, * specify all the domains it covers (including the .com TLD too, if applicable). * * @since Twenty Twenty 1.0 * @var array */ public static $social_icons_map = array( 'amazon' => array( 'amazon.com', 'amazon.cn', 'amazon.in', 'amazon.fr', 'amazon.de', 'amazon.it', 'amazon.nl', 'amazon.es', 'amazon.co', 'amazon.ca', ), 'behance' => array( 'behance.net', ), 'codepen' => array( 'codepen.io', ), 'facebook' => array( 'facebook.com', 'fb.me', ), 'feed' => array( 'feed', ), 'google' => array( 'g.page', ), 'lastfm' => array( 'last.fm', ), 'mail' => array( 'mailto:', ), 'pocket' => array( 'getpocket.com', ), 'tiktok' => array( 'tiktok.com', ), 'twitch' => array( 'twitch.tv', ), 'whatsapp' => array( 'wa.me', 'whatsapp.com', ), 'wordpress' => array( 'wordpress.com', 'wordpress.org', ), ); /** * Social Icons – svg sources. * * @since Twenty Twenty 1.0 * @var array */ public static $social_icons = array( '500px' => '
', 'amazon' => '
', 'bandcamp' => '
', 'behance' => '
', 'codepen' => '
', 'deviantart' => '
', 'dribbble' => '
', 'dropbox' => '
', 'etsy' => '
', 'facebook' => '
', 'feed' => '
', 'flickr' => '
', 'foursquare' => '
', 'goodreads' => '
', 'google' => '
', 'github' => '
', 'instagram' => '
', 'lastfm' => '
', 'linkedin' => '
', 'mail' => '
', 'mastodon' => '
', 'medium' => '
', 'meetup' => '
', 'pinterest' => '
', 'pocket' => '
', 'reddit' => '
', 'skype' => '
', 'snapchat' => '
', 'soundcloud' => '
', 'spotify' => '
', 'tumblr' => '
', 'tiktok' => '
', 'twitch' => '
', 'twitter' => '
', 'vimeo' => '
', 'vk' => '
', 'whatsapp' => '
', // phpcs:disable WordPress.WP.CapitalPDangit.Misspelled 'wordpress' => '
', 'yelp' => '
', 'youtube' => '
', ); } }