WordPress.org

Make WordPress Core

Ticket #31752: 31752.diff

File 31752.diff, 12.2 KB (added by swissspidy, 6 years ago)
  • src/wp-includes/class-oembed.php

    diff --git src/wp-includes/class-oembed.php src/wp-includes/class-oembed.php
    index 1f2399a..86d1de9 100644
    class WP_oEmbed { 
    3535        public function __construct() {
    3636                $host = urlencode( home_url() );
    3737                $providers = array(
    38                         '#http://((m|www)\.)?youtube\.com/watch.*#i'          => array( 'http://www.youtube.com/oembed',                             true  ),
    39                         '#https://((m|www)\.)?youtube\.com/watch.*#i'         => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
    40                         '#http://((m|www)\.)?youtube\.com/playlist.*#i'       => array( 'http://www.youtube.com/oembed',                             true  ),
    41                         '#https://((m|www)\.)?youtube\.com/playlist.*#i'      => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
    42                         '#http://youtu\.be/.*#i'                              => array( 'http://www.youtube.com/oembed',                             true  ),
    43                         '#https://youtu\.be/.*#i'                             => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
    44                         '#https?://(.+\.)?vimeo\.com/.*#i'                    => array( 'http://vimeo.com/api/oembed.{format}',                      true  ),
    45                         '#https?://(www\.)?dailymotion\.com/.*#i'             => array( 'https://www.dailymotion.com/services/oembed',               true  ),
    46                         'http://dai.ly/*'                                     => array( 'https://www.dailymotion.com/services/oembed',               false ),
    47                         '#https?://(www\.)?flickr\.com/.*#i'                  => array( 'https://www.flickr.com/services/oembed/',                   true  ),
    48                         '#https?://flic\.kr/.*#i'                             => array( 'https://www.flickr.com/services/oembed/',                   true  ),
    49                         '#https?://(.+\.)?smugmug\.com/.*#i'                  => array( 'http://api.smugmug.com/services/oembed/',                   true  ),
    50                         '#https?://(www\.)?hulu\.com/watch/.*#i'              => array( 'http://www.hulu.com/api/oembed.{format}',                   true  ),
    51                         'http://i*.photobucket.com/albums/*'                  => array( 'http://api.photobucket.com/oembed',                         false ),
    52                         'http://gi*.photobucket.com/groups/*'                 => array( 'http://api.photobucket.com/oembed',                         false ),
    53                         '#https?://(www\.)?scribd\.com/doc/.*#i'              => array( 'http://www.scribd.com/services/oembed',                     true  ),
    54                         '#https?://wordpress.tv/.*#i'                         => array( 'http://wordpress.tv/oembed/',                               true  ),
    55                         '#https?://(.+\.)?polldaddy\.com/.*#i'                => array( 'https://polldaddy.com/oembed/',                             true  ),
    56                         '#https?://poll\.fm/.*#i'                             => array( 'https://polldaddy.com/oembed/',                             true  ),
    57                         '#https?://(www\.)?funnyordie\.com/videos/.*#i'       => array( 'http://www.funnyordie.com/oembed',                          true  ),
    58                         '#https?://(www\.)?twitter\.com/.+?/status(es)?/.*#i' => array( 'https://api.twitter.com/1/statuses/oembed.{format}',        true  ),
    59                         '#https?://vine.co/v/.*#i'                            => array( 'https://vine.co/oembed.{format}',                           true  ),
    60                         '#https?://(www\.)?soundcloud\.com/.*#i'              => array( 'http://soundcloud.com/oembed',                              true  ),
    61                         '#https?://(.+?\.)?slideshare\.net/.*#i'              => array( 'https://www.slideshare.net/api/oembed/2',                   true  ),
    62                         '#https?://instagr(\.am|am\.com)/p/.*#i'              => array( 'https://api.instagram.com/oembed',                          true  ),
    63                         '#https?://(www\.)?rdio\.com/.*#i'                    => array( 'http://www.rdio.com/api/oembed/',                           true  ),
    64                         '#https?://rd\.io/x/.*#i'                             => array( 'http://www.rdio.com/api/oembed/',                           true  ),
    65                         '#https?://(open|play)\.spotify\.com/.*#i'            => array( 'https://embed.spotify.com/oembed/',                         true  ),
    66                         '#https?://(.+\.)?imgur\.com/.*#i'                    => array( 'http://api.imgur.com/oembed',                               true  ),
    67                         '#https?://(www\.)?meetu(\.ps|p\.com)/.*#i'           => array( 'http://api.meetup.com/oembed',                              true  ),
    68                         '#https?://(www\.)?issuu\.com/.+/docs/.+#i'           => array( 'http://issuu.com/oembed_wp',                                true  ),
    69                         '#https?://(www\.)?collegehumor\.com/video/.*#i'      => array( 'http://www.collegehumor.com/oembed.{format}',               true  ),
    70                         '#https?://(www\.)?mixcloud\.com/.*#i'                => array( 'http://www.mixcloud.com/oembed',                            true  ),
    71                         '#https?://(www\.|embed\.)?ted\.com/talks/.*#i'       => array( 'http://www.ted.com/talks/oembed.{format}',                  true  ),
    72                         '#https?://(www\.)?(animoto|video214)\.com/play/.*#i' => array( 'https://animoto.com/oembeds/create',                        true  ),
    73                         '#https?://(.+)\.tumblr\.com/post/.*#i'               => array( 'https://www.tumblr.com/oembed/1.0',                         true  ),
    74                         '#https?://(www\.)?kickstarter\.com/projects/.*#i'    => array( 'https://www.kickstarter.com/services/oembed',               true  ),
    75                         '#https?://kck\.st/.*#i'                              => array( 'https://www.kickstarter.com/services/oembed',               true  ),
    76                         '#https?://cloudup\.com/.*#i'                         => array( 'https://cloudup.com/oembed',                                true  ),
    77                         '#https?://(www\.)?reverbnation\.com/.*#i'            => array( 'https://www.reverbnation.com/oembed',                       true  ),
    78                         '#https?://videopress.com/v/.*#'                      => array( 'https://public-api.wordpress.com/oembed/1.0/?for=' . $host, true  ),
     38                        '#http://((m|www)\.)?youtube\.com/watch.*#i'                 => array( 'http://www.youtube.com/oembed',                             true  ),
     39                        '#https://((m|www)\.)?youtube\.com/watch.*#i'                => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
     40                        '#http://((m|www)\.)?youtube\.com/playlist.*#i'              => array( 'http://www.youtube.com/oembed',                             true  ),
     41                        '#https://((m|www)\.)?youtube\.com/playlist.*#i'             => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
     42                        '#http://youtu\.be/.*#i'                                     => array( 'http://www.youtube.com/oembed',                             true  ),
     43                        '#https://youtu\.be/.*#i'                                    => array( 'http://www.youtube.com/oembed?scheme=https',                true  ),
     44                        '#https?://(.+\.)?vimeo\.com/.*#i'                           => array( 'http://vimeo.com/api/oembed.{format}',                      true  ),
     45                        '#https?://(www\.)?dailymotion\.com/.*#i'                    => array( 'https://www.dailymotion.com/services/oembed',               true  ),
     46                        'http://dai.ly/*'                                            => array( 'https://www.dailymotion.com/services/oembed',               false ),
     47                        '#https?://(www\.)?flickr\.com/.*#i'                         => array( 'https://www.flickr.com/services/oembed/',                   true  ),
     48                        '#https?://flic\.kr/.*#i'                                    => array( 'https://www.flickr.com/services/oembed/',                   true  ),
     49                        '#https?://(.+\.)?smugmug\.com/.*#i'                         => array( 'http://api.smugmug.com/services/oembed/',                   true  ),
     50                        '#https?://(www\.)?hulu\.com/watch/.*#i'                     => array( 'http://www.hulu.com/api/oembed.{format}',                   true  ),
     51                        'http://i*.photobucket.com/albums/*'                         => array( 'http://api.photobucket.com/oembed',                         false ),
     52                        'http://gi*.photobucket.com/groups/*'                        => array( 'http://api.photobucket.com/oembed',                         false ),
     53                        '#https?://(www\.)?scribd\.com/doc/.*#i'                     => array( 'http://www.scribd.com/services/oembed',                     true  ),
     54                        '#https?://wordpress.tv/.*#i'                                => array( 'http://wordpress.tv/oembed/',                               true  ),
     55                        '#https?://(.+\.)?polldaddy\.com/.*#i'                       => array( 'https://polldaddy.com/oembed/',                             true  ),
     56                        '#https?://poll\.fm/.*#i'                                    => array( 'https://polldaddy.com/oembed/',                             true  ),
     57                        '#https?://(www\.)?funnyordie\.com/videos/.*#i'              => array( 'http://www.funnyordie.com/oembed',                          true  ),
     58                        '#https?://(www\.)?twitter\.com/.+?/status(es)?/.*#i'        => array( 'https://api.twitter.com/1/statuses/oembed.{format}',        true  ),
     59                        '#https?://vine.co/v/.*#i'                                   => array( 'https://vine.co/oembed.{format}',                           true  ),
     60                        '#https?://(www\.)?soundcloud\.com/.*#i'                     => array( 'http://soundcloud.com/oembed',                              true  ),
     61                        '#https?://(.+?\.)?slideshare\.net/.*#i'                     => array( 'https://www.slideshare.net/api/oembed/2',                   true  ),
     62                        '#https?://instagr(\.am|am\.com)/p/.*#i'                     => array( 'https://api.instagram.com/oembed',                          true  ),
     63                        '#https?://(www\.)?rdio\.com/.*#i'                           => array( 'http://www.rdio.com/api/oembed/',                           true  ),
     64                        '#https?://rd\.io/x/.*#i'                                    => array( 'http://www.rdio.com/api/oembed/',                           true  ),
     65                        '#https?://(open|play)\.spotify\.com/.*#i'                   => array( 'https://embed.spotify.com/oembed/',                         true  ),
     66                        '#https?://(.+\.)?imgur\.com/.*#i'                           => array( 'http://api.imgur.com/oembed',                               true  ),
     67                        '#https?://(www\.)?meetu(\.ps|p\.com)/.*#i'                  => array( 'http://api.meetup.com/oembed',                              true  ),
     68                        '#https?://(www\.)?issuu\.com/.+/docs/.+#i'                  => array( 'http://issuu.com/oembed_wp',                                true  ),
     69                        '#https?://(www\.)?collegehumor\.com/video/.*#i'             => array( 'http://www.collegehumor.com/oembed.{format}',               true  ),
     70                        '#https?://(www\.)?mixcloud\.com/.*#i'                       => array( 'http://www.mixcloud.com/oembed',                            true  ),
     71                        '#https?://(www\.|embed\.)?ted\.com/talks/.*#i'              => array( 'http://www.ted.com/talks/oembed.{format}',                  true  ),
     72                        '#https?://(www\.)?(animoto|video214)\.com/play/.*#i'        => array( 'https://animoto.com/oembeds/create',                        true  ),
     73                        '#https?://(.+)\.tumblr\.com/post/.*#i'                      => array( 'https://www.tumblr.com/oembed/1.0',                         true  ),
     74                        '#https?://(www\.)?kickstarter\.com/projects/.*#i'           => array( 'https://www.kickstarter.com/services/oembed',               true  ),
     75                        '#https?://kck\.st/.*#i'                                     => array( 'https://www.kickstarter.com/services/oembed',               true  ),
     76                        '#https?://cloudup\.com/.*#i'                                => array( 'https://cloudup.com/oembed',                                true  ),
     77                        '#https?://(www\.)?reverbnation\.com/.*#i'                   => array( 'https://www.reverbnation.com/oembed',                       true  ),
     78                        '#https?://videopress.com/v/.*#'                             => array( 'https://public-api.wordpress.com/oembed/1.0/?for=' . $host, true  ),
     79                        '#https?://(www\.)?reddit\.com/r/[^/]+/comments/[^/]+/.*#i'  => array( 'https://www.reddit.com/oembed',                             true  ),
    7980                );
    8081
    8182                if ( ! empty( self::$early_providers['add'] ) ) {
    class WP_oEmbed { 
    143144                 * | Cloudup      | cloudup.com          |  Yes  | 4.4.0     |
    144145                 * | ReverbNation | reverbnation.com     |  Yes  | 4.4.0     |
    145146                 * | VideoPress   | videopress.com       |  Yes  | 4.4.0     |
     147                 * | Reddit       | reddit.com           |  Yes  | 4.4.0     |
    146148                 *
    147149                 * No longer supported providers:
    148150                 *