Laravel-இல் Sitemap உருவாக்குவது எப்படி
தேடுபொறிகள் (Search engines) உங்கள் பக்கங்களைக் கண்டறியவும் அவற்றை வரிசைப்படுத்தவும் (index) sitemaps-களைப் பயன்படுத்துகின்றன. Sitemap என்பது ஒரு XML கோப்பாகும். உங்கள் தளத்தில் எந்தெந்த URL-கள் உள்ளன என்பதை இது Google மற்றும் Bing-க்குத் தெரிவிக்கும்.
Spatie Sitemap package-ஐப் பயன்படுத்தி Laravel-இல் நீங்கள் ஒரு sitemap-ஐ உருவாக்கலாம்.
இதை அமைப்பதற்குப் பின்வரும் படிகளைப் பின்பற்றவும்.
Package-ஐ நிறுவுதல் உங்கள் terminal-இல் இந்த கட்டளையை (command) இயக்கவும்:
composer require spatie/laravel-sitemapController உருவாக்குதல் லாஜிக்கைக் கையாள ஒரு புதிய controller-ஐ உருவாக்கவும்:
php artisan make:controller GenerateSitemapலாஜிக்கை எழுதுதல் உங்கள் புதிய controller-ஐத் திறந்து இந்த குறியீட்டைச் (code) சேர்க்கவும்:
namespace App\Http\Controllers;
use Spatie\Sitemap\Sitemap;
use Spatie\Sitemap\Tags\Url;
use App\Models\Post;
class GenerateSitemap extends Controller
{
public function index()
{
$sitemap = Sitemap::create();
$sitemap->add(
Url::create('/')
->setPriority(1.0)
->setChangeFrequency(Url::CHANGE_FREQUENCY_DAILY)
);
Post::with('category')
->where('status', 1)
->latest()
->get()
->each(function ($post) use ($sitemap) {
$sitemap->add(
Url::create($post->category->slug . '/' . $post->slug)
->setLastModificationDate($post->updated_at)
->setPriority(0.9)
->setChangeFrequency(Url::CHANGE_FREQUENCY_WEEKLY)
);
});
$sitemap->writeToFile(public_path('sitemap.xml'));
return back()->with('success', 'Sitemap Generated!');
}
}
இந்த குறியீடு என்ன செய்கிறது:
- இது ஒரு புதிய sitemap object-ஐ உருவாக்குகிறது.
- இது உங்கள் முகப்புப் பக்கத்தை (homepage) அதிக முன்னுரிமையுடன் (high priority) சேர்க்கிறது.
- இது உங்கள் தரவுத்தளத்தில் (database) உள்ள பதிவுகளை (posts) ஒவ்வொன்றாகச் சரிபார்க்கிறது.
- இது ஒவ்வொரு பதிவின் URL-யையும் கோப்பில் சேர்க்கிறது.
- இது கோப்பை உங்கள் public folder-இல் sitemap.xml எனச் சேமிக்கிறது.
உங்கள் sitemap yourdomain.com/sitemap.xml என்ற முகவரியில் இருக்கும்.
இது தேடுபொறிகள் உங்கள் புதிய உள்ளடக்கத்தை விரைவாகக் கண்டறிய உதவுகிறது.
ஆதாரம்: https://dev.to/mindwarezone/how-to-generate-a-sitemap-in-laravel-a-complete-guide-4go6