home *** CD-ROM | disk | FTP | other *** search
/ HTML Examples / WP.iso / wordpress / wp-includes / feed-atom.php < prev    next >
Encoding:
PHP Script  |  2016-12-15  |  3.0 KB  |  94 lines

  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.  
  13. /** This action is documented in wp-includes/feed-rss2.php */
  14. do_action( 'rss_tag_pre', 'atom' );
  15. ?>
  16. <feed
  17.   xmlns="http://www.w3.org/2005/Atom"
  18.   xmlns:thr="http://purl.org/syndication/thread/1.0"
  19.   xml:lang="<?php bloginfo_rss( 'language' ); ?>"
  20.   xml:base="<?php bloginfo_rss('url') ?>/wp-atom.php"
  21.   <?php
  22.   /**
  23.    * Fires at end of the Atom feed root to add namespaces.
  24.    *
  25.    * @since 2.0.0
  26.    */
  27.   do_action( 'atom_ns' );
  28.   ?>
  29.  >
  30.     <title type="text"><?php wp_title_rss(); ?></title>
  31.     <subtitle type="text"><?php bloginfo_rss("description") ?></subtitle>
  32.  
  33.     <updated><?php
  34.         $date = get_lastpostmodified( 'GMT' );
  35.         echo $date ? mysql2date( 'Y-m-d\TH:i:s\Z', $date, false ) : date( 'Y-m-d\TH:i:s\Z' );
  36.     ?></updated>
  37.  
  38.     <link rel="alternate" type="<?php bloginfo_rss('html_type'); ?>" href="<?php bloginfo_rss('url') ?>" />
  39.     <id><?php bloginfo('atom_url'); ?></id>
  40.     <link rel="self" type="application/atom+xml" href="<?php self_link(); ?>" />
  41.  
  42.     <?php
  43.     /**
  44.      * Fires just before the first Atom feed entry.
  45.      *
  46.      * @since 2.0.0
  47.      */
  48.     do_action( 'atom_head' );
  49.  
  50.     while ( have_posts() ) : the_post();
  51.     ?>
  52.     <entry>
  53.         <author>
  54.             <name><?php the_author() ?></name>
  55.             <?php $author_url = get_the_author_meta('url'); if ( !empty($author_url) ) : ?>
  56.             <uri><?php the_author_meta('url')?></uri>
  57.             <?php endif;
  58.  
  59.             /**
  60.              * Fires at the end of each Atom feed author entry.
  61.              *
  62.              * @since 3.2.0
  63.              */
  64.             do_action( 'atom_author' );
  65.         ?>
  66.         </author>
  67.         <title type="<?php html_type_rss(); ?>"><![CDATA[<?php the_title_rss() ?>]]></title>
  68.         <link rel="alternate" type="<?php bloginfo_rss('html_type'); ?>" href="<?php the_permalink_rss() ?>" />
  69.         <id><?php the_guid() ; ?></id>
  70.         <updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated>
  71.         <published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published>
  72.         <?php the_category_rss('atom') ?>
  73.         <summary type="<?php html_type_rss(); ?>"><![CDATA[<?php the_excerpt_rss(); ?>]]></summary>
  74. <?php if ( !get_option('rss_use_excerpt') ) : ?>
  75.         <content type="<?php html_type_rss(); ?>" xml:base="<?php the_permalink_rss() ?>"><![CDATA[<?php the_content_feed('atom') ?>]]></content>
  76. <?php endif; ?>
  77.     <?php atom_enclosure();
  78.     /**
  79.      * Fires at the end of each Atom feed item.
  80.      *
  81.      * @since 2.0.0
  82.      */
  83.     do_action( 'atom_entry' );
  84.  
  85.     if ( get_comments_number() || comments_open() ) :
  86.         ?>
  87.         <link rel="replies" type="<?php bloginfo_rss('html_type'); ?>" href="<?php the_permalink_rss() ?>#comments" thr:count="<?php echo get_comments_number()?>"/>
  88.         <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()?>"/>
  89.         <thr:total><?php echo get_comments_number()?></thr:total>
  90.     <?php endif; ?>
  91.     </entry>
  92.     <?php endwhile ; ?>
  93. </feed>
  94.