2003-10-26 06:25:26 +01:00
< ? php
2004-04-25 05:59:12 +02:00
require_once ( '../wp-includes/wp-l10n.php' );
$title = __ ( 'Permalink Options' );
2004-09-15 17:09:39 +02:00
require ( './options-head.php' );
2003-10-26 06:25:26 +01:00
2004-08-27 07:20:59 +02:00
$home = get_settings ( 'home' );
2004-09-15 17:09:39 +02:00
if ( $home != '' && $home != get_settings ( 'siteurl' ) ) {
$home_path = parse_url ( $home );
$home_path = $home_root [ 'path' ];
$root = str_replace ( $_SERVER [ " PHP_SELF " ], '' , $_SERVER [ " PATH_TRANSLATED " ]);
$home_path = $root . $home_path . " / " ;
2004-08-27 07:20:59 +02:00
} else {
2004-09-15 17:09:39 +02:00
$home_path = ABSPATH ;
2004-08-27 07:20:59 +02:00
}
2004-10-14 10:09:00 +02:00
if ( isset ( $_POST ) ) {
2004-10-18 06:50:08 +02:00
if ( isset ( $_POST [ 'permalink_structure' ]) ) {
2004-10-14 10:09:00 +02:00
$permalink_structure = $_POST [ 'permalink_structure' ];
2004-10-18 06:50:08 +02:00
if ( ! empty ( $permalink_structure ) )
$permalink_structure = preg_replace ( '#/+#' , '/' , '/' . $_POST [ 'permalink_structure' ]);
update_option ( 'permalink_structure' , $permalink_structure );
}
2004-10-14 10:09:00 +02:00
2004-10-18 06:50:08 +02:00
if ( isset ( $_POST [ 'category_base' ]) ) {
2004-10-14 10:09:00 +02:00
$category_base = $_POST [ 'category_base' ];
2004-10-18 06:50:08 +02:00
if ( ! empty ( $category_base ) )
$category_base = preg_replace ( '#/+#' , '/' , '/' . $_POST [ 'category_base' ]);
update_option ( 'category_base' , $category_base );
}
2003-10-26 06:25:26 +01:00
}
2004-10-18 06:50:08 +02:00
2004-10-14 10:09:00 +02:00
$permalink_structure = get_settings ( 'permalink_structure' );
$category_base = get_settings ( 'category_base' );
2004-10-06 04:18:37 +02:00
generate_page_rewrite_rules ();
2004-09-15 17:09:39 +02:00
if ( ( ! file_exists ( $home_path . '.htaccess' ) && is_writable ( $home_path )) || is_writable ( $home_path . '.htaccess' ) )
$writable = true ;
else
$writable = false ;
2003-10-26 06:25:26 +01:00
2004-09-15 17:09:39 +02:00
if ( strstr ( $permalink_structure , 'index.php' ) ) // If they're using
$usingpi = true ;
else
$usingpi = false ;
2003-10-26 06:25:26 +01:00
2004-10-06 04:18:37 +02:00
save_mod_rewrite_rules ();
2003-10-26 06:25:26 +01:00
?>
2004-09-15 17:09:39 +02:00
2004-05-09 07:47:02 +02:00
< ? php if ( isset ( $_POST [ 'submit' ])) : ?>
2004-04-28 06:56:29 +02:00
< div class = " updated " >< p >< ? php _e ( 'Permalink structure updated.' ); ?> </p></div>
< ? php endif ; ?>
2004-07-28 01:37:45 +02:00
2003-10-26 06:25:26 +01:00
< div class = " wrap " >
2004-04-25 05:59:12 +02:00
< h2 >< ? php _e ( 'Edit Permalink Structure' ) ?> </h2>
2004-09-15 17:09:39 +02:00
< p >< ? php _e ( 'By default WordPress uses web URIs which have question marks and lots of numbers in them, however WordPress offers you the ability to create a custom URI structure for your permalinks and archives. This can improve the aesthetics, usability, and longevity of your links. A <a href="http://codex.wordpress.org/Permalink_Structure">number of tags are available</a>, and here are some examples to get you started.' ); ?> </p>
2004-05-05 09:34:41 +02:00
2004-09-15 17:09:39 +02:00
< ? php if ( $is_apache ) : ?>
2004-05-05 09:34:41 +02:00
< dl >
2004-09-15 17:09:39 +02:00
< dt >< ? php _e ( 'Structure' ); ?> : <code>/%year%/%monthnum%/%day%/%postname%/</code></dt>
< strong >
< dd >< ? php _e ( 'Result' ); ?> : <code><?php echo get_settings('home') . '/' . date('Y') . '/' . date('m') . '/' . date('d') . '/sample-post/'; ?></code></dd>
</ strong >
< dt >< ? php _e ( 'Structure' ); ?> : <code>/archives/%post_id%</code></dt>
< strong >
< dd >< ? php _e ( 'Result' ); ?> : <code><?php echo get_settings('home'); ?>/archives/123</code></dd>
</ strong >
< dt ></ dt >
2004-05-05 09:34:41 +02:00
</ dl >
2004-09-15 17:09:39 +02:00
< p >< ? php _e ( 'For the above to work you must have something called <code>mod_rewrite</code> installed on your server. (Ask your host.) If that isn’t available, you can prefix the structure with <code>/index.php/</code> . This is the recommend method if you are on any web server but Apache.' ); ?> </p>
< ? php else : ?>
< dl >
< dt >< ? php _e ( 'Structure' ); ?> : <code>/index.php/%year%/%monthnum%/%day%/%postname%/</code></dt>
< strong >
< dd >< ? php _e ( 'Result' ); ?> : <code><?php echo get_settings('home') . '/index.php/' . date('Y') . '/' . date('m') . '/' . date('d') . '/sample-post/'; ?></code></dd>
</ strong >
< dt >< ? php _e ( 'Structure' ); ?> : <code>/index.php/archives/%post_id%</code></dt>
< strong >
< dd >< ? php _e ( 'Result' ); ?> : <code><?php echo get_settings('home'); ?>/index.php/archives/123</code></dd>
</ strong >
< dt ></ dt >
</ dl >
< ? php endif ; ?>
2003-12-11 01:22:36 +01:00
< form name = " form " action = " options-permalink.php " method = " post " >
2004-05-05 09:34:41 +02:00
< p >< ? php _e ( 'Use the template tags above to create a virtual site structure:' ) ?> </p>
2003-10-26 06:25:26 +01:00
< p >
2004-09-15 17:09:39 +02:00
< ? php _e ( 'Structure' ); ?> : <input name="permalink_structure" type="text" class="code" style="width: 60%;" value="<?php echo $permalink_structure; ?>" size="50" />
2003-10-26 06:25:26 +01:00
</ p >
2004-05-09 04:52:27 +02:00
< p >< ? php _e ( 'If you like, you may enter a custom prefix for your category URIs here. For example, <code>/taxonomy/categorias</code> would make your category links like <code>http://example.org/taxonomy/categorias/general/</code>. If you leave this blank the default will be used.' ) ?> </p>
2004-05-05 09:34:41 +02:00
< p >
2004-09-15 17:09:39 +02:00
< ? php _e ( 'Category base' ); ?> : <input name="category_base" type="text" class="code" value="<?php echo $category_base; ?>" size="30" />
2004-05-05 09:34:41 +02:00
</ p >
2004-04-19 10:09:27 +02:00
< p class = " submit " >
2004-06-11 20:23:12 +02:00
< input type = " submit " name = " submit " value = " <?php _e('Update Permalink Structure »') ?> " />
2003-10-26 06:25:26 +01:00
</ p >
</ form >
2004-09-15 17:09:39 +02:00
< ? php if ( $permalink_structure && ! $usingpi && ! $writable ) : ?>
< p >< ? php _e ( 'If your <code>.htaccess</code> was <a href="http://codex.wordpress.org/Make_a_Directory_Writable">writable</a> we could do this automatically, but it isn’t so these are the mod_rewrite rules you should have in your <code>.htaccess</code> file. Click in the field and press <kbd>CTRL + a</kbd> to select all.' ) ?> </p>
2004-07-28 01:37:45 +02:00
< form action = " options-permalink.php " method = " post " >
2004-08-14 19:36:32 +02:00
< p >
2004-07-28 01:37:45 +02:00
< textarea rows = " 5 " style = " width: 98%; " name = " rules " >< ? php echo mod_rewrite_rules ( $permalink_structure ); ?>
2004-05-31 19:22:25 +02:00
</ textarea >
2004-04-15 09:53:45 +02:00
</ p >
2004-09-15 17:09:39 +02:00
< ? php endif ; ?>
2004-03-08 06:12:11 +01:00
</ form >
2004-09-15 17:09:39 +02:00
2004-05-14 10:38:34 +02:00
</ div >
2003-10-26 06:25:26 +01:00
2004-09-15 17:09:39 +02:00
< ? php require ( './admin-footer.php' ); ?>