2003-09-28 20:19:10 +02:00
< ? php
2005-06-11 01:15:13 +02:00
if ( empty ( $wp )) {
require_once ( 'wp-config.php' );
wp ( 'feed=rss2&withcomments=1' );
2004-02-05 21:55:50 +01:00
}
2006-08-30 23:46:31 +02:00
header ( 'Content-type: text/xml;charset=' . get_option ( 'blog_charset' ), true );
2003-09-28 20:19:10 +02:00
2006-08-30 23:46:31 +02:00
echo '<?xml version="1.0" encoding="' . get_option ( 'blog_charset' ) . '"?' . '>' ;
2003-09-28 20:19:10 +02:00
?>
2003-12-18 10:36:13 +01:00
<!-- generator = " wordpress/<?php echo $wp_version ?> " -->
2003-09-28 20:19:10 +02:00
< rss version = " 2.0 "
xmlns : content = " http://purl.org/rss/1.0/modules/content/ " >
< channel >
< ? php
$i = 0 ;
2005-02-11 02:09:34 +01:00
if ( have_posts ()) :
while ( have_posts ()) : the_post ();
2003-09-28 20:19:10 +02:00
if ( $i < 1 ) {
$i ++ ;
?>
2005-12-15 23:20:06 +01:00
< title >< ? php if ( is_single () || is_page () ) { printf ( __ ( 'Comments on: %s' ), get_the_title_rss ()); } else { printf ( __ ( 'Comments for %s' ), get_bloginfo_rss ( " name " )); } ?> </title>
2004-10-10 20:41:39 +02:00
< link >< ? php ( is_single ()) ? permalink_single_rss () : bloginfo_rss ( " url " ) ?> </link>
2003-09-28 20:19:10 +02:00
< description >< ? php bloginfo_rss ( " description " ) ?> </description>
2004-02-20 21:46:55 +01:00
< pubDate >< ? php echo gmdate ( 'r' ); ?> </pubDate>
< generator > http :// wordpress . org / ? v =< ? php echo $wp_version ?> </generator>
2003-09-28 20:19:10 +02:00
< ? php
2005-02-11 02:09:34 +01:00
if ( is_single () || is_page ()) {
2004-02-20 21:46:55 +01:00
$comments = $wpdb -> get_results ( " SELECT comment_ID, comment_author, comment_author_email,
2005-04-19 02:23:55 +02:00
comment_author_url , comment_date , comment_date_gmt , comment_content , comment_post_ID ,
2004-05-24 10:22:18 +02:00
$wpdb -> posts . ID , $wpdb -> posts . post_password FROM $wpdb -> comments
2006-03-17 02:16:22 +01:00
LEFT JOIN $wpdb -> posts ON comment_post_id = id WHERE comment_post_ID = '" . get_the_ID() . "'
2006-02-17 02:34:37 +01:00
AND $wpdb -> comments . comment_approved = '1' AND $wpdb -> posts . post_status = 'publish'
2005-11-14 11:04:25 +01:00
AND post_date_gmt < '" . gmdate("Y-m-d H:i:59") . "'
2006-08-30 23:46:31 +02:00
ORDER BY comment_date_gmt DESC LIMIT " . get_option('posts_per_rss') );
2004-02-20 21:46:55 +01:00
} else { // if no post id passed in, we'll just ue the last 10 comments.
$comments = $wpdb -> get_results ( " SELECT comment_ID, comment_author, comment_author_email,
2005-04-19 02:23:55 +02:00
comment_author_url , comment_date , comment_date_gmt , comment_content , comment_post_ID ,
2004-05-24 10:22:18 +02:00
$wpdb -> posts . ID , $wpdb -> posts . post_password FROM $wpdb -> comments
2006-02-09 11:03:48 +01:00
LEFT JOIN $wpdb -> posts ON comment_post_id = id WHERE $wpdb -> posts . post_status = 'publish'
2005-11-14 11:04:25 +01:00
AND $wpdb -> comments . comment_approved = '1' AND post_date_gmt < '" . gmdate("Y-m-d H:i:s") . "'
2006-08-30 23:46:31 +02:00
ORDER BY comment_date_gmt DESC LIMIT " . get_option('posts_per_rss') );
2003-09-28 20:19:10 +02:00
}
// this line is WordPress' motor, do not delete it.
if ( $comments ) {
foreach ( $comments as $comment ) {
2006-03-17 02:16:22 +01:00
$GLOBALS [ 'comment' ] =& $comment ;
2005-11-22 16:01:32 +01:00
// Some plugins may need to know the metadata
// associated with this comment's post:
get_post_custom ( $comment -> comment_post_ID );
2003-09-28 20:19:10 +02:00
?>
2004-02-20 21:46:55 +01:00
< item >
2005-12-15 23:20:06 +01:00
< title >< ? php if ( ! ( is_single () || is_page ()) ) {
$title = get_the_title ( $comment -> comment_post_ID );
$title = apply_filters ( 'the_title' , $title );
$title = apply_filters ( 'the_title_rss' , $title );
printf ( __ ( 'Comment on %1$s by %2$s' ), $title , get_comment_author_rss ());
2006-02-12 08:53:23 +01:00
} else {
printf ( __ ( 'by: %s' ), get_comment_author_rss ());
2005-12-15 23:20:06 +01:00
} ?> </title>
2005-01-31 11:06:12 +01:00
< link >< ? php comment_link () ?> </link>
2005-04-19 02:23:55 +02:00
< pubDate >< ? php echo mysql2date ( 'D, d M Y H:i:s +0000' , get_comment_time ( 'Y-m-d H:i:s' , true ), false ); ?> </pubDate>
2005-01-31 11:06:12 +01:00
< guid >< ? php comment_link () ?> </guid>
2003-09-28 20:19:10 +02:00
< ? php
2004-04-21 00:56:47 +02:00
if ( ! empty ( $comment -> post_password ) && $_COOKIE [ 'wp-postpass' ] != $comment -> post_password ) {
2003-09-28 20:19:10 +02:00
?>
2005-12-15 23:20:06 +01:00
< description >< ? php _e ( 'Protected Comments: Please enter your password to view comments.' ); ?> </description>
2003-09-28 20:19:10 +02:00
< content : encoded ><! [ CDATA [ < ? php echo get_the_password_form () ?> ]]></content:encoded>
< ? php
2004-02-20 21:46:55 +01:00
} else {
2003-09-28 20:19:10 +02:00
?>
< description >< ? php comment_text_rss () ?> </description>
< content : encoded ><! [ CDATA [ < ? php comment_text () ?> ]]></content:encoded>
2004-02-20 21:46:55 +01:00
< ? php
} // close check for password
?>
2003-09-28 20:19:10 +02:00
</ item >
< ? php
2006-03-17 02:16:22 +01:00
}
2003-09-28 20:19:10 +02:00
}
}
2005-02-11 02:09:34 +01:00
endwhile ; endif ;
2003-09-28 20:19:10 +02:00
?>
</ channel >
2004-02-20 21:46:55 +01:00
</ rss >