承接 nishadil/socialpostman 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nishadil/socialpostman

Composer 安装命令:

composer require nishadil/socialpostman

包简介

SocialPostman is a PHP library to publish posts to social media platforms. (Facebook, Instagram, LinkedIn, Twitter/X) with background processing and retry support.

README 文档

README

SocialPostman is a PHP library to publish posts to social media platforms. (Facebook, Instagram, LinkedIn, Twitter/X) with background processing and retry support.

Laravel Application Guide

Step 1: Install via Composer

composer require nishadil/socialpostman

Laravel will auto-discover the service provider.

Step 2: Publish Config File

php artisan vendor:publish --tag=socialpostman-config

This creates:

config/socialpostman.php

Step 3: Configure .env

# Facebook
FACEBOOK_ACCESS_TOKEN=
FACEBOOK_PAGE_ID=

# Instagram
INSTAGRAM_ACCESS_TOKEN=
INSTAGRAM_USER_ID=

# LinkedIn
LINKEDIN_ACCESS_TOKEN=
LINKEDIN_AUTHOR_URN=

# Twitter / X
TWITTER_BEARER_TOKEN=

Step 4: Register Providers (One Time)

Recommended place: App\Providers\AppServiceProvider.php

use Nishadil\SocialPostman\SocialPostman;
use Nishadil\SocialPostman\Providers\FacebookProvider;
use Nishadil\SocialPostman\Providers\InstagramProvider;
use Nishadil\SocialPostman\Providers\LinkedInProvider;
use Nishadil\SocialPostman\Providers\TwitterProvider;

public function boot(SocialPostman $postman): void
{
    $postman->registerProvider(
        'facebook',
        new FacebookProvider(config('socialpostman.providers.facebook'))
    );

    $postman->registerProvider(
        'instagram',
        new InstagramProvider(config('socialpostman.providers.instagram'))
    );

    $postman->registerProvider(
        'linkedin',
        new LinkedInProvider(config('socialpostman.providers.linkedin'))
    );

    $postman->registerProvider(
        'twitter',
        new TwitterProvider(config('socialpostman.providers.twitter'))
    );
}

Step 5: Post from Controller / Service

Immediate Post

use Nishadil\SocialPostman\Laravel\Facades\SocialPostman;

SocialPostman::post('twitter', [
    'message' => 'Hello X 👋 from Laravel'
]);

Background (Laravel Queue – Recommended)

use Nishadil\SocialPostman\Laravel\Jobs\PublishSocialPost;

PublishSocialPost::dispatch('facebook', [
    'message' => '🚀 Background post from Laravel'
]);

Make sure queue worker is running:

php artisan queue:work

Step 6: Retry Failed Jobs

If any background post fails:

php artisan socialpostman:retry

Non-Laravel (Plain PHP) Guide

Step 1: Install via Composer

composer require nishadil/socialpostman

Step 2: Create Bootstrap File

bootstrap.php

<?php

require __DIR__ . '/vendor/autoload.php';

use Nishadil\SocialPostman\SocialPostman;
use Nishadil\SocialPostman\Providers\FacebookProvider;
use Nishadil\SocialPostman\Providers\InstagramProvider;
use Nishadil\SocialPostman\Providers\LinkedInProvider;
use Nishadil\SocialPostman\Providers\TwitterProvider;

$postman = new SocialPostman();

$postman->registerProvider('facebook', new FacebookProvider([
    'access_token' => 'FACEBOOK_ACCESS_TOKEN',
    'page_id' => 'FACEBOOK_PAGE_ID'
]));

$postman->registerProvider('instagram', new InstagramProvider([
    'access_token' => 'INSTAGRAM_ACCESS_TOKEN',
    'instagram_user_id' => 'INSTAGRAM_USER_ID'
]));

$postman->registerProvider('linkedin', new LinkedInProvider([
    'access_token' => 'LINKEDIN_ACCESS_TOKEN',
    'author' => 'urn:li:person:XXXX'
]));

$postman->registerProvider('twitter', new TwitterProvider([
    'bearer_token' => 'TWITTER_BEARER_TOKEN'
]));

return $postman;

Step 3: Post Content

Immediate Post

$postman = require 'bootstrap.php';

$postman->post('twitter', [
    'message' => 'Hello X 👋 from plain PHP'
]);

Background Post (CLI Required)

$postman->post('facebook', [
    'message' => 'Background Facebook post'
], true);

Requirements PHP CLI enabled exec() allowed Linux / macOS recommended

Step 4: Run Retry Worker (Plain PHP)

Create a file: retry.php

<?php

require __DIR__ . '/vendor/autoload.php';

use Nishadil\SocialPostman\Queue\RetryWorker;

(new RetryWorker())->run();

Run manually or via cron:

php retry.php

Step 5: Setup Cron (Recommended)

* * * * * php /path/to/project/retry.php

nishadil/socialpostman 适用场景与选型建议

nishadil/socialpostman 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 0 次下载、GitHub Stars 达 1, 最近一次更新时间为 2025 年 12 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 nishadil/socialpostman 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 nishadil/socialpostman 我们能提供哪些服务?
定制开发 / 二次开发

基于 nishadil/socialpostman 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 27
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-25