A Google News sitemap generator for Laravel 4.
Add the package to your composer.json
file:
'cviebrock/laravel-news-sitemap' => 'dev-master'
Add the service provider to app/config/app.php
'providers' => array(
...
'Cviebrock\LaravelNewsSitemap\ServiceProvider',
);
Publish the configuration file:
php artisan config:publish cviebrock/laravel-news-sitemap
// create a new sitemap instance
$sitemap = \App::make('Cviebrock\LaravelNewsSitemap\NewsSitemap');
// if it's not cached, then populate with entries
if (!$sitemap->isCached()) {
foreach (Posts::all() as $post) {
$extras = [];
$images = [];
foreach ($post->images as $image) {
$images[] = [
'loc' => $image->url,
'caption' => $image->caption
];
}
$extras['keywords'] = $post->topics->lists('name');
$this->sitemap->addEntry($post->url, $post->title, $post->published_at, $extras, $images);
}
}
// returns an XML response
return $sitemap->render();
Please use Github for bugs, comments, suggestions.
- Fork the project.
- Create your bugfix/feature branch and write your (well-commented) code.
- Commit your changes and push to your repository.
- Create a new pull request against this project's
master
branch.
laravel-news-sitemap was written by Colin Viebrock and released under the MIT License. See the LICENSE file for details.
Copyright 2014 Colin Viebrock