Laravelia Autoposter is a composer package for Laravel application. This package will help you to auto post or auto share your content on social media. In this initial release, we are providing Facebook
and Tumblr
to share your contect automatically.
In this first step, go to your project root directory and open your_project/composer.json
file and update it with this below code:
"require": {
"laravelia/autoposter": "^1.0.1"
},
And run 🦊
composer update
Or you can install it via composer directly 🦊
composer require laravelia/autoposter
In this second step, You need to publish autoposter vendor to get config/autoposter.php
.
php artisan vendor:publish --provider='Laravelia\Autoposter\AutoPosterServiceProvider
This command will generate config/autoposter.php
file and configure it with your credentials like this 🦊
your_project/config/autoposter.php
<?php
return [
'facebook' => [
'APP_ID' => '',
'APP_SECRET' => '',
'PAGE_ACCESS_TOKEN' =>'',
'FACEBOOK_PAGE_ID' => '',
'ENABLE_FACEBOOK_PAGE_SHARE' => false,
],
'tumblr' => [
'CONSUMER_KEY' => '',
'SECRET_KEY' => '',
'TOKEN' => '',
'TOKEN_SECRET' => '',
'BLOG_NAME' => '',
'ENABLE_TUMBLR_SHARE' => false
]
];
Make sure after adding the credentials, ENABLE_FACEBOOK_PAGE_SHARE
and ENABLE_TUMBLR_SHARE
make it false to true. Otherwise it won't work.
Now look at that, how you can use this package.
<?php
use App\Models\Post;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Laravelia\Autoposter\Services\SocialShareService as SocialShare;
class ExampleController extends Controller
{
public function storePost(Request $request, SocialShare $socialShare)
{
$post = Post::create($request->all());
$data = [
'link' => $post->permalink, //your content link
'title' => $post->title, //your content title
'excerpt' => $post->excerpt, //your content short text
'tags' => $post->tags, //your contect tags ex: test, test2, test3
'attachment_url' => $post->attachment //your contect attachment link
];
$socialShare->share($data);
//continue with your code
}
}