| @@ -1,5 +1,11 @@ | ||
| 1 | 1 | <?php |
| 2 | +/** | |
| 3 | + * Renders a RSS feed of records. | |
| 4 | + * | |
| 5 | + * @package WP_Stream | |
| 6 | + */ | |
| 7 | + | |
| 2 | 8 | header( 'Content-Type: ' . feed_content_type( 'rss-http' ) . '; charset=' . get_option( 'blog_charset' ), true ); |
| 3 | 9 | printf( '<?xml version="1.0" encoding="%s"?>', esc_attr( get_option( 'blog_charset' ) ) ); |
| 4 | 10 | ?> |
| 5 | 11 | |
| @@ -17,16 +23,16 @@ | ||
| 17 | 23 | do_action( 'rss2_ns' ) |
| 18 | 24 | ?> |
| 19 | 25 | > |
| 20 | 26 | <channel> |
| 21 | - <title><?php bloginfo_rss( 'name' ) ?> - <?php esc_html_e( 'Stream Feed', 'stream' ) ?></title> | |
| 22 | - <atom:link href="<?php self_link() ?>" rel="self" type="application/rss+xml" /> | |
| 23 | - <link><?php echo esc_url( $records_admin_url ) ?></link> | |
| 24 | - <description><?php bloginfo_rss( 'description' ) ?></description> | |
| 25 | - <lastBuildDate><?php echo esc_html( mysql2date( 'r', $latest_record, false ) ) ?></lastBuildDate> | |
| 26 | - <language><?php bloginfo_rss( 'language' ) ?></language> | |
| 27 | - <sy:updatePeriod><?php echo esc_html( 'hourly' ) ?></sy:updatePeriod> | |
| 28 | - <sy:updateFrequency><?php echo absint( 1 ) ?></sy:updateFrequency> | |
| 27 | + <title><?php bloginfo_rss( 'name' ); ?> - <?php esc_html_e( 'Stream Feed', 'stream' ); ?></title> | |
| 28 | + <atom:link href="<?php self_link(); ?>" rel="self" type="application/rss+xml" /> | |
| 29 | + <link><?php echo esc_url( $records_admin_url ); ?></link> | |
| 30 | + <description><?php bloginfo_rss( 'description' ); ?></description> | |
| 31 | + <lastBuildDate><?php echo esc_html( mysql2date( 'r', $latest_record, false ) ); ?></lastBuildDate> | |
| 32 | + <language><?php bloginfo_rss( 'language' ); ?></language> | |
| 33 | + <sy:updatePeriod><?php echo esc_html( 'hourly' ); ?></sy:updatePeriod> | |
| 34 | + <sy:updateFrequency><?php echo absint( 1 ); ?></sy:updateFrequency> | |
| 29 | 35 | <?php |
| 30 | 36 | /** |
| 31 | 37 | * Action fires during RSS head |
| 32 | 38 | */ |
| @@ -32,9 +38,9 @@ | ||
| 32 | 38 | */ |
| 33 | 39 | do_action( 'rss2_head' ); |
| 34 | 40 | |
| 35 | 41 | foreach ( $records as $record ) : |
| 36 | - $record_link = add_query_arg( | |
| 42 | + $record_link = add_query_arg( | |
| 37 | 43 | array( |
| 38 | 44 | 'record__in' => $record->ID, |
| 39 | 45 | ), |
| 40 | 46 | $records_admin_url |
| @@ -43,17 +49,17 @@ | ||
| 43 | 49 | $author = get_userdata( $record->author ); |
| 44 | 50 | $display_name = isset( $author->display_name ) ? $author->display_name : 'N/A'; |
| 45 | 51 | ?> |
| 46 | 52 | <item> |
| 47 | - <title><![CDATA[ <?php echo esc_html( $record->summary ) // xss ok ?> ]]></title> | |
| 48 | - <pubDate><?php echo esc_html( mysql2date( 'r', $record->created, false ) ) ?></pubDate> | |
| 49 | - <dc:creator><?php echo esc_html( $display_name ) ?></dc:creator> | |
| 50 | - <category domain="connector"><![CDATA[ <?php echo esc_html( $record->connector ) ?> ]]></category> | |
| 51 | - <category domain="context"><![CDATA[ <?php echo esc_html( $record->context ) ?> ]]></category> | |
| 52 | - <category domain="action"><![CDATA[ <?php echo esc_html( $record->action ) ?> ]]></category> | |
| 53 | - <category domain="ip"><?php echo esc_html( $record->ip ) ?></category> | |
| 54 | - <guid isPermaLink="false"><?php echo esc_url( $record_link ) ?></guid> | |
| 55 | - <link><?php echo esc_url( $record_link ) ?></link> | |
| 53 | + <title><![CDATA[ <?php echo esc_html( $record->summary ); // xss ok. ?> ]]></title> | |
| 54 | + <pubDate><?php echo esc_html( mysql2date( 'r', $record->created, false ) ); ?></pubDate> | |
| 55 | + <dc:creator><?php echo esc_html( $display_name ); ?></dc:creator> | |
| 56 | + <category domain="connector"><![CDATA[ <?php echo esc_html( $record->connector ); ?> ]]></category> | |
| 57 | + <category domain="context"><![CDATA[ <?php echo esc_html( $record->context ); ?> ]]></category> | |
| 58 | + <category domain="action"><![CDATA[ <?php echo esc_html( $record->action ); ?> ]]></category> | |
| 59 | + <category domain="ip"><?php echo esc_html( $record->ip ); ?></category> | |
| 60 | + <guid isPermaLink="false"><?php echo esc_url( $record_link ); ?></guid> | |
| 61 | + <link><?php echo esc_url( $record_link ); ?></link> | |
| 56 | 62 | <?php |
| 57 | 63 | /** |
| 58 | 64 | * Action fires during RSS item |
| 59 | 65 | */ |