8 códigos para mejorar el backoffice de WordPress

El backoffice de WordPress es una zona muy importante de la plataforma. Mediante esta área, el administrador puede publicar contenido y gestionar todo lo relativo al sitio web. En este artículo, he compilado 8 códigos para mejorar el backoffice de WordPress. Espero que los disfrutes.

Mantente logueado por mucho más tiempo

Mediante este código podrás permanecer logueado en el backoffice de WordPress durante mucho más tiempo. Pega el código en el fichero functions.php de tu tema y modifica, si así lo deseas, la cantidad de segundos que quieres permanecer logueado en el sistema.

add_filter( 'auth_cookie_expiration', 'stay_logged_in_for_1_year' );
function stay_logged_in_for_1_year( $expire ) {
  return 31556926; // 1 año en segundos
}

Eliminar menús

Cuando desarrollas una web para un cliente con WordPress, es muy buena idea eliminar menús del backoffice que no va a utilizar para prevenir futuros accidentes, y para que no elimine el tema por el cual ha pagado.

Pega el siguiente código en el fichero functions.php de tu tema. En dicho código, elimino los menús descritos en el array $restricted.

function remove_menus () {
global $menu;
		$restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
		end ($menu);
		while (prev($menu)){
			$value = explode(' ',$menu[key($menu)][0]);
			if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
		}
}
add_action('admin_menu', 'remove_menus');

Imagen destacada obligatoria antes de publicar

Si el diseño de tu sitio web requiere que muestres la imagen destacada de los posts, lo mejor es hacer que dicho campo sea obligatorio a la hora de publicar contenido. Para ello, debes copiar el siguiente código en el fichero functions.php de tu tema.

add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');

function wpds_check_thumbnail( $post_id ) {
  if( get_post_type($post_id) != 'post' )
      return;

  if ( ! has_post_thumbnail( $post_id ) ) {
    set_transient( "has_post_thumbnail", "no" );
    remove_action('save_post', 'wpds_check_thumbnail');
    wp_update_post(array('ID' => $post_id, 'post_status' => 'draft'));

    add_action('save_post', 'wpds_check_thumbnail');
  } else {
    delete_transient( "has_post_thumbnail" );
  }
}

function wpds_thumbnail_error() {
  if ( get_transient( "has_post_thumbnail" ) == "no" ) {
    echo "<div id='message' class='error'><p><strong>Debes incluir una imagen destacada antes de publicarlo. No te preocupes, tu contenido está a salvo</strong></p></div>";
    delete_transient( "has_post_thumbnail" );
  }
}

backoffice de WordPress

Sustituye el logo del backoffice de WordPress por el tuyo

Volvemos al mismo tema de antes, si tienes que desarrollar una web para un cliente con WordPress, le encantará ver su logo reflejado en todas las áreas de la plataforma, incluido el backoffice. Es una buena manera de reflejar su imagen de marca.

Para ello, solamente tienes que copiar el código de más abajo, y pegarlo en tu fichero functions.php.

add_action('admin_head', 'my_custom_logo');

function my_custom_logo() {
   echo '<style type="text/css">
         #header-logo { background-image: url('.get_bloginfo('template_directory').'/images/mi-logo.gif) !important; }</style>';
}

Eliminar los widgets del escritorio

Introducidos en la versión 2.7 de WordPress, los widgets del escritorio de WordPress pueden ser realmente útiles para mostrar cosas como, por ejemplo, las estadísticas de Google Analytics. Pero puede ser que a tí te estorben y quieras eliminar estos menús que no utilizas. El código de más abajo te permite eliminar los widgets del escritorio de WordPress, una vez lo pegues en el fichero functions.php de tu tema.

function example_remove_dashboard_widgets() {
	global $wp_meta_boxes;

	unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);	

	// Eliminamos los widgets que nos interesen
	unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
	unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
	unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
}

add_action('wp_dashboard_setup', 'example_remove_dashboard_widgets' );

Sustituye el logo del login por el tuyo

Como he dicho antes, para un cliente, su imagen de marca o corporativa es muy importante. A muchos de ellos les encantará ver su logo reflejado, en lugar de la típica “W” de WordPress. Si quieres llevar a cabo esto, solo tienes que pegar el código de más abajo en el fichero functions.php de tu tema.

function my_custom_login_logo() {
    echo '<style type="text/css">
        h1 a { background-image:url('.get_bloginfo('template_directory').'/images/mi-logo.gif) !important; }
    </style>';
}

add_action('login_head', 'my_custom_login_logo');

backoffice de WordPress

Cambiar los colores del admin de WordPress

Si alguna vez has querido cambiar los colores del backoffice de WordPress (así como las fuentes y la estructura) sin tener que editar los archivos de la plataforma, te ofrecemos la solución.

El siguiente ejemplo muestra un cambio de estilo básico (el header gris es sustituido por uno azul), pero puedes añadir tantos estilos como desees dentro de las etiquetas <style></style>.

function custom_colors() {
   echo '<style type="text/css">#wphead{background:#069}</style>';
}

add_action('admin_head', 'custom_colors');

Restringir el número de intentos en el login de WordPress

Cuando tú (o cualquier otro) fallas al intentar acceder al backoffice de WordPress, se muestra un mensaje de error. Si bien esto puede resultar útil para usuarios legítimos, también puedes dar una información muy valiosa a los piratas informáticos.

Pega el siguiente código en tu archivo functions.php para evitar que se muestren los mensajes de error en el login de WordPress.

function no_wordpress_errors(){
  return 'FUERA DE MI TERRITORIO';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

Y hasta aquí nuestro artículo. Espero que te haya gustado y, si te ha resultado útil, no dudes en compartirlo en redes sociales. El icono de la imagen destacada es obra de Yo! Baba. ¡Nos leemos!

Guardar

Dejar respuesta

Please enter your comment!
Please enter your name here