O que o l10n.js faz no WordPress 3.1? E como faço para removê-lo?

8

Acabei de instalar o WP 3.1 Beta 2 no meu servidor de teste. Percebi que ele vem com um novo arquivo l10n.js que é inserido automaticamente no cabeçalho.

Eu fiz um pouco de escavação e isso tem algo a ver com a localização. Eu estou supondo que muitas pessoas não usam isso, então eu estou querendo saber como eu poderia removê-lo?

Se for importante não removê-lo, informe-me também.

    
por Sahas Katta 16.12.2010 / 00:25

8 respostas

12

Ele contém a função convertEntities() que (como o nome diz) converte entidades HTML em seu valor real. Ele é usado principalmente para scripts que enviam dados de localização do PHP para o lado do JS usando wp_localize_script() . Basta procurar l10n_print_after na base de código e você verá muito.

Os dados que você adiciona em wp_localize_script() são adicionados antes do script que ele traduz (deve ser, porque é mencionado lá). No entanto, se você usar um concatenador de scripts (para ter apenas uma solicitação que retorne todos os arquivos JS usados), esse arquivo também será chamado depois de todos os dados localizados - mas agora convertEntities() não é definido quando precisamos dele. Por esse motivo, essa função é separada do arquivo geral utils.js e adicionada com alta prioridade no topo.

Por esse motivo, você não deve removê-lo: todos os scripts que usam strings traduzíveis o usam (mesmo que ainda estejam em inglês) e você pode dividir lugares que ainda possuem entidades.

    
por Jan Fabry 16.12.2010 / 12:49
4
if ( !is_admin() ) {
function my_init_method() {
wp_deregister_script( 'l10n' );
}
add_action('init', 'my_init_method'); 
}

use o código acima para cancelar o registro de l10n.js em function.php

    
por ZHAO Xudong 24.02.2011 / 04:06
1

Parece que está incluído quando você enfileira o script 'comment-reply'. Tenha em atenção que, provavelmente, pretende certificar-se de que a "resposta a comentários" está carregada apenas em páginas que poderiam ter comentários ativados (por exemplo, verifique is_singular() antes de colocar o script em fila).

    
por mtekk 16.12.2010 / 04:47
1

Descobri em minha instalação que esse script foi carregado junto com a nova barra de administração, me livrando da barra de administração e me livrando do l10n.js para mim (mas acho que a resposta de Jan está mais alinhada com o "porquê") .

Remover a barra foi fácil ..

remove_action( 'init', 'wp_admin_bar_init' );

Isso não resolve a questão (como evidenciado pelas outras respostas), mas, caso alguém queira remover essa barra horrível, veja acima como você faz isso.

    
por t31os 16.12.2010 / 12:15
1

Como remover :

function kill_l10n() {
    if ( !is_admin() )
        wp_deregister_script( 'l10n' );
}
add_action( 'wp_print_scripts', 'kill_l10n' );

Coloque em functions.php ou o que quer que seja (plugin, etc.)

Funciona para mim.

    
por user3566 28.02.2011 / 09:15
1

Para removê-lo, adicione o seguinte ao arquivo functions.php do seu tema.

wp_deregister_script ('l10n');

    
por user4751 18.04.2011 / 13:23
0

A fonte dos desenvolvedores para o arquivo tem a seguinte descrição:

  

// Usado para garantir que as Entidades usadas nas sequências L10N estejam corretas

e nota de confirmação diz:

  

Mova a função auxiliar l10n para um arquivo js separado, para que possamos sempre gerar a saída primeiro.

Eu ainda não joguei com o 3.1, então não tenho certeza do que pode fazer com que ele seja carregado em todas as páginas.

    
por Rarst 16.12.2010 / 07:38
0

Sim, ele é jogado dentro do tema por wp_head automaticamente ... Eu removê-lo, colocando o código abaixo nas funções do tema.php

remove_action( 'wp_head', 'l10n' );

    
por Jack 15.10.2011 / 06:44