* 'default_feed' filter.
*
* @since 2.5.0
- * @uses apply_filters() Calls 'default_feed' hook on the default feed string.
*
* @return string Default feed, or for example 'rss2', 'atom', etc.
*/
*
* @since 2.2.0
*
- * @param string $sep Optional.How to separate the title. See wp_title() for more info.
+ * @param string $sep Optional. How to separate the title. See wp_title() for more info.
* @return string Error message on failure or blog title on success.
*/
-function get_wp_title_rss($sep = '»') {
- $title = wp_title($sep, false);
- if ( is_wp_error( $title ) )
+function get_wp_title_rss( $sep = '»' ) {
+ $title = wp_title( $sep, false );
+
+ if ( is_wp_error( $title ) ) {
return $title->get_error_message();
+ }
+
+ if ( $title && $sep && ' ' !== substr( $title, 0, 1 ) ) {
+ $title = " $sep " . $title;
+ }
+
/**
* Filter the blog title for use as the feed title.
*
* Display the post title in the feed.
*
* @since 0.71
- * @uses get_the_title_rss() Used to retrieve current post title.
*/
function the_title_rss() {
echo get_the_title_rss();
if ( !$feed_type )
$feed_type = get_default_feed();
- /** This filter is documented in wp-admin/post-template.php */
+ /** This filter is documented in wp-includes/post-template.php */
$content = apply_filters( 'the_content', get_the_content() );
$content = str_replace(']]>', ']]>', $content);
/**
* Display the post content for feeds.
*
* @since 2.9.0
- * @uses apply_filters() Calls 'the_content_feed' on the content before processing.
- * @see get_the_content()
*
* @param string $feed_type The type of feed. rss2 | atom | rss | rdf
*/
* @since 2.5.0
*
* @param int|object $comment_id Optional comment object or id. Defaults to global comment object.
- * @return bool|string false on failure or guid for comment on success.
+ * @return false|string false on failure or guid for comment on success.
*/
function get_comment_guid($comment_id = null) {
$comment = get_comment($comment_id);
* Retrieve the current comment author for use in the feeds.
*
* @since 2.0.0
- * @uses get_comment_author()
*
* @return string Comment Author
*/
* Display the current comment content for use in the feeds.
*
* @since 1.0.0
- * @uses get_comment_text()
*/
function comment_text_rss() {
$comment_text = get_comment_text();
if ( 'rdf' == $type )
$the_list .= "\t\t<dc:subject><![CDATA[$cat_name]]></dc:subject>\n";
elseif ( 'atom' == $type )
- /** This filter is documented in wp-includes/feed.php */
- $the_list .= sprintf( '<category scheme="%1$s" term="%2$s" />', esc_attr( apply_filters( 'get_bloginfo_rss', get_bloginfo( 'url' ) ) ), esc_attr( $cat_name ) );
+ $the_list .= sprintf( '<category scheme="%1$s" term="%2$s" />', esc_attr( get_bloginfo_rss( 'url' ) ), esc_attr( $cat_name ) );
else
$the_list .= "\t\t<category><![CDATA[" . @html_entity_decode( $cat_name, ENT_COMPAT, get_option('blog_charset') ) . "]]></category>\n";
}
* attributes.
*
* @since 1.5.0
- * @uses get_post_custom() To get the current post enclosure metadata.
*/
function rss_enclosure() {
if ( post_password_required() )
* enclosure(s) consist of link HTML tag(s) with a URI and other attributes.
*
* @since 2.2.0
- * @uses get_post_custom() To get the current post enclosure metadata.
*/
function atom_enclosure() {
if ( post_password_required() )
}
}
- if (strpos($data, ']]>') == false) {
+ if (strpos($data, ']]>') === false) {
return array('html', "<![CDATA[$data]]>");
} else {
return array('html', htmlspecialchars($data));
}
}
+/**
+ * Displays Site Icon in atom feeds.
+ *
+ * @since 4.3.0
+ *
+ * @see get_site_icon_url()
+ */
+function atom_site_icon() {
+ $url = get_site_icon_url( 32 );
+ if ( $url ) {
+ echo "<icon>$url</icon>\n";
+ }
+}
+
+/**
+ * Displays Site Icon in RSS2.
+ *
+ * @since 4.3.0
+ */
+function rss2_site_icon() {
+ $rss_title = get_wp_title_rss();
+ if ( empty( $rss_title ) ) {
+ $rss_title = get_bloginfo_rss( 'name' );
+ }
+
+ $url = get_site_icon_url( 32 );
+ if ( $url ) {
+ echo '
+<image>
+ <url>' . convert_chars( $url ) . '</url>
+ <title>' . $rss_title . '</title>
+ <link>' . get_bloginfo_rss( 'url' ) . '</link>
+ <width>32</width>
+ <height>32</height>
+</image> ' . "\n";
+ }
+}
+
/**
* Display the link for the currently displayed feed in a XSS safe way.
*
*/
do_action_ref_array( 'wp_feed_options', array( &$feed, $url ) );
$feed->init();
+ $feed->set_output_encoding( get_option( 'blog_charset' ) );
$feed->handle_content_type();
if ( $feed->error() )