WordPress at a glance
function is not described

save_mod_rewrite_rules() WP 1.5.0

Updates the htaccess file with the current rules if it is writable.

Always writes to the file if it exists and is writable to ensure that we blank out old rules.

  • Global. WP_Rewrite. $wp_rewrite

No Hooks.


true/false/null. True on write success, false on failure. Null in multisite.



Code of save mod rewrite rules: wp-admin/includes/misc.php VER 5.0.3

function save_mod_rewrite_rules() {
	if ( is_multisite() )

	global $wp_rewrite;

	// Ensure get_home_path() is declared.
	require_once( ABSPATH . 'wp-admin/includes/file.php' );

	$home_path     = get_home_path();
	$htaccess_file = $home_path . '.htaccess';

	 * If the file doesn't already exist check for write access to the directory
	 * and whether we have some rules. Else check for write access to the file.
	if ((!file_exists($htaccess_file) && is_writable($home_path) && $wp_rewrite->using_mod_rewrite_permalinks()) || is_writable($htaccess_file)) {
		if ( got_mod_rewrite() ) {
			$rules = explode( "\n", $wp_rewrite->mod_rewrite_rules() );
			return insert_with_markers( $htaccess_file, 'WordPress', $rules );

	return false;