translate_smiley()
Converts one smiley code to the icon graphic file equivalent.
Callback handler for convert_smilies().
Looks up one smiley code in the $wpsmiliestrans global array and returns an <img> string for that smiley.
Hooks from the function
Return
String
. Image string for smiley.
Usage
translate_smiley( $matches );
- $matches(array) (required)
- Single match. Smiley code to convert to image.
Notes
- Global. Array. $wpsmiliestrans
Changelog
Since 2.8.0 | Introduced. |
translate_smiley() translate smiley code WP 6.7.1
function translate_smiley( $matches ) { global $wpsmiliestrans; if ( count( $matches ) === 0 ) { return ''; } $smiley = trim( reset( $matches ) ); $img = $wpsmiliestrans[ $smiley ]; $matches = array(); $ext = preg_match( '/\.([^.]+)$/', $img, $matches ) ? strtolower( $matches[1] ) : false; $image_exts = array( 'jpg', 'jpeg', 'jpe', 'gif', 'png', 'webp', 'avif' ); // Don't convert smilies that aren't images - they're probably emoji. if ( ! in_array( $ext, $image_exts, true ) ) { return $img; } /** * Filters the Smiley image URL before it's used in the image element. * * @since 2.9.0 * * @param string $smiley_url URL for the smiley image. * @param string $img Filename for the smiley image. * @param string $site_url Site URL, as returned by site_url(). */ $src_url = apply_filters( 'smilies_src', includes_url( "images/smilies/$img" ), $img, site_url() ); return sprintf( '<img src="%s" alt="%s" class="wp-smiley" style="height: 1em; max-height: 1em;" />', esc_url( $src_url ), esc_attr( $smiley ) ); }