at path:
ROOT
/
wp-content
/
plugins
/
jetpack
/
modules
/
shortcodes
/
twitter.php
run:
R
W
Run
css
DIR
2026-04-17 06:07:59
R
W
Run
images
DIR
2026-04-17 06:07:59
R
W
Run
img
DIR
2026-04-17 06:07:59
R
W
Run
js
DIR
2026-04-17 06:07:59
R
W
Run
archiveorg-book.php
3.41 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
archiveorg.php
4.02 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
archives.php
2.43 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
bandcamp.php
7.79 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
brightcove.php
8.81 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
cartodb.php
850 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
class.filter-embedded-html-objects.php
13.17 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
codepen.php
312 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
crowdsignal.php
22.04 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
dailymotion.php
15.37 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
descript.php
3.1 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
facebook.php
7.13 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
flatio.php
430 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
flickr.php
9.5 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
getty.php
7.64 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
gist.php
8.47 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
googleapps.php
9.94 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
googlemaps.php
8.07 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
googleplus.php
1.08 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
gravatar.php
6.18 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
houzz.php
967 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
inline-pdfs.php
1.19 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
instagram.php
14.61 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
kickstarter.php
2.49 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
mailchimp.php
7.19 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
medium.php
3.27 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
mixcloud.php
3.66 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
others.php
2.11 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
pinterest.php
1.84 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
presentations.php
14.57 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
quiz.php
9.2 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
recipe.php
19.04 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
scribd.php
2.49 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
shortcode-utils.php
955 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
sitemap.php
609 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
slideshare.php
3.83 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
slideshow.php
9.43 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
smartframe.php
3.74 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
soundcloud.php
8.78 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
spotify.php
3.3 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
ted.php
3.62 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
tweet.php
5.07 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
twitchtv.php
2.67 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
twitter-timeline.php
1.98 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
twitter.php
2.6 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
unavailable.php
3.33 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
untappd-menu.php
2.5 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
upcoming-events.php
1.73 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
ustream.php
3.18 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
videopress.php
470 By
2026-04-17 06:07:59
R
W
Run
Delete
Rename
vimeo.php
11.61 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
vine.php
2.66 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
vr.php
4.96 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
wufoo.php
3.43 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
youtube.php
23.54 KB
2026-04-17 06:07:59
R
W
Run
Delete
Rename
error_log
up
📄
twitter.php
Save
<?php /** * Twitter/X oEmbed proxy functionality. * * This file handles proxying Twitter/X oEmbed requests through Automattic's infrastructure * to minimize issues with rate limiting with 404 responses from Twitter/X. * * Unlike tweet.php which handles the [tweet] shortcode, this file provides core oEmbed support * and is force-loaded via module-extras.php regardless of module status. * * @package automattic/jetpack * @since 14.5 */ use Automattic\Jetpack\Connection\Client; use Automattic\Jetpack\Constants; use Automattic\Jetpack\Status; if ( ! defined( 'ABSPATH' ) ) { exit( 0 ); } /** * Update Twitter providers to use Automattic's Twitter/X oEmbed proxy. * * See paFLeq-3QD-p2. * * @param string $provider The URL of the oEmbed provider. * * @return string The modified URL of the oEmbed provider. */ function jetpack_proxy_twitter_oembed_provider( $provider ) { if ( ! wp_startswith( $provider, 'https://publish.twitter.com/oembed' ) ) { return $provider; } // Allow other plugins to override the proxy URL. This constant should be set on the WordPress.com side // to handle proxying after we're authenticated the request with the Jetpack token. $oembed_proxy_url = Constants::is_defined( 'JETPACK__TWITTER_OEMBED_PROXY_URL' ) ? Constants::get_constant( 'JETPACK__TWITTER_OEMBED_PROXY_URL' ) : ''; // If we don't have a proxy URL, then we'll try to proxy through the WordPress.com. // To that end, we need to make sure that we're connected to WP.com and that we're not in offline mode. if ( empty( $oembed_proxy_url ) ) { if ( ! Jetpack::is_connection_ready() || ( new Status() )->is_offline_mode() ) { return $provider; } $oembed_proxy_url = esc_url_raw( sprintf( '%s/wpcom/v2/oembed-proxy', JETPACK__WPCOM_JSON_API_BASE, Jetpack_Options::get_option( 'id' ) ) ); add_filter( 'oembed_remote_get_args', 'jetpack_twitter_oembed_remote_get_args', 10, 2 ); } return str_replace( 'https://publish.twitter.com/oembed', $oembed_proxy_url, $provider ); } add_filter( 'oembed_fetch_url', 'jetpack_proxy_twitter_oembed_provider', 10 ); /** * Add JP auth headers if we're proxying through WP.com. * * @param array $args oEmbed remote get arguments. * @param string $url URL to be inspected. */ function jetpack_twitter_oembed_remote_get_args( $args, $url ) { if ( ! wp_startswith( $url, Constants::get_constant( 'JETPACK__WPCOM_JSON_API_BASE' ) ) ) { return $args; } $method = 'GET'; $signed_request = Client::build_signed_request( compact( 'url', 'method' ) ); if ( is_wp_error( $signed_request ) ) { return $args; } return $signed_request['request']; }