X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/38ca813a0e312e2768e5b9519f0415cd0aa84781..8d3bb1a5dcfdea9857d3c88c3751f09593e34dc8:/wp-includes/rss.php diff --git a/wp-includes/rss.php b/wp-includes/rss.php index 88bfa62d..4c3fb151 100644 --- a/wp-includes/rss.php +++ b/wp-includes/rss.php @@ -10,17 +10,21 @@ * * @package External * @subpackage MagpieRSS + * @deprecated 3.0.0 Use SimplePie instead. */ /** * Deprecated. Use SimplePie (class-simplepie.php) instead. */ -_deprecated_file( basename( __FILE__ ), '3.0', WPINC . '/class-simplepie.php' ); +_deprecated_file( basename( __FILE__ ), '3.0.0', WPINC . '/class-simplepie.php' ); -/* - * Hook to use another RSS object instead of MagpieRSS +/** + * Fires before MagpieRSS is loaded, to optionally replace it. + * + * @since 2.3.0 + * @deprecated 3.0.0 */ -do_action('load_feed_engine'); +do_action( 'load_feed_engine' ); /** RSS feed constant. */ define('RSS', 'RSS'); @@ -51,18 +55,20 @@ class MagpieRSS { var $_CONTENT_CONSTRUCTS = array('content', 'summary', 'info', 'title', 'tagline', 'copyright'); - function MagpieRSS ($source) { + /** + * PHP5 constructor. + */ + function __construct( $source ) { # if PHP xml isn't compiled in, die # if ( !function_exists('xml_parser_create') ) - trigger_error( "Failed to load PHP's XML Extension. http://www.php.net/manual/en/ref.xml.php" ); + trigger_error( "Failed to load PHP's XML Extension. https://secure.php.net/manual/en/ref.xml.php" ); $parser = @xml_parser_create(); if ( !is_resource($parser) ) - trigger_error( "Failed to create an instance of PHP's XML parser. http://www.php.net/manual/en/ref.xml.php"); - + trigger_error( "Failed to create an instance of PHP's XML parser. https://secure.php.net/manual/en/ref.xml.php"); $this->parser = $parser; @@ -94,6 +100,13 @@ class MagpieRSS { $this->normalize(); } + /** + * PHP4 constructor. + */ + public function MagpieRSS( $source ) { + self::__construct( $source ); + } + function feed_start_element($p, $element, &$attrs) { $el = $element = strtolower($element); $attrs = array_change_key_case($attrs, CASE_LOWER); @@ -101,7 +114,7 @@ class MagpieRSS { // check for a namespace, and split if found $ns = false; if ( strpos( $element, ':' ) ) { - list($ns, $el) = split( ':', $element, 2); + list($ns, $el) = explode( ':', $element, 2); } if ( $ns and $ns != 'rdf' ) { $this->current_namespace = $ns; @@ -167,7 +180,6 @@ class MagpieRSS { $this->incontent = $el; - } // if inside an Atom content construct (e.g. content or summary) field treat tags as text @@ -206,8 +218,6 @@ class MagpieRSS { } } - - function feed_cdata ($p, $text) { if ($this->feed_type == ATOM and $this->incontent) @@ -247,7 +257,7 @@ class MagpieRSS { } elseif ($this->feed_type == ATOM and $this->incontent ) { // balance tags properly - // note: i don't think this is actually neccessary + // note: This may not actually be necessary if ( $this->stack[0] == $el ) { $this->append_content(""); @@ -426,7 +436,7 @@ function fetch_rss ($url) { else { // Flow // 1. check cache - // 2. if there is a hit, make sure its fresh + // 2. if there is a hit, make sure it's fresh // 3. if cached obj fails freshness check, fetch remote // 4. if remote fails, return stale object, or error @@ -436,7 +446,6 @@ function fetch_rss ($url) { debug($cache->ERROR, E_USER_WARNING); } - $cache_status = 0; // response of check_cache $request_headers = array(); // HTTP headers to send with fetch $rss = 0; // parsed RSS object @@ -541,7 +550,7 @@ endif; * @return Snoopy style response */ function _fetch_remote_file($url, $headers = "" ) { - $resp = wp_remote_request($url, array('headers' => $headers, 'timeout' => MAGPIE_FETCH_TIME_OUT)); + $resp = wp_safe_remote_request( $url, array( 'headers' => $headers, 'timeout' => MAGPIE_FETCH_TIME_OUT ) ); if ( is_wp_error($resp) ) { $error = array_shift($resp->errors); @@ -580,8 +589,8 @@ function _fetch_remote_file($url, $headers = "" ) { * @package External * @subpackage MagpieRSS * - * @param unknown_type $resp - * @return unknown + * @param array $resp + * @return MagpieRSS|bool */ function _response_to_rss ($resp) { $rss = new MagpieRSS( $resp->results ); @@ -590,7 +599,7 @@ function _response_to_rss ($resp) { if ( $rss && (!isset($rss->ERROR) || !$rss->ERROR) ) { // find Etag, and Last-Modified - foreach( (array) $resp->headers as $h) { + foreach ( (array) $resp->headers as $h) { // 2003-03-02 - Nicola Asuni (www.tecnick.com) - fixed bug "Undefined offset: 1" if (strpos($h, ": ")) { list($field, $val) = explode(": ", $h, 2); @@ -710,7 +719,10 @@ class RSSCache { var $MAX_AGE = 43200; // when are files stale, default twelve hours var $ERROR = ''; // accumulate error messages - function RSSCache ($base='', $age='') { + /** + * PHP5 constructor. + */ + function __construct( $base = '', $age = '' ) { $this->BASE_CACHE = WP_CONTENT_DIR . '/cache'; if ( $base ) { $this->BASE_CACHE = $base; @@ -721,11 +733,18 @@ class RSSCache { } + /** + * PHP4 constructor. + */ + public function RSSCache( $base = '', $age = '' ) { + self::__construct( $base, $age ); + } + /*=======================================================================*\ Function: set Purpose: add an item to the cache, keyed on url Input: url from wich the rss file was fetched - Output: true on sucess + Output: true on success \*=======================================================================*/ function set ($url, $rss) { $cache_option = 'rss_' . $this->file_name( $url ); @@ -935,5 +954,3 @@ function get_rss ($url, $num_items = 5) { // Like get posts, but for RSS } } endif; - -?>