[wp-cvs] wordpress/wp-includes functions.php, 1.111, 1.112 template-functions-general.php, 1.30, 1.31 template-functions-links.php, 1.13, 1.14

Ryan Boren rboren at users.sourceforge.net
Wed Jun 2 02:14:05 CDT 2004


Update of /cvsroot/cafelog/wordpress/wp-includes
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24234/wp-includes

Modified Files:
	functions.php template-functions-general.php 
	template-functions-links.php 
Log Message:
Make /feed/ and /comments/feed work with path info.  Introduce get_feed_link().

Index: template-functions-links.php
===================================================================
RCS file: /cvsroot/cafelog/wordpress/wp-includes/template-functions-links.php,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** template-functions-links.php	31 May 2004 17:22:25 -0000	1.13
--- template-functions-links.php	2 Jun 2004 07:14:03 -0000	1.14
***************
*** 135,138 ****
--- 135,195 ----
  }
  
+ function get_feed_link($feed='rss2') {
+     $do_perma = 0;
+     $feed_url = get_settings('siteurl');
+     $comment_feed_url = $feed_url;
+ 
+     $permalink = get_settings('permalink_structure');
+     if ('' != $permalink) {
+         $do_perma = 1;
+         $feed_url = get_settings('home');
+         $index = get_settings('blogfilename');
+         $prefix = '';
+         if (preg_match('#^/*' . $index . '#', $permalink)) {
+             $feed_url .= '/' . $index;
+         }
+ 
+         $comment_feed_url = $feed_url;
+         $feed_url .= '/feed';
+         $comment_feed_url .= '/comments/feed';
+     }
+ 
+     switch($feed) {
+         case 'rdf':
+             $output = $feed_url .'/wp-rdf.php';
+             if ($do_perma) {
+                 $output = $feed_url . '/rdf/';
+             }
+             break;
+         case 'rss':
+             $output = $feed_url . '/wp-rss.php';
+             if ($do_perma) {
+                 $output = $feed_url . '/rss/';
+             }
+             break;
+         case 'atom':
+             $output = $feed_url .'/wp-atom.php';
+             if ($do_perma) {
+                 $output = $feed_url . '/atom/';
+             }
+             break;        
+         case 'comments_rss2':
+             $output = $feed_url .'/wp-commentsrss2.php';
+             if ($do_perma) {
+                 $output = $comment_feed_url . '/rss2/';
+             }
+             break;
+         case 'rss2':
+         default:
+             $output = $feed_url .'/wp-rss2.php';
+             if ($do_perma) {
+                 $output = $feed_url . '/rss2/';
+             }
+             break;
+     }
+ 
+     return $output;
+ }
+ 
  function edit_post_link($link = 'Edit This', $before = '', $after = '') {
      global $user_level, $post;

Index: functions.php
===================================================================
RCS file: /cvsroot/cafelog/wordpress/wp-includes/functions.php,v
retrieving revision 1.111
retrieving revision 1.112
diff -C2 -d -r1.111 -r1.112
*** functions.php	2 Jun 2004 05:16:44 -0000	1.111
--- functions.php	2 Jun 2004 07:14:02 -0000	1.112
***************
*** 1304,1307 ****
--- 1304,1312 ----
      $pageregex = 'page/?([0-9]{1,})/?$';
      $front = substr($permalink_structure, 0, strpos($permalink_structure, '%'));    
+     $index = get_settings('blogfilename');
+     $prefix = '';
+     if (preg_match('#^/*' . $index . '#', $front)) {
+         $prefix = $index . '/';
+     }
  
      // If the permalink does not have year, month, and day, we need to create a
***************
*** 1315,1327 ****
  
      // Site feed
!     $sitefeedmatch = 'feed/?([_0-9a-z-]+)?/?$';
      $sitefeedquery = 'index.php?feed=_' . preg_index(1, $matches);
  
      // Site comment feed
!     $sitecommentfeedmatch = 'comments/feed/?([_0-9a-z-]+)?/?$';
      $sitecommentfeedquery = 'index.php?feed=_' . preg_index(1, $matches) . '&withcomments=1';
  
      // Site page
!     $sitepagematch = $pageregex;
      $sitepagequery = 'index.php?paged=' . preg_index(1, $matches);
  
--- 1320,1332 ----
  
      // Site feed
!     $sitefeedmatch = $prefix . 'feed/?([_0-9a-z-]+)?/?$';
      $sitefeedquery = 'index.php?feed=_' . preg_index(1, $matches);
  
      // Site comment feed
!     $sitecommentfeedmatch = $prefix . 'comments/feed/?([_0-9a-z-]+)?/?$';
      $sitecommentfeedquery = 'index.php?feed=_' . preg_index(1, $matches) . '&withcomments=1';
  
      // Site page
!     $sitepagematch = $prefix . $pageregex;
      $sitepagequery = 'index.php?paged=' . preg_index(1, $matches);
  

Index: template-functions-general.php
===================================================================
RCS file: /cvsroot/cafelog/wordpress/wp-includes/template-functions-general.php,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** template-functions-general.php	24 May 2004 08:22:18 -0000	1.30
--- template-functions-general.php	2 Jun 2004 07:14:03 -0000	1.31
***************
*** 21,34 ****
  function get_bloginfo($show='') {
  
-     $do_perma = 0;
-     $feed_url = get_settings('siteurl');
-     $comment_feed_url = get_settings('siteurl');
- 
-     if ('' != get_settings('permalink_structure')) {
-         $do_perma = 1;
-         $feed_url = get_settings('home') . '/feed';
-         $comment_feed_url = get_settings('home') . '/comments/feed';
-     }
- 
      switch($show) {
          case 'url':
--- 21,24 ----
***************
*** 40,71 ****
              break;
          case 'rdf_url':
!             $output = get_settings('siteurl') .'/wp-rdf.php';
!             if ($do_perma) {
!                 $output = $feed_url . '/rdf/';
!             }
              break;
          case 'rss_url':
!             $output = get_settings('siteurl') .'/wp-rss.php';
!             if ($do_perma) {
!                 $output = $feed_url . '/rss/';
!             }
              break;
          case 'rss2_url':
!             $output = get_settings('siteurl') .'/wp-rss2.php';
!             if ($do_perma) {
!                 $output = $feed_url . '/rss2/';
!             }
              break;
          case 'atom_url':
!             $output = get_settings('siteurl') .'/wp-atom.php';
!             if ($do_perma) {
!                 $output = $feed_url . '/atom/';
!             }
              break;        
          case 'comments_rss2_url':
!             $output = get_settings('siteurl') .'/wp-commentsrss2.php';
!             if ($do_perma) {
!                 $output = $comment_feed_url . '/rss2/';
!             }
              break;
          case 'pingback_url':
--- 30,46 ----
              break;
          case 'rdf_url':
!             $output = get_feed_link('rdf');
              break;
          case 'rss_url':
!             $output = get_feed_link('rss');
              break;
          case 'rss2_url':
!             $output = get_feed_link('rss2');
              break;
          case 'atom_url':
!             $output = get_feed_link('atom');
              break;        
          case 'comments_rss2_url':
!             $output = get_feed_link('comments_rss2');
              break;
          case 'pingback_url':




More information about the cvs mailing list