Corsi on-line

WordPress: Chrome e problemi di visualizzazione dell’Admin Menu

Sulle pagine del Make WordPress Core (core trac), riferimento online per gli sviluppatori del noto Blog Engine/CMS Open Source, è comparsa tempo fa la segnalazione di un bug notificato come “Chrome 45 incorrectly renders admin menu“; sostanzialmente si tratta di un problema di visualizzazione del menù di amministrazione per chi utilizza la release indicata del browser di Mountain View (e non solo), tale malfunzionamento non sarebbe stato osservato sulle versioni più recenti di applicazioni alternative come Safari e Firefox.

E0dK3HML’immagine proposta riassume chiaramente l’entità del problema rilevato, un admin che si recasse nella pagina delle impostazioni visualizzerebbe la sovrapposizione di alcune voci nel caso di un mouse-hover al di sopra delle sidebar del menu verticale; questo bug dovrebbe essere risolto con il rilascio delle versione 4.3.1 di WordPress, per il momento tale release non è però ancora disponibile e l’aggiornamento 4.3 (nome in codice “billie“), che risale al 18 agosto scorso, appare affetto anch’esso dal problema.

I test per le verifiche sono stati operati su Chrome: 45.0.2454.15 beta (architettura a 64-bit) e sarebbero stati poi confermati su versioni successive dello stesso browser. Quindi, in attesa che il team di sviluppo dell’applicazione effettui le necessarie correzioni ad un bug che dovrebbe essere classificato come ad alta priorità ma è stato declassato a livello normal, è possibile effettuare un veloce intervento risolutivo operando sulle regole CSS tramite una modifica da operare a carico del file functions.php:

function chromefix_admin_init()
{
  if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Chrome' ) !== false ) 
  {
    add_action( 'admin_print_styles', 'chromefix_print_css' );
  }
}
function chromefix_print_css()
{ 
?>

<style type="text/css" media="screen">
    #adminmenu { 
      transform: translateZ(0);
    }
  </style>

<?php
}
add_action( 'admin_init', 'chromefix_admin_init' );

In alternativa si potrà includere, sempre nel file functions.php, il codice seguente:

add_action('admin_enqueue_scripts', 'chrome_fix');
function chrome_fix() {
	if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Chrome' ) !== false )
		wp_add_inline_style( 'wp-admin', '#adminmenu { transform: translateZ(0); }' );
}

Una via ancora più semplice prevede l’installazione del plugin chrome-admin-menu-fix, disponibile sul code hosting di GitHub, che consente di effettuare la stessa procedura senza dover intervenire direttamente sul sorgente.

Post correlati
I più letti del mese
Tematiche