Skip to main content

Auto posting on facebook

Reference:
https://packagist.org/packages/laravel-notification-channels/facebook-poster

https://sujipthapa.co/blog/generating-never-expiring-facebook-page-access-token

for image also:

https://techanical-atom.com/post-on-facebook-page-via-laravel-notification/?fbclid=IwAR374VsySPcqW2tt78xByxEH1kNNNHX74D-q62Fd-wYr3rzDQ91JA7-4RpA

https://sujipthapa.co/blog/automatically-posting-to-facebook-page-via-laravel-notifications

sub:
https://github.com/alihesari/laravel-social-auto-posting?fbclid=IwAR002Nv3tkonSNiG--FXw2_V9zUhwAsFi8WApfWiUMV-tvCSWQ9-IL5H6g4


Let me explain what i have done here...

composer require laravel-notification-channels/facebook-poster

inside config/server.php:

'facebook_poster' => [
    'app_id' => env('FACEBOOK_APP_ID'),
    'app_secret' => env('FACEBOOK_APP_SECRET'),
    'access_token' => env('FACEBOOK_ACCESS_TOKEN'),
],

Now, create notificatons:


php artisan make:notification ArticlePublished

it will create articlepublished

Inside model where from which you want to send notification:


use Illuminate\Notifications\Notifiable;


class News extends Model
{
use Notifiable;
...

public function AutomateFunction()
{
$date = new DateTime("now", new DateTimeZone('Asia/Kathmandu'));
$today = $date->format('Y-m-d H:i:s');
$news = News::where('is_publish', '0')->get();
foreach ($news as $item) {
$item->notify(new ArticlePublished);

}

}



<?php

namespace App\Notifications;

use App\News;
use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Notification;
use NotificationChannels\FacebookPoster\FacebookPosterChannel;
use NotificationChannels\FacebookPoster\FacebookPosterPost;

/**
* Class ArticlePublished
* @package App\Notifications
*/
class ArticlePublished extends Notification
{
use Queueable;

/**
* Get the notification's delivery channels.
*
* @param mixed $notifiable
* @return array
*/
public function via($notifiable)
{
return [FacebookPosterChannel::class];
}

/**
* @param $item
*/
public function toFacebookPoster($item)
{

$x= with(new FacebookPosterPost($item->title))
->withLink($item->link);
return($x);
// $x= with(new FacebookPosterPost($item->title))
// ->withLink($item->link)->withImage(url('uploads/images/tayee.png'));;
// return($x);
// dd($x);
}
}


remember: create url for autoomation function in web.php 

and 

inside .env:

write appid
security 
acces token 

Now you are done.. 








Comments

Popular posts from this blog

Installing Admin LTE in Laravel

step 1:  Reference---  https://hdtuto.com/article/laravel-56-adminlte-bootstrap-theme-installation-example Step 2 : after completion first reference view this link:    https://github.com/JeroenNoten/Laravel-AdminLTE step 3:  For more additional information view this link:   https://github.com/jeroennoten/Laravel-AdminLTE#2-updating Now you are done statically : https://adminlte.io/blog/integrate-adminlte-with-laravel Steps: 1:  composer require jeroennoten/laravel-adminlte 2: 'providers' => [ .... JeroenNoten\LaravelAdminLte\ServiceProvider::class, ], 3: php artisan vendor:publish --provider="JeroenNoten\LaravelAdminLte\ServiceProvider" --tag=assets 5: php artisan vendor:publish --provider="JeroenNoten\LaravelAdminLte\ServiceProvider" --tag=config 6: php artisan vendor:publish --provider="JeroenNoten\LaravelAdminLte\ServiceProvider" --tag=views 7: for admin pannel php artisan ...

Integration of adminlte admin pannel in laravel 6 adn above

Create new laravel project : laravel new projectname --auth Steps to integrate admin pannel i.e. adminlte 1.  composer require jeroennoten/laravel-adminlte 2.  php artisan adminlte:install 3.  php artisan adminlte:install --only=auth_views 4. php artisan vendor:publish --provider="JeroenNoten\LaravelAdminLte\AdminLteServiceProvider" --tag=views Filemanager: https://unisharp.github.io/laravel-filemanager/installation 1.  composer require unisharp/laravel-filemanager:~1.8 php artisan vendor:publish --tag = lfm_config php artisan vendor:publish --tag = lfm_public 3.  php artisan route:clear php artisan config:clear you will get a problem regarding file relode after upload and to solve do this fix it on vendor\unisharp\laravel-filemanager\src\Controllers\UploadController.php replace line 60 return count($this->errors) > 0 ? $this->errors : parent::$success_response; by return count($this->errors) > 0 ? ...

Setting and Getting Cookie and Session in laravel

First of all lets discuss many ways to set cookies inside controller : $response = new Response ( redirect ( 'news' )); //$minute=5; // $response->withCookie(cookie('name', 'virat', $minutes)); $response -> withCookie ( cookie ()-> forever ( 'news_id' , $newsid )); return $response ; // or // Cookie::queue('news_id', $news_id, 15); // return redirect('news'); // or // return redirect('news')->withCookie(cookie('name', 'virat', $minutes)); use Illuminate\Support\Facades\ Request ; use Illuminate\Http\ Response ; use Illuminate\Support\Facades\ Cookie ; To get cookies: inside controller $val = Request :: cookie ( 'news_id' ); // dd($val); $v = Cookie :: get ( 'news_id' ); // dd($v); or $value = $request -> cookie ( 'name' ); in blade: {{ Cookie :: get ( 'news_id' ) }} Now lets see for session: Ref...