X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/6c8f14c09105d0afa4c1574215c59b5021040e76..88550bc3400cc7c035ff590ecb007c7938041ded:/wp-admin/options-permalink.php?ds=sidebyside diff --git a/wp-admin/options-permalink.php b/wp-admin/options-permalink.php index 906361e8..110ceda2 100644 --- a/wp-admin/options-permalink.php +++ b/wp-admin/options-permalink.php @@ -7,7 +7,7 @@ */ /** WordPress Administration Bootstrap */ -require_once('./admin.php'); +require_once( dirname( __FILE__ ) . '/admin.php' ); if ( ! current_user_can( 'manage_options' ) ) wp_die( __( 'You do not have sufficient permissions to manage options for this site.' ) ); @@ -43,7 +43,7 @@ get_current_screen()->set_help_sidebar( '
' . __('For more information:') . '
' . '' . __('Documentation on Permalinks Settings') . '
' . '' . __('Documentation on Using Permalinks') . '
' . - '' . __('Support Forums') . '
' + '' . __('Support Forums') . '
' ); /** @@ -71,13 +71,11 @@ jQuery(document).ready(function() { } add_filter('admin_head', 'options_permalink_add_js'); -include('./admin-header.php'); - $home_path = get_home_path(); $iis7_permalinks = iis7_supports_permalinks(); $prefix = $blog_prefix = ''; -if ( ! got_mod_rewrite() && ! $iis7_permalinks ) +if ( ! got_url_rewrite() ) $prefix = '/index.php'; if ( is_multisite() && !is_subdomain_install() && is_main_site() ) $blog_prefix = '/blog'; @@ -115,23 +113,31 @@ if ( isset($_POST['permalink_structure']) || isset($_POST['category_base']) ) { $wp_rewrite->set_tag_base( $tag_base ); } - create_initial_taxonomies(); + wp_redirect( admin_url( 'options-permalink.php?settings-updated=true' ) ); + exit; } -$permalink_structure = get_option('permalink_structure'); -$category_base = get_option('category_base'); -$tag_base = get_option( 'tag_base' ); +$permalink_structure = get_option( 'permalink_structure' ); +$category_base = get_option( 'category_base' ); +$tag_base = get_option( 'tag_base' ); +$update_required = false; if ( $iis7_permalinks ) { if ( ( ! file_exists($home_path . 'web.config') && win_is_writable($home_path) ) || win_is_writable($home_path . 'web.config') ) $writable = true; else $writable = false; +} elseif ( $is_nginx ) { + $writable = false; } else { - if ( ( ! file_exists($home_path . '.htaccess') && is_writable($home_path) ) || is_writable($home_path . '.htaccess') ) + if ( ( ! file_exists( $home_path . '.htaccess' ) && is_writable( $home_path ) ) || is_writable( $home_path . '.htaccess' ) ) { $writable = true; - else + } else { $writable = false; + $existing_rules = array_filter( extract_from_markers( $home_path . '.htaccess', 'WordPress' ) ); + $new_rules = array_filter( explode( "\n", $wp_rewrite->mod_rewrite_rules() ) ); + $update_required = ( $new_rules !== $existing_rules ); + } } if ( $wp_rewrite->using_index_permalinks() ) @@ -141,7 +147,9 @@ else flush_rewrite_rules(); -if (isset($_POST['submit'])) : ?> +require( ABSPATH . 'wp-admin/admin-header.php' ); + +if ( ! empty( $_GET['settings-updated'] ) ) : ?>