WP 3.8 Color de administrador predeterminado para todos los usuarios

10

Estoy sorprendido con el nuevo esquema de color para 3.8 y aunque el tema clásico 3.7 se ha ido, me gustaría establecer el nuevo esquema de color "Light" como predeterminado para todos los usuarios, pero al mismo tiempo, todavía les permite para cambiar el tema si lo desean, en su perfil de usuario.

¿Alguien ha logrado crear una función para establecer el valor predeterminado para todos los usuarios? He buscado, pero no puedo encontrar nada ya que esto es tan nuevo, el códice 3.8 no está completamente escrito.

    
pregunta Sol 16.12.2013 - 22:12

1 respuesta

14

Puedes establecer (en términos de fuerza) un color predeterminado dentro de functions.php como este:

add_filter( 'get_user_option_admin_color', 'update_user_option_admin_color', 5 );

function update_user_option_admin_color( $color_scheme ) {
    $color_scheme = 'light';

    return $color_scheme;
}

Actualización: los siguientes esquemas de color están disponibles por defecto en WP 3.8

  • fresco
  • luz
  • azul
  • café
  • ectoplasma
  • medianoche
  • océano
  • amanecer

Bonificación (se encuentra en wpmudev ): deshabilite las opciones de combinación de colores del administrador para asegurarse de que los usuarios no puedan volver a cambiar a otro color:

remove_action( 'admin_color_scheme_picker', 'admin_color_scheme_picker' );

Actualización 2: como Rarst señaló, el filtro anterior forzará un esquema de color específico en lugar de establecer un valor predeterminado variable. La solución a esto es ejecutar una acción solo una vez (por ejemplo, en la configuración / registro del usuario) para que luego el usuario pueda decidir y cambiar el color por su cuenta:

add_action( 'user_register', 'myplugin_registration_save', 10, 1 );
function myplugin_registration_save( $user_id ) {

       update_user_meta($user_id, 'admin_color', 'light');

}

Actualización 3: Bien, así que un intento más :)

La idea es agregar metadatos de usuario adicionales (ver custom_admin_color_scheme ) tan pronto como el usuario actualice el perfil; Siempre que el campo no esté establecido en true , cambiaremos la combinación de colores de administración predeterminada a una combinación de colores de nuestra elección:

// add custom user meta data
add_action('personal_options_update', 'save_custom_admin_color_optios');
function save_custom_admin_color_optios( $user_id ) {

    update_user_meta($user_id, 'custom_admin_color_scheme', true);

}

// change default color scheme if not customized
$customized_color_scheme = get_user_option( 'custom_admin_color_scheme', get_current_user_id() );
if ( empty($customized_color_scheme) ) {

    update_user_meta(get_current_user_id(), 'admin_color', 'light');

}

Actualización 4: Finalmente, también hay un complemento muy bueno en wordpress.org para manejar los esquemas de color predeterminados del administrador fácilmente: Esquema de color de administrador predeterminado

    
respondido por el Sven 16.12.2013 - 22:29

Lea otras preguntas en las etiquetas