Changeset 963
- Timestamp:
- 03/08/2004 05:12:11 AM (21 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/options-permalink.php
r961 r963 101 101 if ('/' != substr($site_root, -1)) $site_root = $site_root . '/'; 102 102 103 $rewritecode = array(104 '%year%',105 '%monthnum%',106 '%day%',107 '%postname%',108 '%post_id%'109 );110 $rewritereplace = array(111 '([0-9]{4})?',112 '([0-9]{1,2})?',113 '([0-9]{1,2})?',114 '([0-9a-z-_]+)?',115 '([0-9]+)?'116 );117 $queryreplace = array (118 'year=',119 'monthnum=',120 'day=',121 'name=',122 'p='123 );124 125 126 127 $match = str_replace('/', '/?', $permalink_structure);128 $match = preg_replace('|/[?]|', '', $match, 1);129 130 $match = str_replace($rewritecode, $rewritereplace, $match);131 $match = preg_replace('|[?]|', '', $match, 1);132 133 $feedmatch = str_replace('?/?', '/', $match);134 $trackbackmatch = $feedmatch;135 136 preg_match_all('/%.+?%/', $permalink_structure, $tokens);137 138 $query = 'index.php?';139 $feedquery = 'wp-feed.php?';140 $trackbackquery = 'wp-trackback.php?';141 for ($i = 0; $i < count($tokens[0]); ++$i) {142 if (0 < $i) {143 $query .= '&';144 $feedquery .= '&';145 $trackbackquery .= '&';146 }147 148 $query_token = str_replace($rewritecode, $queryreplace, $tokens[0][$i]) . '$'. ($i + 1);149 $query .= $query_token;150 $feedquery .= $query_token;151 $trackbackquery .= $query_token;152 }153 ++$i;154 155 // Add post paged stuff156 $match .= '([0-9]+)?/?';157 $query .= "&page=$$i";158 159 // Add post feed stuff160 $feedregex = '(feed|rdf|rss|rss2|atom)/?';161 $feedmatch .= $feedregex;162 $feedquery .= "&feed=$$i";163 164 // Add post trackback stuff165 $trackbackregex = 'trackback/?';166 $trackbackmatch .= $trackbackregex;167 168 // Site feed169 $sitefeedmatch = 'feed/?([0-9a-z-_]+)?/?$';170 $sitefeedquery = $site_root . 'wp-feed.php?feed=$1';171 172 // Site comment feed173 $sitecommentfeedmatch = 'comments/feed/?([0-9a-z-_]+)?/?$';174 $sitecommentfeedquery = $site_root . 'wp-feed.php?feed=$1&withcomments=1';175 176 // Code for nice categories, currently not very flexible177 $front = substr($permalink_structure, 0, strpos($permalink_structure, '%'));178 $catmatch = $front . 'category/';179 $catmatch = preg_replace('|^/+|', '', $catmatch);180 $authormatch = $front . 'author/';181 $authormatch = preg_replace('|^/+|', '', $authormatch);182 183 103 ?> 184 104 <form action""> 185 105 <textarea rows="5" style="width: 100%;">RewriteEngine On 186 106 RewriteBase <?php echo $site_root; ?> 187 RewriteRule ^<?php echo $match; echo '$ ' . $site_root . $query ?> [QSA] 188 RewriteRule ^<?php echo $feedmatch; echo '$ ' . $site_root . $feedquery ?> [QSA] 189 RewriteRule ^<?php echo $trackbackmatch; echo '$ ' . $site_root . $trackbackquery ?> [QSA] 190 RewriteRule ^<?php echo $catmatch; ?>(.*)/<?php echo $feedregex ?>$ <?php echo $site_root; ?>wp-feed.php?category_name=$1&feed=$2 [QSA] 191 RewriteRule ^<?php echo $catmatch; ?>?(.*) <?php echo $site_root; ?>index.php?category_name=$1 [QSA] 192 RewriteRule ^<?php echo $authormatch; ?>(.*)/<?php echo $feedregex ?>$ <?php echo $site_root; ?>wp-feed.php?author_name=$1&feed=$2 [QSA] 193 RewriteRule ^<?php echo $authormatch; ?>?(.*) <?php echo $site_root; ?>index.php?author_name=$1 [QSA] 194 RewriteRule ^<?php echo $sitefeedmatch; ?> <?php echo $sitefeedquery ?> [QSA] 195 RewriteRule ^<?php echo $sitecommentfeedmatch; ?> <?php echo $sitecommentfeedquery ?> [QSA]</textarea> 196 </form> 107 <?php 108 $rewrite = rewrite_rules(); 109 foreach ($rewrite as $match => $query) { 110 echo 'RewriteRule ^' . $match . ' ' . $site_root . $query . " [QSA]\n"; 111 } 112 ?></textarea> 113 </form> 197 114 </div> 198 115 <?php -
trunk/wp-includes/functions.php
r957 r963 1402 1402 '([0-9]{1,2})?', 1403 1403 '([0-9]{1,2})?', 1404 '([0-9a-z -]+)?',1404 '([0-9a-z_-]+)?', 1405 1405 '([0-9]+)?' 1406 1406 ); … … 1444 1444 1445 1445 // Add post paged stuff 1446 $match .= '([0-9]+)?/? ';1446 $match .= '([0-9]+)?/?$'; 1447 1447 $query .= '&page=' . preg_index($i, $matches); 1448 1448 1449 1449 // Add post feed stuff 1450 $feedregex = '(feed|rdf|rss|rss2|atom)/? ';1450 $feedregex = '(feed|rdf|rss|rss2|atom)/?$'; 1451 1451 $feedmatch .= $feedregex; 1452 1452 $feedquery .= '&feed=' . preg_index($i, $matches); 1453 1453 1454 1454 // Add post trackback stuff 1455 $trackbackregex = 'trackback/? ';1455 $trackbackregex = 'trackback/?$'; 1456 1456 $trackbackmatch .= $trackbackregex; 1457 1457 1458 1458 // Site feed 1459 $sitefeedmatch = 'feed/?([0-9a-z -]+)?/?$';1459 $sitefeedmatch = 'feed/?([0-9a-z_-]+)?/?$'; 1460 1460 $sitefeedquery = $site_root . 'wp-feed.php?feed=' . preg_index(1, $matches); 1461 1461 1462 1462 // Site comment feed 1463 $sitecommentfeedmatch = 'comments/feed/?([0-9a-z -]+)?/?$';1463 $sitecommentfeedmatch = 'comments/feed/?([0-9a-z_-]+)?/?$'; 1464 1464 $sitecommentfeedquery = $site_root . 'wp-feed.php?feed=' . preg_index(1, $matches) . '&withcomments=1'; 1465 1465 … … 1491 1491 $match => $query, 1492 1492 $feedmatch => $feedquery, 1493 $trackbackmatch => $trac backquery,1493 $trackbackmatch => $trackbackquery, 1494 1494 $sitefeedmatch => $sitefeedquery, 1495 1495 $sitecommentfeedmatch => $sitecommentfeedquery
Note: See TracChangeset
for help on using the changeset viewer.