Here we will see how to generate dynamic sitemap in laravel. As we know sitemap is very important part of seo, sitemap is list of pages of a website within a single domain.
Here we will create dynamic XML sitemap in laravel.sitemap is a blueprint of your website that can help to search engines find, crawl and index all of your website's content So let's see how to create dynamic xml sitemap in laravel and how to add sitemap in laravel,
Here, we are using sitemap package for generate dynamic sitemap in laravel.run below command in your terminal to install package in laravel.
composer require watson/sitemap
To publish the configuration file for the sitemap package, run below Artisan command.
php artisan config:publish watson/sitemap
php artisan vendor:publish --provider="Watson\Sitemap\SitemapServiceProvider"
Here, you need to add tags for each item in your sitemap using Sitemap::addTag($location, $lastModified, $changeFrequency, $priority)
. And we can return the sitemap with Sitemap::renderSitemap()
. $lastModified
variable will be parsed and convered to the right format for the sitemap.
If you want to get raw XML then simply call Sitemap::xml()
Example :
namespace App\Http\Controllers;
use Post;
use Sitemap;
class SitemapsController extends Controller
{
public function posts()
{
$posts = Post::all();
foreach ($posts as $post) {
Sitemap::addTag(route('posts.show', $post), $post->updated_at, 'daily', '0.6');
}
return Sitemap::render();
}
}
Image Sitemap :
namespace App\Http\Controllers;
use Page;
use Sitemap;
class SitemapsController extends Controller
{
public function pages()
{
$pages = Page::all();
foreach ($pages as $page) {
$tag = Sitemap::addTag(route('pages.show', $page), $page->updated_at, 'daily', '0.8');
foreach ($page->images as $image) {
$tag->addImage($image->url, $image->caption);
}
}
return Sitemap::render();
}
}
In this article, we will explore the process of sending emails in Laravel 9 using Mailtrap. We will delve into how Larav...
Jul-27-2022
In this article, we will see carbon add hours to date in laravel 9. Carbon provides addHour and addHours() function...
Nov-22-2022
Want to make your WordPress site online? But for this, you will need to opt-in for a managed WordPress hosting provider....
Apr-09-2022
In this article, we will see how to install React in laravel 9. We will also install react with laravel 9 and...
Aug-15-2022