}
/**
- * If siteurl or home changed, flush rewrite rules.
+ * If siteurl, home or page_on_front changed, flush rewrite rules.
*
* @since 2.1.0
*
- * @param unknown_type $old_value
- * @param unknown_type $value
+ * @param string $old_value
+ * @param string $value
*/
function update_home_siteurl( $old_value, $value ) {
- global $wp_rewrite;
-
if ( defined( "WP_INSTALLING" ) )
return;
// If home changed, write rewrite rules to new location.
- $wp_rewrite->flush_rules();
+ flush_rewrite_rules();
}
add_action( 'update_option_home', 'update_home_siteurl', 10, 2 );
add_action( 'update_option_siteurl', 'update_home_siteurl', 10, 2 );
+add_action( 'update_option_page_on_front', 'update_home_siteurl', 10, 2 );
/**
* Shorten an URL, to be used as link text
function url_shorten( $url ) {
$short_url = str_replace( 'http://', '', stripslashes( $url ));
$short_url = str_replace( 'www.', '', $short_url );
- if ('/' == substr( $short_url, -1 ))
- $short_url = substr( $short_url, 0, -1 );
+ $short_url = untrailingslashit( $short_url );
if ( strlen( $short_url ) > 35 )
- $short_url = substr( $short_url, 0, 32 ).'...';
+ $short_url = substr( $short_url, 0, 32 ) . '...';
return $short_url;
}
$option = $_POST['wp_screen_options']['option'];
$value = $_POST['wp_screen_options']['value'];
- if ( !preg_match( '/^[a-z_-]+$/', $option ) )
+ if ( $option != sanitize_key( $option ) )
return;
- $option = str_replace('-', '_', $option);
-
$map_option = $option;
$type = str_replace('edit_', '', $map_option);
$type = str_replace('_per_page', '', $type);
- if ( in_array($type, get_post_types()) )
- $map_option = 'edit_per_page';
- if ( in_array( $type, get_taxonomies()) )
+ if ( in_array( $type, get_taxonomies() ) )
$map_option = 'edit_tags_per_page';
-
+ elseif ( in_array( $type, get_post_types() ) )
+ $map_option = 'edit_per_page';
+ else
+ $option = str_replace('-', '_', $option);
switch ( $map_option ) {
case 'edit_per_page':
}
update_user_meta($user->ID, $option, $value);
- wp_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
+ wp_safe_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
exit;
}
}
-function wp_menu_unfold() {
- if ( isset($_GET['unfoldmenu']) ) {
- delete_user_setting('mfold');
- wp_redirect( remove_query_arg( 'unfoldmenu', stripslashes($_SERVER['REQUEST_URI']) ) );
- exit;
- }
-}
-
/**
* Check if rewrite rule for WordPress already exists in the IIS 7 configuration file
*
fclose($fp);
}
-/**
- * Workaround for Windows bug in is_writable() function
- *
- * @since 2.8.0
- *
- * @param string $path
- * @return bool
- */
-function win_is_writable( $path ) {
- /* will work in despite of Windows ACLs bug
- * NOTE: use a trailing slash for folders!!!
- * see http://bugs.php.net/bug.php?id=27609
- * see http://bugs.php.net/bug.php?id=30931
- */
-
- if ( $path[strlen( $path ) - 1] == '/' ) // recursively return a temporary file path
- return win_is_writable( $path . uniqid( mt_rand() ) . '.tmp');
- else if ( is_dir( $path ) )
- return win_is_writable( $path . '/' . uniqid( mt_rand() ) . '.tmp' );
- // check tmp file for read/write capabilities
- $should_delete_tmp_file = !file_exists( $path );
- $f = @fopen( $path, 'a' );
- if ( $f === false )
- return false;
- fclose( $f );
- if ( $should_delete_tmp_file )
- unlink( $path );
- return true;
-}
-
/**
* Display the default admin color scheme picker (Used in user-edit.php)
*
if ( empty($current_color) )
$current_color = 'fresh';
foreach ( $_wp_admin_css_colors as $color => $color_info ): ?>
-<div class="color-option"><input name="admin_color" id="admin_color_<?php echo $color; ?>" type="radio" value="<?php echo esc_attr($color) ?>" class="tog" <?php checked($color, $current_color); ?> />
+<div class="color-option"><input name="admin_color" id="admin_color_<?php echo esc_attr( $color ); ?>" type="radio" value="<?php echo esc_attr( $color ); ?>" class="tog" <?php checked($color, $current_color); ?> />
<table class="color-palette">
<tr>
<?php foreach ( $color_info->colors as $html_color ): ?>
- <td style="background-color: <?php echo $html_color ?>" title="<?php echo $color ?>"> </td>
+ <td style="background-color: <?php echo esc_attr( $html_color ); ?>" title="<?php echo esc_attr( $color ); ?>"> </td>
<?php endforeach; ?>
</tr>
</table>
- <label for="admin_color_<?php echo $color; ?>"><?php echo $color_info->name ?></label>
+ <label for="admin_color_<?php echo esc_attr( $color ); ?>"><?php echo esc_html( $color_info->name ); ?></label>
</div>
<?php endforeach; ?>
</fieldset>
<?php
}
-?>
+
+function _ipad_meta() {
+ if ( wp_is_mobile() ) {
+ ?>
+ <meta name="viewport" id="viewport-meta" content="width=device-width, initial-scale=1">
+ <?php
+ }
+}
+add_action('admin_head', '_ipad_meta');