【问题标题】:Facebook Canvas App Page -- Can I change it to the Fan Page?Facebook Canvas 应用页面 -- 我可以将其更改为粉丝页面吗?
【发布时间】:2023-03-16 09:05:01
【问题描述】:

首先,为我的非技术性道歉。我一直在寻找这个问题的答案,但没有运气。

我的网站有一个 FB 应用程序,用于获取身份验证令牌,以便人们可以将他们在我的网站上创建的内容直接分享到他们的 FB 墙上。该应用程序只是让网站获取令牌,因此我们不需要一遍又一遍地要求人们登录 FB。

在 FB 上,我们有一个画布页面与这个应用程序一起使用,但它所做的只是将我们的网页加载到一个 iFrame 中(那里看起来有点糟糕)。

有没有办法将 Canvas 页面更改为我们的 FB 粉丝页面?这样,如果人们从他们自己关于 FB 的游荡中点击我们的“应用程序”,他们将被引导到一个 FB 粉丝页面,而不是我们在 FB 中看起来很奇怪的页面。

再次,如果这个问题很简单,我深表歉意。我是新来的。如果有人能回答我并且可以用木偶来解释——那可能会有所帮助。

非常感谢!

【问题讨论】:

    标签: facebook-graph-api sharing facebook-page facebook-canvas


    【解决方案1】:

    这是一种令人讨厌的方法,但您可以在加载 Canvas 页面时通过检查 URL 将访问者重定向到您的 Facebook 页面。

    首先,您有一个获取画布页面 URL 的函数。

    function checkPage()
    {
        $pageURL = 'http';
    
        if ($_SERVER["HTTPS"] == "on")
        {
            $pageURL .= "s";
        }
        $pageURL .= "://";
        if ($_SERVER["SERVER_PORT"] != "80")
        {
            $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
        }
        else
        {
            $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
        }
        return $pageURL;
    }
    

    然后您检查 URL 是否包含出现在每个 Canvas 页面中的“fb_source”,如果包含,则将它们重定向到您想要的位置。

        $currentUrl = checkPage();
    
        if(strpos($currentUrl,'fb_source') !== false)
        {
        <script type="text/javascript">
            top.location.href = "URL HERE";
        </script>
        }
    

    【讨论】:

    • 我明白了!谢谢 - 我希望有一种不那么令人讨厌的方式!我不可能有唯一的网站可以做到这一点,对吧?
    猜你喜欢
    • 1970-01-01
    • 2012-01-25
    • 2013-10-24
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 2011-04-05
    • 2011-11-25
    • 1970-01-01
    相关资源
    最近更新 更多