Reputation: 417
I have developed a facebook app which uses 2 languages. French & Dutch. ( Focussed on dutch, dutch speaking belgium and french speaking belgium).
Somehow when I put a test account to french it still displayes it in Dutch.
I have this code for the app
<?php
require 'facebook.php';
$app_id = "xxx";
$app_secret = "xxx";
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$signed_request = $facebook->getSignedRequest();
$page_id = $signed_request["page"]["id"];
$page_admin = $signed_request["page"]["admin"];
$like_status = $signed_request["page"]["liked"];
$country = $signed_request["user"]["country"];
$locale = $signed_request["user"]["locale"];
$languageFR = $signed_request["user"]["fr_FR"];
if ($like_status) {
if ($languageFR) {
include("fans_french.php");
}
else {
include("fans_dutch.php");
}
}
else {
if ($languageFR) {
include("nonfans_french.php");
}
else {
include("nonfans_dutch.php");
}
}
?>
Who is gonna help me out?
Upvotes: 0
Views: 81
Reputation: 31479
Try it with
<?php
require 'facebook.php';
$app_id = "xxx";
$app_secret = "xxx";
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$signed_request = $facebook->getSignedRequest();
$page_id = $signed_request["page"]["id"];
$page_admin = $signed_request["page"]["admin"];
$like_status = $signed_request["page"]["liked"];
$country = $signed_request["user"]["country"];
$locale = $signed_request["user"]["locale"];
if ($like_status) {
if ($locale == "fr_FR") {
include("fans_french.php");
}
else {
include("fans_dutch.php");
}
}
else {
if ($locale == "fr_FR") {
include("nonfans_french.php");
}
else {
include("nonfans_dutch.php");
}
}
?>
There's not $signed_request["user"]["fr_FR"]
field in the signed request IMHO, see https://developers.facebook.com/docs/reference/login/signed-request/
Upvotes: 1