| 1 |
<?php |
| 2 |
/** |
| 3 |
* Jetpack likes iframe. |
| 4 |
* |
| 5 |
* @package jetpack |
| 6 |
*/ |
| 7 |
|
| 8 |
/** |
| 9 |
* This function needs to get loaded after the like scripts get added to the page. |
| 10 |
*/ |
| 11 |
function jetpack_likes_master_iframe() { |
| 12 |
$version = gmdate( 'Ymd' ); |
| 13 |
|
| 14 |
$_locale = get_locale(); |
| 15 |
|
| 16 |
if ( ! defined( 'JETPACK__GLOTPRESS_LOCALES_PATH' ) || ! file_exists( JETPACK__GLOTPRESS_LOCALES_PATH ) ) { |
| 17 |
return false; |
| 18 |
} |
| 19 |
|
| 20 |
require_once JETPACK__GLOTPRESS_LOCALES_PATH; |
| 21 |
|
| 22 |
$gp_locale = GP_Locales::by_field( 'wp_locale', $_locale ); |
| 23 |
if ( ! $gp_locale ) { |
| 24 |
$gp_locale = GP_Locales::by_slug( $_locale ); |
| 25 |
} |
| 26 |
$_locale = $gp_locale->slug ?? ''; |
| 27 |
|
| 28 |
$likes_locale = ( '' === $_locale || 'en' === $_locale ) ? '' : '&lang=' . strtolower( $_locale ); |
| 29 |
|
| 30 |
$src = sprintf( 'https://widgets.wp.com/likes/master.html?ver=%1$s#ver=%1$s%2$s', $version, $likes_locale ); |
| 31 |
|
| 32 |
/** |
| 33 |
* Filters the Likes iframe src, if any parameters need to be overridden or tracked. |
| 34 |
* |
| 35 |
* @module likes |
| 36 |
* |
| 37 |
* @since 14.1 |
| 38 |
* |
| 39 |
* @param string URL to https://widgets.wp.com/ with various arguments appended to the get string and fragment. |
| 40 |
*/ |
| 41 |
$src = apply_filters( 'jetpack_likes_iframe_src', $src ); |
| 42 |
|
| 43 |
// The span content is replaced by queuehandler when showOtherGravatars is called. |
| 44 |
$likers_text = wp_kses( '<span>%d</span>', array( 'span' => array() ) ); |
| 45 |
?> |
| 46 |
<iframe src='<?php echo esc_url( $src ); ?>' scrolling='no' id='likes-master' name='likes-master' style='display:none;'></iframe> |
| 47 |
<div id='likes-other-gravatars' role="dialog" aria-hidden="true" tabindex="-1"><div class="likes-text"><?php echo $likers_text; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div><ul class="wpl-avatars sd-like-gravatars"></ul></div> |
| 48 |
<?php |
| 49 |
} |
| 50 |
|