Como posso segmentar o WordPress 3.8 nova interface MP6 com CSS?

Quando o MP6 era um plugin no WordPress 3.6+, ele altera a class do corpo do administrador e adicionou uma class “admin-mp6” que me ajuda a modelar meu plugin de acordo.

Agora, com o último Alpha do WordPress 3.8, a class foi removida. Eu sei, uma vez que é uma versão alfa, a class pode voltar, mas me pergunto se existem “melhores práticas” oficiais

Solutions Collecting From Web of "Como posso segmentar o WordPress 3.8 nova interface MP6 com CSS?"

Embora não seja específico para o MP6 (eu não estou seguindo o seu desenvolvimento) e seu CSS, para mim, sua pergunta parece “como verificar se a versão WP é igual a maior do que uma característica foi introduzida em?”.

Então, eu apenas examinaria o conteúdo de $wp_version global. Se o recurso é 3.8, qualquer coisa com a versão apropriada o tenha.

Além disso, a partir de um exame rápido das classs body no administrador, há class branch-3-7 , o que torna possível segmentar o branch-3-8 (no entanto, não pode ser direcionado condicionalmente como qualquer coisa> = 3.8, já que não é algo que o CSS faz).

Eu também prefiro uma variante única de CSS. Infelizmente, isso não é inteiramente possível. A rota que estou tomando é um híbrido de CSS e PHP.

Primeiro, usamos PHP para detectar a versão do WordPress instalada e, opcionalmente, se o MP6 está ou não instalado. Isso é bastante fácil usando a constante MP6 definida pelo plugin e a $wp_version global como sugerido por Rarst. Uma vez que sabemos que estamos vivendo em um mundo MP6, adicionamos nossa própria class de corpo. Estou escolhendo usar o nome da class “flaticons”:

 /** * Filter body classs to detect MP6 or WordPress 3.8 so we can substitute the correct styles. * * @param array $classs * * @global $wp_version * * @return array */ function flaticons_body_class( $classs ) { global $wp_version; if ( ( defined( 'MP6' ) && MP6 ) || version_compare( $wp_version, '3.8', '>=' ) ) { $classs[] = 'flaticons'; } return $classs; } 

Agora, em nosso CSS, onde quer que estivéssemos usando anteriormente os .admin-mp6 , .admin-color-mp6 ou .mp6 , podemos usar .flaticons vez disso.

Isso funcionará tanto com o MP6 em instalações mais antigas quanto com o WordPress 3.8+, uma vez que seja lançado. Não é ótimo, mas uma solução sólida e à prova de futuro.

Andrew Nacin postou uma abordagem “oficial” neste tópico aqui

A única variante de CSS deve usar a class branch-3-x para segmentar as versões antes de 3,8 e os padrões devem ser aplicados a todas as versões futuras, portanto você não precisa se preocupar com a versão adicional:

 .branch-3-6 .some-selector, .branch-3-7 .some-selector { /* some rules go here for 3.6 and 3.7 */ } .some-selector { /* 3.8+ rules go here */ } 

Leia mais sobre este tópico na página make.wordpress.org