У меня есть вкладка «посадка», которая настроена, и я установил еще одну вкладку, которую я хотел бы активировать после того, как поклонник щелкнет по значку " как ". Я искал Интернет и придумал сочетание кода JavaScript и PHP SDK, но до сих пор ничего не работало.Facebook «like» - как заставить вкладку настройки перенаправить на другую вкладку
Я предполагаю, что есть две основные проблемы:
После того, как вентилятор изначально посещает сайт (они идут непосредственно на вкладку посадки) и щелкает «как» кнопку, я хотел бы IFRAME перенаправить на другую вкладку, которую я создал. Я попробовал простой переадресацию JavaScript (
windows.location = "URL"
), и это изменило его на URL, который я хотел, но не в Facebook iframe - очевидно, он также не вызывался нажатием как действие.Если я могу получить вышеописанную работу, следующая проблема заключается в том, что, как только кнопка нажата, я хочу, чтобы вторая вкладка всегда была по умолчанию для пользователя ... Прямо сейчас после того, как пользователь нажимает «как», он направляется на страницу стены и снова, когда посетитель возвращается на страницу, это страница стены. Если я столкнулся с проблемой №1, работающей с переадресацией, будет ли она всегда использоваться по умолчанию для этой второй вкладки или она по-прежнему будет отправлять людей на стену, когда они перейдут на страницу?
Вот код, который я нашел. И SDK JavaScript, и PHP SDK. Где я иду не так?
FB.Event.subscribe('edge.create',
function(response) {
location.href = 'URLofSecondtab';
}
);
Приведенный выше код является то, что я сказал, это обработчик события Facebook для как в JavaScript.
<div id="fb-root"></div>
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.init({appId: 'idOfLandingTab', status: true, cookie: true, xfbml: true});
//FB.Canvas.setSize({ width: 520, height: 1500 });
FB.Event.subscribe('edge.create',
function(response) {
alert('like!');
// put redirect code here eg
window.location = "URLofSecondtab";
}
);
};
//Load the SDK asynchronously
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
Я нашел PHP SDK и не удалось реализовать:
<?php
// Sample PHP code to customize the a Facebook Fan Page iFrame Application
// Refer to http://www.hyperarts.com/blog/customizing-facebook-iframe-application- signed_request_reveal_tab
require 'facebook.php';
$app_id = "APP_ID_HERE"; //which app id? the landing tab or the second tab that I want //redirected?
$app_secret = "APP_SECRET_HERE";
$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"];
echo "<br>page id = $page_id";
echo "<br>page admin = $page_admin";
echo "<br>like status = $like_status";
echo "<br>country = $country";
echo "<br>locale = $locale";
?>
Какие вкладки URL и идентификатор приложения требуется в каком месте? И какой код (JavaScript или PHP-код)?