<?php /** * Pinterest embeds * * Based on "Board Widget" example here: http://business.pinterest.com/widget-builder/#code * * Example URL: https://pinterest.com/pin/129056345550241149/ * Second Example URL: https://uk.pinterest.com/annsawesomepins/travel/ * * @package automattic/jetpack */ wp_embed_register_handler( 'pinterest', '#' . 'https?://' . '(?:www\.)?' . '(?:[a-z]{2}\.)?' . 'pinterest\.[a-z.]+/' . '([^/]+)' . '(/[^/]+)?' . '#', 'pinterest_embed_handler' ); /** * Callback to modify output of embedded Pinterest posts. * * @param array $matches Regex partial matches against the URL passed. * @param array $attr Attributes received in embed response. * @param array $url Requested URL to be embedded. */ function pinterest_embed_handler( $matches, $attr, $url ) { // Pinterest's JS handles making the embed. $script_src = '//assets.pinterest.com/js/pinit.js'; wp_enqueue_script( 'pinterest-embed', $script_src, array(), JETPACK__VERSION, true ); $path = wp_parse_url( $url, PHP_URL_PATH ); if ( str_starts_with( $path, '/pin/' ) ) { $embed_type = 'embedPin'; } elseif ( preg_match( '#^/([^/]+)/?$#', $path ) ) { $embed_type = 'embedUser'; } elseif ( preg_match( '#^/([^/]+)/([^/]+)/?$#', $path ) ) { $embed_type = 'embedBoard'; } else { if ( current_user_can( 'edit_posts' ) ) { return __( 'Sorry, that Pinterest URL was not recognized.', 'jetpack' ); } return; } $return = sprintf( '<a data-pin-do="%s" href="%s"></a>', esc_attr( $embed_type ), esc_url( $url ) ); // If we're generating an embed view for the WordPress Admin via ajax. if ( doing_action( 'wp_ajax_parse-embed' ) ) { $return .= sprintf( '<script src="%s"></script>', // phpcs:ignore WordPress.WP.EnqueuedResources.NonEnqueuedScript esc_url( $script_src ) ); } return $return; }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
css | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
img | Folder | 0755 |
|
|
js | Folder | 0755 |
|
|
archiveorg-book.php | File | 3.31 KB | 0644 |
|
archiveorg.php | File | 3.92 KB | 0644 |
|
archives.php | File | 2.38 KB | 0644 |
|
bandcamp.php | File | 7.75 KB | 0644 |
|
brightcove.php | File | 8.77 KB | 0644 |
|
cartodb.php | File | 803 B | 0644 |
|
class.filter-embedded-html-objects.php | File | 13.01 KB | 0644 |
|
codepen.php | File | 265 B | 0644 |
|
crowdsignal.php | File | 21.6 KB | 0644 |
|
dailymotion.php | File | 15.27 KB | 0644 |
|
descript.php | File | 3 KB | 0644 |
|
facebook.php | File | 4.73 KB | 0644 |
|
flatio.php | File | 383 B | 0644 |
|
flickr.php | File | 9.29 KB | 0644 |
|
getty.php | File | 7.54 KB | 0644 |
|
gist.php | File | 8.31 KB | 0644 |
|
googleapps.php | File | 9.84 KB | 0644 |
|
googlemaps.php | File | 7.97 KB | 0644 |
|
googleplus.php | File | 1.03 KB | 0644 |
|
gravatar.php | File | 6.13 KB | 0644 |
|
houzz.php | File | 920 B | 0644 |
|
inline-pdfs.php | File | 1.14 KB | 0644 |
|
instagram.php | File | 14.51 KB | 0644 |
|
kickstarter.php | File | 2.39 KB | 0644 |
|
mailchimp.php | File | 7.03 KB | 0644 |
|
medium.php | File | 3.22 KB | 0644 |
|
mixcloud.php | File | 3.62 KB | 0644 |
|
others.php | File | 2.07 KB | 0644 |
|
pinterest.php | File | 1.79 KB | 0644 |
|
presentations.php | File | 14.53 KB | 0644 |
|
quiz.php | File | 9.16 KB | 0644 |
|
recipe.php | File | 18.95 KB | 0644 |
|
scribd.php | File | 2.45 KB | 0644 |
|
sitemap.php | File | 562 B | 0644 |
|
slideshare.php | File | 3.81 KB | 0644 |
|
slideshow.php | File | 9.27 KB | 0644 |
|
smartframe.php | File | 3.64 KB | 0644 |
|
soundcloud.php | File | 8.68 KB | 0644 |
|
spotify.php | File | 3.26 KB | 0644 |
|
ted.php | File | 3.35 KB | 0644 |
|
tweet.php | File | 5.03 KB | 0644 |
|
twitchtv.php | File | 2.63 KB | 0644 |
|
twitter-timeline.php | File | 1.93 KB | 0644 |
|
unavailable.php | File | 3.24 KB | 0644 |
|
untappd-menu.php | File | 2.41 KB | 0644 |
|
upcoming-events.php | File | 1.68 KB | 0644 |
|
ustream.php | File | 3.13 KB | 0644 |
|
videopress.php | File | 423 B | 0644 |
|
vimeo.php | File | 11.51 KB | 0644 |
|
vine.php | File | 2.61 KB | 0644 |
|
vr.php | File | 4.92 KB | 0644 |
|
wordads.php | File | 1.81 KB | 0644 |
|
wufoo.php | File | 3.38 KB | 0644 |
|
youtube.php | File | 23.33 KB | 0644 |
|