$value) { $options[] = $key; } } else { $options = explode(',', stripslashes($_POST['page_options'])); } // Save for later. $old_siteurl = get_settings('siteurl'); $old_home = get_settings('home'); // HACK // Options that if not there have 0 value but need to be something like "closed" $nonbools = array('default_ping_status', 'default_comment_status'); if ($options) { foreach ($options as $option) { $option = trim($option); $value = trim(stripslashes($_POST[$option])); if( in_array($option, $nonbools) && ( $value == '0' || $value == '') ) $value = 'closed'; if( $option == 'blogdescription' || $option == 'blogname' ) if (current_user_can('unfiltered_html') == false) $value = wp_filter_post_kses( $value ); if (update_option($option, $value) ) { $any_changed++; } } } if ($any_changed) { // If siteurl or home changed, reset cookies. if ( get_settings('siteurl') != $old_siteurl || get_settings('home') != $old_home ) { // If home changed, write rewrite rules to new location. $wp_rewrite->flush_rules(); // Clear cookies for old paths. wp_clearcookie(); // Set cookies for new paths. wp_setcookie($user_login, $user_pass_md5, true, get_settings('home'), get_settings('siteurl')); } //$message = sprintf(__('%d setting(s) saved... '), $any_changed); } $referred = remove_query_arg('updated' , wp_get_referer()); $goback = add_query_arg('updated', 'true', wp_get_referer()); $goback = preg_replace('|[^a-z0-9-~+_.?#=&;,/:]|i', '', $goback); wp_redirect($goback); break; default: include('admin-header.php'); ?>