wp/wp-includes/feed-atom.php
changeset 0 d970ebf37754
child 5 5e2f62d02dcd
equal deleted inserted replaced
-1:000000000000 0:d970ebf37754
       
     1 <?php
       
     2 /**
       
     3  * Atom Feed Template for displaying Atom Posts feed.
       
     4  *
       
     5  * @package WordPress
       
     6  */
       
     7 
       
     8 header('Content-Type: ' . feed_content_type('atom') . '; charset=' . get_option('blog_charset'), true);
       
     9 $more = 1;
       
    10 
       
    11 echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?>
       
    12 <feed
       
    13   xmlns="http://www.w3.org/2005/Atom"
       
    14   xmlns:thr="http://purl.org/syndication/thread/1.0"
       
    15   xml:lang="<?php bloginfo_rss( 'language' ); ?>"
       
    16   xml:base="<?php bloginfo_rss('url') ?>/wp-atom.php"
       
    17   <?php
       
    18   /**
       
    19    * Fires at end of the Atom feed root to add namespaces.
       
    20    *
       
    21    * @since 2.0.0
       
    22    */
       
    23   do_action( 'atom_ns' );
       
    24   ?>
       
    25  >
       
    26 	<title type="text"><?php bloginfo_rss('name'); wp_title_rss(); ?></title>
       
    27 	<subtitle type="text"><?php bloginfo_rss("description") ?></subtitle>
       
    28 
       
    29 	<updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT'), false); ?></updated>
       
    30 
       
    31 	<link rel="alternate" type="<?php bloginfo_rss('html_type'); ?>" href="<?php bloginfo_rss('url') ?>" />
       
    32 	<id><?php bloginfo('atom_url'); ?></id>
       
    33 	<link rel="self" type="application/atom+xml" href="<?php self_link(); ?>" />
       
    34 
       
    35 	<?php
       
    36 	/**
       
    37 	 * Fires just before the first Atom feed entry.
       
    38 	 *
       
    39 	 * @since 2.0.0
       
    40 	 */
       
    41 	do_action( 'atom_head' );
       
    42 
       
    43 	while ( have_posts() ) : the_post();
       
    44 	?>
       
    45 	<entry>
       
    46 		<author>
       
    47 			<name><?php the_author() ?></name>
       
    48 			<?php $author_url = get_the_author_meta('url'); if ( !empty($author_url) ) : ?>
       
    49 			<uri><?php the_author_meta('url')?></uri>
       
    50 			<?php endif;
       
    51 
       
    52 			/**
       
    53 			 * Fires at the end of each Atom feed author entry.
       
    54 			 *
       
    55 			 * @since 3.2.0
       
    56 			 */
       
    57 			do_action( 'atom_author' );
       
    58 		?>
       
    59 		</author>
       
    60 		<title type="<?php html_type_rss(); ?>"><![CDATA[<?php the_title_rss() ?>]]></title>
       
    61 		<link rel="alternate" type="<?php bloginfo_rss('html_type'); ?>" href="<?php the_permalink_rss() ?>" />
       
    62 		<id><?php the_guid() ; ?></id>
       
    63 		<updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated>
       
    64 		<published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published>
       
    65 		<?php the_category_rss('atom') ?>
       
    66 		<summary type="<?php html_type_rss(); ?>"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary>
       
    67 <?php if ( !get_option('rss_use_excerpt') ) : ?>
       
    68 		<content type="<?php html_type_rss(); ?>" xml:base="<?php the_permalink_rss() ?>"><![CDATA[<?php the_content_feed('atom') ?>]]></content>
       
    69 <?php endif; ?>
       
    70 	<?php atom_enclosure();
       
    71 	/**
       
    72 	 * Fires at the end of each Atom feed item.
       
    73 	 *
       
    74 	 * @since 2.0.0
       
    75 	 */
       
    76 	do_action( 'atom_entry' );
       
    77 		?>
       
    78 		<link rel="replies" type="<?php bloginfo_rss('html_type'); ?>" href="<?php the_permalink_rss() ?>#comments" thr:count="<?php echo get_comments_number()?>"/>
       
    79 		<link rel="replies" type="application/atom+xml" href="<?php echo esc_url( get_post_comments_feed_link(0, 'atom') ); ?>" thr:count="<?php echo get_comments_number()?>"/>
       
    80 		<thr:total><?php echo get_comments_number()?></thr:total>
       
    81 	</entry>
       
    82 	<?php endwhile ; ?>
       
    83 </feed>