L10n.js在WordPress 3.1中做什么?那我怎么移除它呢?

时间:2010-12-15 作者:Sahas Katta

我刚刚在测试服务器上安装了WP 3.1 Beta 2。我注意到它带有一个新的l10n.js 自动插入到标头中的文件。

我做了一些挖掘,这与本地化有关。我猜很多人不使用这个,所以我想知道如何删除它?

如果重要的是不要删除它,请让我也知道。

6 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

它包含convertEntities() 函数,该函数将HTML实体转换为其实际值。它主要用于使用以下命令将本地化数据从PHP发送到JS端的脚本wp_localize_script(). 只需搜索l10n_print_after 在代码库中,您可以看到很多。

您添加的数据wp_localize_script() 在其翻译的脚本之前添加(必须是,因为它在那里被引用)。但是,如果使用脚本连接器(因此只有一个请求返回所有使用的JS文件),那么在所有本地化数据之后也会调用这一个文件,但现在convertEntities() 在我们需要的时候没有定义。因此,此功能与常规功能分离utils.js 文件,并在顶部以高优先级添加。

出于这个原因,您不应该删除它:所有使用可翻译字符串的脚本都使用它(即使它们仍然是英文的),并且您可能会打断仍然有实体的位置。

SO网友:ZHAO Xudong

if ( !is_admin() ) {
function my_init_method() {
wp_deregister_script( \'l10n\' );
}
add_action(\'init\', \'my_init_method\'); 
}
使用上面的代码取消注册l10n。js的功能。php

SO网友:mtekk

当您将“评论回复”纸条排队时,它似乎已包含在内。请注意,您可能希望确保仅在启用注释的页面上加载“注释回复”(例如检查is_singular() 将脚本排入队列之前)。

SO网友:t31os

我在安装时发现,这个脚本与新的管理栏一起加载,去掉了管理栏,去掉了l10n。js(但我认为Jan的答案更接近于回答“为什么”)。

移除酒吧很容易。。

remove_action( \'init\', \'wp_admin_bar_init\' );
这实际上并没有解决这个问题(其他答案证明了这一点),但如果有人想删除这个可怕的障碍,以上就是你如何做到的。。

SO网友:Rarst

Developers source 因为该文件具有以下描述:

//用于确保L10N字符串中使用的实体正确

提交说明上写着:

将l10n helper函数移动到单独的js文件中,这样我们就可以始终首先输出它。

我还没有玩过3.1,所以不确定是什么可以让它加载到每个页面。

SO网友:Jack

是的,它是由wp\\u head自动在主题中抛出的。。。我通过在主题函数中放置下面的代码来删除它。php

remove_action( \'wp_head\', \'l10n\' );

结束

相关推荐

如何将外部jQuery/Javascript文件与WordPress链接

因此,我使用Starkers作为我下一个WP主题的基础,我遇到了一个小问题,我在header.php 但是当我使用Firebug检查我的网站时,我注意到jquery被下载了两次,我做了一些挖掘,并注意到我不仅包括了文件,还包括了wp_head() 作用在尝试修复该问题时,我注意到头文件中有一条注释,该注释源于“210”主题:/* Always have wp_head() just before the closing </head> * tag of your theme, or