mathieumaingret/socialstream

PHP 辅助工具,用于聚合来自 Facebook、Twitter 等社交媒体的格式化帖子...

3.2 2019-01-04 10:17 UTC

This package is auto-updated.

Last update: 2024-09-11 19:43:54 UTC


README

PHP 辅助工具,用于聚合来自 Facebook、Twitter 等社交媒体的格式化帖子...

入门

先决条件

您只需要 PHP(简单部分,比如说 >= 5.6)以及 Facebook 和/或 Twitter 的开发者账号。

Facebook (https://developers.facebook.com/)

  • ACCESS_API
  • ACCESS_TOKEN

Twitter (https://developer.twitter.com/)

  • CONSUMER_KEY
  • CONSUMER_SECRET
  • ACCESS_TOKEN
  • ACCESS_TOKEN_SECRET

安装

首先运行 composer 以获取 Twitter API,来源为 http://github.com/j7mbo/twitter-api-php

composer install

然后在您的代码中包含 composer 自动加载文件

require_once  'socialstream/vendor/autoload.php';

以获取系统中的某些数据或用于小演示为例

简单使用

示例:检索 Twitter 账户的最近 8 条帖子

$posts = array();
$nbPosts = 8;
$accountName = 'accountName';
$cacheDuration = 10; // Cache expires after 10 min

$media = new \SocialStream\Media\Twitter();
if ($media->isAuthorized()) {
    $media->setAccount($accountName);
    $media->setCacheExpiration($cacheDuration);
    $posts = $media->getLastPosts($nbPosts);
}
var_dump($posts);

方法

isAuthorized()

检查您的 API 密钥是否允许访问 API。

setAccount(string $accountName)

设置账号名称(例如您的账号)。

setCacheExpiration(int $cacheExpiration)

设置缓存持续时间(分钟)。

getLastPosts(int $nbPosts)

检索要显示的最后 $nbPosts 条格式化帖子。

此方法返回一个包含 Post 对象的数组

构建社交墙

为了从多个社交媒体中检索帖子,您可以使用 \SocialStream\Wall

$nbPosts = 8; // nb posts for each media
$posts = array();
$mediasTypes = array(
    'facebook' => '',
    'twitter' => ''
);
$socialWall = new \SocialStream\Wall($mediasTypes, $nbPosts);

$socialWall->shufflePosts(); // If you want to display your posts randomly

$posts = $socialWall->getPosts();
foreach($posts as $post) {
    echo $post->id;
}

添加您自己的社交媒体

查看 src/SocialStream/Media/_Example.php 以添加社交媒体。

然后重建 composer 自动加载

composer dump-autoload

然后您可以调用

$media = new \SocialStream\Media\MyNewSocialMedia();

使用