在网站上显示 Facebook 新闻源/时间线

2022-08-30 17:40:47

我有一个客户希望他们公司的Facebook新闻源/时间线显示在他们的网站上。这不是个人的时间线/新闻源,而是组织的。

我读到的所有内容似乎都已经存在了几年,但结果似乎是:Facebook希望将其所有数据保存在自己的服务器上 - 他们不希望人们导出它,人们被禁止尝试。(正如我所说,这些信息已经存在了几年。

我发现的最接近的当前内容是活动源插件,但它只注册其他用户与网站或FB应用程序的交互。

有没有人成功地将他们的公共更新导出到外部网站,或者我必须告诉我的客户它不能完成?

感谢您的任何帮助!


答案 1

AFAIK,在某种程度上是可能的。最简单的解决方案,但不适合您的情况可能是Like Box插件

“赞”框使用户能够:

查看有多少用户已经喜欢此主页,以及哪些朋友也
喜欢此主页 只需点击一下即可阅读主页
最近的帖子 赞该主页,而无需访问该主页

更好的解决方案:使用他们的Graph API,但是您只能读取数据(作为JSON),而不是在客户的网站上完全复制流,不要指望能够应用Facebook使用的样式(即您将无法抓取它),您将不得不复制它,或者创建自己的样式。

现在,如果该页面是公开的并且所有人都可以阅读,就像没有隐私规则一样,那么您可以简单地调用具有任何有效access_token的url(也可以是应用程序access_token):

https://graph.facebook.com/<clientpagename_OR_id>/feed

https://graph.facebook.com/<clientpagename_OR_id>/posts

根据您的确切需求,请尝试使用图形 API 资源管理器进行检查(并查看返回的数据类型)。当有很多帖子时,会有分页URL,您也可以在资源管理器中注意到。

如果该页面不是公开的,则需要一个具有read_stream权限的access_token,因此您需要创建一个facebook应用程序,类型为网站。然后,让客户端页面的管理员授予应用权限。之后,您可以使用身份验证后收到的access_token调用url,并可以继续读取流。read_stream

https://graph.facebook.com/<clientpagename_OR_id>/posts?access_token=thetoken

在这种情况下,请使用 PHP SDK 来简化身份验证和调用图形 API。

重要链接: 身份验证指南实时更新.

祝你好运。

编辑:您确实需要访问令牌来访问源或发布连接,但不一定需要访问令牌来读取页面对象本身,如本文档中所述。
文档说明:

对于需要访问令牌的连接,如果页面是公共的且不受限制,则可以使用任何有效的访问令牌。受限页面上的连接需要用户访问令牌,并且仅对满足页面上设置的限制条件(例如年龄)的用户可见。


答案 2

您可以使用 Facebook 的 Graph API 检索组织的新闻源。无法通过公共 API 检索时间线。

没有插件可以执行此操作。您需要致电

https://graph.facebook.com/USER_ID/home

这将为您提供 JSON 响应。

然后,您需要将 JSON 解析为组织网页上的新布局。

令人困惑的是,打电话

https://graph.facebook.com/USER_ID/feed

不检索新闻源,而是检索用户的墙帖子,这可能是也可能不是您想要的。

这是一个教程,介绍了使用php在网站上设置新闻源的基础知识。


推荐