怎么用laravel生成网站地图

  介绍

这篇文章给大家分享的是有关怎么用laravel生成网站地图的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

之前用yaf和yii框架写过站点地图:思路是根据需求生成xml文件保存到项目指定目录中。

<强>用laravel换一个思路,生成xml动态链接,而不是保存文件到目录

1。配置路线,生成xml访问链接

2。根据项目逻辑生成sitemap

<强>上代码:

配置线路

,,,//网站地图   ,,,路线:获得(& # 39;/地图/m/{类型}. xml # 39;,, & # 39; SitemapController@siteMap& # 39;);

<强>核心代码

& lt; php ?   namespace  M \ App \ Http \控制器;   use 应用\ Http \ \ BaseController控制器;   use 模型应用\ \ Bbs \文章;   use 模型应用\ \ Bbs \问;   use 应用\ \ Bbs \线程模型;   use 主要应用\模型\ \视频;   use 应用\ \车库\ SeriesInfoModel模型;//todo 补充其他模块   use 碳\碳;   use 阐明\ \外墙\缓存的支持;   class  SitemapController  extends  BaseController   {   ,,,//todo 写一个汇总文件   ,,,public  function 站点地图(类型)   ,,,{   ,,,,,,,cacheKey 美元;=,“网站产生绯闻,,只美元类型;   ,,,,,,,//2小时缓存,保证加载速度   ,,,,,,,if (缓存::有(cacheKey美元)),{   ,,,,,,,,,,,siteMap 美元;=,缓存:获得(cacheKey美元);   ,,,,,,,},{else    ,,,,,,,,,,,siteMap 美元;=,$ this→buildSiteMap($类型);   ,,,,,,,,,,,缓存:添加(cacheKey美元,,网站地图,,120);   ,,,,,,,}   ,,,,,,,return 响应($站点地图)   ,,,,,,,,,,,→页眉(& # 39;内容类型# 39;,,& # 39;text/xml # 39;);   ,,,}   ,,,/* *   ,,,,*,Build 从而Site 地图   ,,,*/,,,protected  function  buildSiteMap(类型)   ,,,{   ,,,,,,,sitemapInfo 美元;=,[];   ,,,,,,,switch (类型),{   ,,,,,,,,,,,case  & # 39;视频# 39;:   ,,,,,,,,,,,,,,,sitemapInfo 美元;=,$ this→getVideoInfo ();   ,,,,,,,,,,,,,,,休息;   ,,,,,,,,,,,case  & # 39;文章# 39;:   ,,,,,,,,,,,,,,,sitemapInfo 美元;=,$ this→getArticleInfo ();   ,,,,,,,,,,,,,,,休息;   ,,,,,,,,,,,case  & # 39;论坛# 39;:   ,,,,,,,,,,,,,,,sitemapInfo 美元;=,$ this→getBbsInfo ();   ,,,,,,,,,,,,,,,休息;   ,,,,,,,,,,,case  & # 39;问,:   ,,,,,,,,,,,,,,,sitemapInfo 美元;=,$ this→getAskInfo ();   ,,,,,,,,,,,,,,,休息;   ,,,,,,,,,,,case  & # 39;系列# 39;:   ,,,,,,,,,,,,,,,sitemapInfo 美元;=,$ this→getSeriesInfo();//车型库   ,,,,,,,,,,,,,,,休息;   ,,,,,,,}   ,,,,,,,lastmod 美元;=,sitemapInfo美元[0][& # 39;pub_time& # 39;];   ,,,,,,,xml 美元;=,[];   ,,,,,,,$ xml [],=, & # 39; & lt; ? xml  version=?.0“,编码=癠TF-8" ? & # 39;,只& # 39;祝辞& # 39;;   ,,,,,,,$ xml [],=, & # 39; & lt; urlset  xmlns=癶ttp://www.sitemaps.org/schemas/sitemap/0.9", xmlns:移动=癶ttp://www.baidu.com/schemas/sitemap-mobile/1/"在& # 39;;   ,,,,,,,$ xml [],=, & # 39;,, & lt; url> & # 39;;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

怎么用laravel生成网站地图