【问题标题】:WordPress Plugin LocalizationWordPress 插件本地化
【发布时间】:2011-07-21 05:53:53
【问题描述】:

我刚刚为 WordPress 构建了我的第一个插件,即使它不是一个很棒的“代码诗”,它也可以正常工作。这是一个使用 GalleryView 3.0 jQuery 插件 (http://spaceforaname.com/galleryview) 转换默认 wp 画廊的插件。

我唯一不能做的就是本地化。 此插件的本地化意味着翻译管理界面,有人可以在其中配置 jQuery 插件选项以更改生成的画廊的外观。

我尝试关注网络上数以百万计的教程,在论坛上阅读了很多关于此问题的帖子,并遵循了 codex 的指南……但仍然没有运气。

这就是我所做的:

  1. 每个文本行都在一个 gettext 函数内(___e
  2. 我使用 poedit 创建了扫描插件目录的 .po 和 .mo 文件(一切正常),然后我在该文件上添加了翻译。
  3. 我将 .po 文件命名为 NAME-OF-THE-PLUGIN-it_IT.po(.mo 文件是用相同的名称生成的)
  4. 我已将翻译文件放在插件文件夹/语言中(文件夹名称与插件和翻译文件的名称相同)
  5. 然后我尝试在主插件文件中添加load_plugin_textdomain 函数。我试过了,因为没有办法让它工作。

我唯一不确定的是我创建的插件不在类+构造函数下......只是因为我的编码仍然不太好。

但我已将load_plugin_textdomain 放入init add_action 中,如下所示:

add_action('init', 'gw_load_translation_file');

function gw_load_translation_file() {
// relative path to WP_PLUGIN_DIR where the translation files will sit:
$plugin_path = dirname(plugin_basename( __FILE__ ) .'/languages' );
load_plugin_textdomain( 'gallery-view-for-wordpress', false, $plugin_path );
}

上面的行不在逻辑中,它们只是在主插件文件中,就像那样。

这是我使用 gettext 函数的一个例子:

<h3><?php _e('Panel Options','gallery-view-for-wordpress') ?></h3>

我不明白什么?

【问题讨论】:

  • 你的 wp-config.php 中设置了什么语言?
  • 我也有这个问题。到目前为止,在谷歌上没有找到任何有用的东西——也许是最新版本的 WP 的新问题?不过,它只会影响插件似乎有点奇怪。我的尝试和 OP 之间的唯一区别是我尝试从 /plugins 根目录(与实际 plugin.php 文件的位置相同)加载 .mo 和 .po 文件。我的 wplang 设置为 fr-FR - 当前主题很好,只是不会加载文本域的插件。
  • @hollsk,我什至在这里wordpress.stackexchange.com/questions/12810/plugin-localization 也发布了这个问题,但没有运气,有人说它有效......但不适合我
  • 对我来说它可以工作,我什至在塞尔维亚语上尝试过,将文件更改为 sr_RS lang。 :) 这里是 SS:efekat.com/public/images/… 我知道这是一个愚蠢的问题,但是你如何安装你的插件?

标签: wordpress plugins localization


【解决方案1】:

我的错误在于语言文件路径声明。

这个已修复:

$plugin_path = dirname( plugin_basename( __FILE__ ) ) . '/languages/';

这是错误的:

$plugin_path = dirname(plugin_basename( __FILE__ ) .'/languages' );

我在Wordpress Stack Exchange得到了答复

【讨论】:

  • 非常感谢!这是我经历过的最烦人的调试时刻,因为了解到 .PHP 文件末尾的空行并非毫无意义。
【解决方案2】:

与我之前的说法相反,我已经成功使用了这个文件名:gallery-view-for-wp-it_IT.mo

不过很奇怪 - 主题只使用 it_IT.mo

【讨论】:

  • @bluantinoo 我已经成功获得了 Wordpress 的 Opzioni Gallery View :) 查看答案的编辑。
  • @Nikolay 你的意思是说,如果你进入画廊设置页面,你会看到翻译成意大利语的界面吗?
  • 只是标题,其他字段你没有翻译。
  • 这对我已经使用 plugin-name-fr_FR 格式的我没有帮助......这是我自己的代码的一个压缩包,它无法工作,剥离到绝对基础并取自一个已经在不同的 WP 安装上运行的插件:dl.dropbox.com/u/8907108/i18n-test.zip 非常感谢任何帮助:-)
  • 还有一件事 - 我正在运行 Wordpress 3.1。假设 bluantinoo 也是最新的?在谷歌搜索并看到这么多相同的问题没有解决方案之后,我真的想知道这是否是一个版本相关的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-10
  • 2016-09-25
  • 2016-02-24
  • 2022-11-20
  • 1970-01-01
相关资源
最近更新 更多