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

<?php
/**
 * Kickstarter shortcode
 *
 * Usage:
 * [kickstarter url="https://www.kickstarter.com/projects/peaktoplateau/yak-wool-baselayers-from-tibet-to-the-world" width="480" height=""]
 *
 * @package automattic/jetpack
 */

add_shortcode( 'kickstarter', 'jetpack_kickstarter_shortcode' );
add_filter( 'pre_kses', 'jetpack_kickstarter_embed_to_shortcode' );

/**
 * Parse shortcode arguments and render its output.
 *
 * @since 4.5.0
 *
 * @param array $atts Shortcode parameters.
 *
 * @return string
 */
function jetpack_kickstarter_shortcode( $atts ) {
	if ( empty( $atts['url'] ) ) {
		return '';
	}

	$url = esc_url_raw( $atts['url'] );
	if ( ! preg_match( '#^(www\.)?kickstarter\.com$#i', wp_parse_url( $url, PHP_URL_HOST ) ) ) {
		return '<!-- Invalid Kickstarter URL -->';
	}

	global $wp_embed;
	return $wp_embed->shortcode( $atts, $url );
}

/**
 * Converts Kickstarter iframe embeds to a shortcode.
 *
 * EG: <iframe width="480" height="360" src="http://www.kickstarter.com/projects/deweymac/dewey-mac-kid-detective-book-make-diy-and-stem-spy/widget/video.html" frameborder="0" scrolling="no"> </iframe>
 *
 * @since 4.5.0
 *
 * @param string $content Entry content that possibly includes a Kickstarter embed.
 *
 * @return string
 */
function jetpack_kickstarter_embed_to_shortcode( $content ) {
	if ( ! is_string( $content ) || false === stripos( $content, 'www.kickstarter.com/projects' ) ) {
		return $content;
	}

	$regexp     = '!<iframe((?:\s+\w+=[\'"][^\'"]*[\'"])*)\s+src=[\'"](http://www\.kickstarter\.com/projects/[^/]+/[^/]+)/[^\'"]+[\'"]((?:\s+\w+=[\'"][^\'"]*[\'"])*)>[\s]*</iframe>!i';
	$regexp_ent = str_replace( '&amp;#0*58;', '&amp;#0*58;|&#0*58;', htmlspecialchars( $regexp, ENT_NOQUOTES ) ); // phpcs:ignore

	foreach ( array( 'regexp', 'regexp_ent' ) as $reg ) {
		if ( ! preg_match_all( $$reg, $content, $matches, PREG_SET_ORDER ) ) {
			continue;
		}

		foreach ( $matches as $match ) {
			$url = esc_url( $match[2] );

			$params = $match[1] . $match[3];

			if ( 'regexp_ent' === $reg ) {
				$params = html_entity_decode( $params, ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 );
			}

			$params = wp_kses_hair( $params, array( 'http' ) );

			$width = isset( $params['width'] ) ? (int) $params['width']['value'] : 0;

			$shortcode = '[kickstarter url=' . $url . ( ( ! empty( $width ) ) ? " width=$width" : '' ) . ']';
			$content   = str_replace( $match[0], $shortcode, $content );
		}
	}

	return $content;
}

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).