Laravel 8 Artesaos SEOTools Tutorial

Websolutionstuff | Jun-07-2021 | Categories : Laravel

Hello Devs,

In this tutorial we will learn how to use SEOTools in laravel 8. we will give you example of seo tools in laravel 8. I will use Artesaos SEOTools for website seo. I will show you step by step for Laravel 8 Artesaos SEOTools tutorial.

Artesaos SEOTools provides features like below list

 

Step 1 : Install Artesaos SEOTools Package

First step is install package in your project using command line. so run below command on your terminal. composer to install the package and automatically update your composer.json file.

composer require artesaos/seotools

 

 

Step 2 : Update Provider and Aliases

In this step just update your config/app.php file adding the following code at the end of your 'providers' and 'aliases' section.

File Path : config/app.php

<?php

return [
    'providers' => [
        Artesaos\SEOTools\Providers\SEOToolsServiceProvider::class,
        // ...
    ],    
];

 

You can setup aliases in your config/app.php file. For example:

<?php

return [
    'aliases' => [
        'SEOMeta'       => Artesaos\SEOTools\Facades\SEOMeta::class,
        'OpenGraph'     => Artesaos\SEOTools\Facades\OpenGraph::class,
        'Twitter'       => Artesaos\SEOTools\Facades\TwitterCard::class,
        'JsonLd'        => Artesaos\SEOTools\Facades\JsonLd::class,
        'JsonLdMulti'   => Artesaos\SEOTools\Facades\JsonLdMulti::class,
        // or
        'SEO' => Artesaos\SEOTools\Facades\SEOTools::class,
    ],
];

 

Step 3 : Use Facades

You may get access to the SEO tool services using following facades: so as your requirements you can use or include facades in your controller.

use Artesaos\SEOTools\Facades\SEOMeta;
use Artesaos\SEOTools\Facades\OpenGraph;
use Artesaos\SEOTools\Facades\TwitterCard;
use Artesaos\SEOTools\Facades\JsonLd;
use Artesaos\SEOTools\Facades\JsonLdMulti;
use Artesaos\SEOTools\Facades\SEOTools;

 

Step 4 : Vendor Publish

In your terminal type below command publish Artesaos\SEOTools package.

php artisan vendor:publish

or

php artisan vendor:publish --provider="Artesaos\SEOTools\Providers\SEOToolsServiceProvider"

after publishing this package you can determine config/seotools.php in your project.

 

 

Step 5 :  Usage in Controller

 

<?php

namespace App\Http\Controllers;

use Artesaos\SEOTools\Facades\SEOMeta;
use Artesaos\SEOTools\Facades\OpenGraph;
use Artesaos\SEOTools\Facades\TwitterCard;
use Artesaos\SEOTools\Facades\JsonLd;
// OR with multi
use Artesaos\SEOTools\Facades\JsonLdMulti;

// OR use only single facades
use Artesaos\SEOTools\Facades\SEOTools;

class SEOController extends Controller
{
    public function index()
    {
        SEOMeta::setTitle('Websolutionstuff | Home');
        SEOMeta::setDescription('This is my page description of websolutionstuff');
        SEOMeta::setCanonical('https://websolutionstuff.com');

        OpenGraph::setDescription('This is my page description of websolutionstuff');
        OpenGraph::setTitle('Websolutionstuff | Home');
        OpenGraph::setUrl('https://websolutionstuff.com');
        OpenGraph::addProperty('type', 'articles');

        TwitterCard::setTitle('Websolutionstuff | Homepage');
        TwitterCard::setSite('@websolutionstuff');

        JsonLd::setTitle('Websolutionstuff | Homepage');
        JsonLd::setDescription('This is my page description of websolutionstuff');
        JsonLd::addImage('https://websolutionstuff.com/frontTheme/assets/images/logo.png');

        // OR use single only SEOTools

        SEOTools::setTitle('Websolutionstuff | Home');
        SEOTools::setDescription('This is my page description of websolutionstuff');
        SEOTools::opengraph()->setUrl('https://websolutionstuff.com/');
        SEOTools::setCanonical('https://websolutionstuff.com');
        SEOTools::opengraph()->addProperty('type', 'articles');
        SEOTools::twitter()->setSite('@websolutionstuff');
        SEOTools::jsonLd()->addImage('https://websolutionstuff.com/frontTheme/assets/images/logo.png');

        return view('posts');
    }   
}

 

Step 6: Use in View file

 

<html>
<head>
    {!! SEOMeta::generate() !!}
    {!! OpenGraph::generate() !!}
    {!! Twitter::generate() !!}
    {!! JsonLd::generate() !!}
    // OR with multi
    {!! JsonLdMulti::generate() !!}

    <!-- OR -->
    {!! SEO::generate() !!}

    <!-- MINIFIED -->
    {!! SEO::generate(true) !!}

</head>
<body>
 <h3>Laravel 8 SEO Tutorial</h3>
</body>
</html>

 

Recommended Post
Featured Post
Laravel 11 CRUD with Image Upload Example
Laravel 11 CRUD with Image Upl...

In this article, we'll see laravel 11 crud with an image upload example. Here, we'll perform a crud operation on...

Read More

Apr-26-2024

Laravel Authentication Using Breeze
Laravel Authentication Using B...

In this article, we will share you new information about laravel authentication using a breeze. Laravel Breeze...

Read More

Feb-05-2021

Laravel 10 Livewire Multi Step Form Wizard
Laravel 10 Livewire Multi Step...

Hello developers! Today, I'm excited to walk you through the process of creating a multi-step form wizard using...

Read More

Dec-18-2023

Laravel 10 Multiple Image Upload Example
Laravel 10 Multiple Image Uplo...

In this article, we will see laravel 10 multiple image examples. Here, we will learn about how to upload multiple i...

Read More

Mar-17-2023