PHP 8.2.31
Preview: facebook.php Size: 4.42 KB
/home/nshryvcy/himaltourism.com/wp-content/plugins/jetpack/modules/shortcodes/facebook.php

<?php
/**
 * Facebook embeds
 *
 * @package automattic/jetpack
 */

define( 'JETPACK_FACEBOOK_EMBED_REGEX', '#^https?://(www.)?facebook\.com/([^/]+)/(posts|photos)/([^/]+)?#' );
define( 'JETPACK_FACEBOOK_ALTERNATE_EMBED_REGEX', '#^https?://(www.)?facebook\.com/permalink.php\?([^\s]+)#' );
define( 'JETPACK_FACEBOOK_PHOTO_EMBED_REGEX', '#^https?://(www.)?facebook\.com/photo.php\?([^\s]+)#' );
define( 'JETPACK_FACEBOOK_PHOTO_ALTERNATE_EMBED_REGEX', '#^https?://(www.)?facebook\.com/([^/]+)/photos/([^/]+)?#' );
define( 'JETPACK_FACEBOOK_VIDEO_EMBED_REGEX', '#^https?://(www.)?facebook\.com/(?:video.php|watch\/?)\?([^\s]+)#' );
define( 'JETPACK_FACEBOOK_VIDEO_ALTERNATE_EMBED_REGEX', '#^https?://(www.)?facebook\.com/([^/]+)/videos/([^/]+)?#' );

/*
 * Example URL: https://www.facebook.com/VenusWilliams/posts/10151647007373076
 */
wp_embed_register_handler( 'facebook', JETPACK_FACEBOOK_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/*
 * Example URL: https://www.facebook.com/permalink.php?id=222622504529111&story_fbid=559431180743788
 */
wp_embed_register_handler( 'facebook-alternate', JETPACK_FACEBOOK_ALTERNATE_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/*
 * Photos are handled on a different endpoint; e.g. https://www.facebook.com/photo.php?fbid=10151609960150073&set=a.398410140072.163165.106666030072&type=1
 */
wp_embed_register_handler( 'facebook-photo', JETPACK_FACEBOOK_PHOTO_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/*
 * Photos (from pages for example) can be at
 */
wp_embed_register_handler( 'facebook-alternate-photo', JETPACK_FACEBOOK_PHOTO_ALTERNATE_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/*
 * Videos
 *
 * Formats:
 * https://www.facebook.com/video.php?v=2836814009877992
 * https://www.facebook.com/watch/?v=2836814009877992
 */
wp_embed_register_handler( 'facebook-video', JETPACK_FACEBOOK_VIDEO_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/*
 * Videos  https://www.facebook.com/WhiteHouse/videos/10153398464269238/
 */
wp_embed_register_handler( 'facebook-alternate-video', JETPACK_FACEBOOK_VIDEO_ALTERNATE_EMBED_REGEX, 'jetpack_facebook_embed_handler' );

/**
 * Callback to modify output of embedded Facebook posts.
 *
 * @param array  $matches Regex partial matches against the URL passed.
 * @param array  $attr    Attributes received in embed response.
 * @param string $url     Requested URL to be embedded.
 * @return string Facebook embed markup.
 */
function jetpack_facebook_embed_handler( $matches, $attr, $url ) {
	if (
		false !== strpos( $url, 'video.php' )
		|| false !== strpos( $url, '/videos/' )
		|| false !== strpos( $url, '/watch' )
	) {
		$embed = sprintf( '<div class="fb-video" data-allowfullscreen="true" data-href="%s"></div>', esc_url( $url ) );
	} else {
		$width = 552; // As of 01/2017, the default width of Facebook embeds when no width attribute provided.

		global $content_width;
		if ( is_numeric( $content_width ) && $content_width > 0 ) {
			$width = min( $width, $content_width );
		}

		$embed = sprintf( '<div class="fb-post" data-href="%s" data-width="%s"></div>', esc_url( $url ), esc_attr( $width ) );
	}

	// Skip rendering scripts in an AMP context.
	if ( class_exists( 'Jetpack_AMP_Support' ) && Jetpack_AMP_Support::is_amp_request() ) {
		return $embed;
	}

	// since Facebook is a faux embed, we need to load the JS SDK in the wpview embed iframe.
	if (
		defined( 'DOING_AJAX' )
		&& DOING_AJAX
		// No need to check for a nonce here, that's already handled by Core further up.
		&& ! empty( $_POST['action'] ) // phpcs:ignore WordPress.Security.NonceVerification.Missing
		&& 'parse-embed' === $_POST['action'] // phpcs:ignore WordPress.Security.NonceVerification.Missing
	) {
		ob_start();
		wp_scripts()->do_items( array( 'jetpack-facebook-embed' ) );
		$scripts = ob_get_clean();
		return $embed . $scripts;
	} else {
		wp_enqueue_script( 'jetpack-facebook-embed' );
		return $embed;
	}
}

/**
 * Shortcode handler.
 *
 * @param array $atts Shortcode attributes.
 */
function jetpack_facebook_shortcode_handler( $atts ) {
	global $wp_embed;

	if ( empty( $atts['url'] ) ) {
		return;
	}

	if ( ! preg_match( JETPACK_FACEBOOK_EMBED_REGEX, $atts['url'] )
	&& ! preg_match( JETPACK_FACEBOOK_PHOTO_EMBED_REGEX, $atts['url'] )
	&& ! preg_match( JETPACK_FACEBOOK_VIDEO_EMBED_REGEX, $atts['url'] )
	&& ! preg_match( JETPACK_FACEBOOK_VIDEO_ALTERNATE_EMBED_REGEX, $atts['url'] ) ) {
		return;
	}

	return $wp_embed->shortcode( $atts, $atts['url'] );
}
add_shortcode( 'facebook', 'jetpack_facebook_shortcode_handler' );

Directory Contents

Dirs: 4 × Files: 54

Name Size Perms Modified Actions
css DIR
- drwxr-xr-x 2023-04-04 05:35:20
Edit Download
images DIR
- drwxr-xr-x 2023-04-04 05:35:20
Edit Download
img DIR
- drwxr-xr-x 2023-04-04 05:35:20
Edit Download
js DIR
- drwxr-xr-x 2023-04-04 05:35:20
Edit Download
3.31 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
3.92 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
2.38 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
7.70 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
8.77 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
803 B lrw-r--r-- 2023-04-04 05:35:21
Edit Download
13.07 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
265 B lrw-r--r-- 2023-04-04 05:35:20
Edit Download
21.83 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
15.27 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.00 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
4.42 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
383 B lrw-r--r-- 2023-04-04 05:35:21
Edit Download
9.21 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
7.53 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
8.29 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
9.84 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
7.97 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
1.03 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
4.70 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
920 B lrw-r--r-- 2023-04-04 05:35:20
Edit Download
1.14 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
14.50 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
2.39 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
7.03 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
3.22 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.62 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
2.38 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
1.79 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
14.53 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
9.16 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
18.93 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
2.45 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
562 B lrw-r--r-- 2023-04-04 05:35:21
Edit Download
3.81 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
8.89 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
3.63 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
8.65 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
3.21 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.35 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
8.51 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
2.63 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
1.93 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.24 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
2.41 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
1.68 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.13 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
423 B lrw-r--r-- 2023-04-04 05:35:20
Edit Download
11.13 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
2.61 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
4.92 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
1.81 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download
3.38 KB lrw-r--r-- 2023-04-04 05:35:21
Edit Download
20.50 KB lrw-r--r-- 2023-04-04 05:35:20
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).