Mit Laravel eine sitemap.xml erstellen

Eine kleine Einführung in die Erstellung einer Sitemap.xml für Eure Laravelseite.

Dafür Benutze ich das Package „laravel-sitemap“ von Roumen Damianoff.

https://github.com/RoumenDamianoff/laravel-sitemap

Zum einbinden einfach

"roumen/sitemap": "2.5.*"

zu Eurer composer.json unter „require“ hinzufügen.

In der Konsole composer updaten.

composer update

In der config/app.php unter „providers“ den Service Provider hinzufügen.

Roumen\Sitemap\SitemapServiceProvider::class,

In der routes.php eine Route für Eure Sitemap einrichten.

Route::get('sitemap', 'YourController@sitemap');

In der Funktion „sitemap“ könnt Ihr die Klasse erstellen.

$sitemap = App::make("sitemap");

Mit Carbon könnt Ihr euch ganz komfortabel die Daten erstellen.

 $yesterday = new Carbon('yesterday');
 $lastWeek = new Carbon('last week');
 $lastMonth = new Carbon('last month');

Und jetzt könnt Ihr Einträge hinzufügen.

$sitemap->add(URL::to('/'), $yesterday, '1.0', 'daily');

Wenn Ihr generierte Seiten habt könnt Ihr folgendes machen.

$sites = Sites::all();

foreach($sites as $site){
    $sitemap->add(URL::to($site->slug), new Carbon($site->updated_at), '0.8', 'weekly');
}

Jetzt noch die xml zurück geben und fertig.

return $sitemap->render('xml');

Das war es schon! Viel Spaß damit.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.