audiogram / socializer
直接从您的代码库中自动创建社交媒体营销材料!
dev-master
2018-06-09 23:37 UTC
Requires
- guzzlehttp/guzzle: ^6.3
- intervention/image: ^2.4
This package is not auto-updated.
Last update: 2024-09-25 03:17:21 UTC
README
从Laravel模型自动创建社交媒体帖子并通过Buffer发布!
警告:此包尚未经过充分测试,仍在开发中。目前不遵循语义版本控制。
安装
composer require audiogram/socializer
然后发布供应商文件。
php artisan vendor:publish
将您的Buffer凭据添加到config/socializer.php
文件中。
'buffer_credentials' => [ 'client_id' => env('BUFFER_CLIENT_ID'), 'client_secret' => env('BUFFER_CLIENT_SECRET'), 'access_token' => env('BUFFER_ACCESS_TOKEN'), ], 'buffer_profile_ids' => [ 'facebook' => env('BUFFER_FACEBOOK_PROFILE_ID'), 'twitter' => env('BUFFER_TWITTER_PROFILE_ID'), ],
现在您应该已经设置好了。
用法
选择一个您想要开始创建社交媒体帖子的模型。在这个例子中,我们将使用一个名为Event
的模型,该模型可能代表您应用程序中列出的本地活动。
只需在您的模型上添加SocializableInterface
并实现toSocializable()
方法。
use Illuminate\Database\Eloquent\Model; use Audiogram\Socializer\SocializableInterface; class Event extends Model implements SocializableInterface { protected $fillable = ['name', 'location', 'image_url']; // ... public function toSocializable(): Audiogram\Socializer\Socializable { return (new Socializable()) // Set the background image ->backgroundImagePath($this->image_url) // Set the image overlay text ->textOverlay($this->name) // Set the text for your post ->postText('Checkout our latest event ' . $this->name . ' taking place at ' . $this->location); } }
您的模型现在被认为是“可社交化”的。要实际创建社交媒体帖子并发送到Buffer,您可以使用这个方便的辅助方法。如果您想定义Eloquent事件并从中调用它,这特别有用。一个很好的例子是在模型创建时抛出一个Eloquent事件,并将新创建的模型传递给辅助方法,以动态创建社交媒体帖子。
$event = Event::first(); socialize($event);
恭喜!您的帖子已创建,并附带图片和所需的帖子文本,已发送到您的Buffer账户。
要求
Socializer依赖于以下包。
intervention/image: ^2.4
guzzlehttp/guzzle: ^6.3
问题
如果您遇到困难,遇到错误,或对改进此包有任何问题/建议,请随时在GitHub上创建一个问题,我会尽快处理。
许可证
本项目符合MIT许可证(MIT)。