可以通过facebook Translations应用程序在iFrame应用程序中实现国际化,而无需使用已弃用的FBML技术吗?

时间:2011-05-06 19:18:35

标签: facebook internationalization xfbml facebook-javascript-sdk

我们花了一些时间来使用Translations app用于我们旧式的FBML facebook应用程序。现在不推荐创建FBML应用程序,只能创建iFrame应用程序。我们也想在其中翻译,并正在考虑如何使用Translations应用程序来实现这一目标。

internationalization page表示翻译可通过{已弃用的} FBML标记(例如fb:intl)进行渲染。它还提到XFBML标签(由JavaScript解析的“较新”标签集)可以起作用,但是JavaScript FB.XFBML.parse(..) XFBML方法的文档没有列出可用于它的任何XFBML国际化标签!

简而言之,我想知道我们是否可以使用Facebook翻译应用程序在iFrame应用程序中进行翻译,而不使用任何弃用的技术?

[facebook的状态, 2011年5月]

3 个答案:

答案 0 :(得分:2)

由于我们试图使用这些功能并且它们仍然无法工作,我只是继续编写了一个包装器,它将帮助解析这些标签(在后台使用intl.getTranslations和intl.uploadNativeStrings)。

这有点粗糙,但似乎做了这个工作。很想看到一些分叉: https://github.com/yeldarby/translation.js

答案 1 :(得分:1)

如果您使用的是这样的JavaScript SDK:

<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
  FB.init({
    appId  : 'YOUR APP ID',
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml  : true  // parse XFBML
  });
</script>

然后在这一行,将en_US更改为您的语言代码:

<script src="http://connect.facebook.net/en_US/all.js"></script>

您也可以使用FQL(Facebook不推荐使用)

http://developers.facebook.com/docs/reference/fql/translation/

答案 2 :(得分:1)

文档表明你可以做到,但你做不到。

您可以使用翻译应用的唯一方法是调用intl.getTranslations,intl.uploadNativeStrings或查询FQL translation table