跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

CodeIgniter生成网站sitemap地图的方法

1.建立了一个名为sitemap的控制器

复制代码代码如下:php
load->model('sitemapxml');}function index(){$data['posts']=$this->sitemapxml->getArticle();$data['categorys']=$this->sitemapxml->getCategory();$this->load->view('sitemap.php',$data);}}首先加载sitemapxml模型类,index方法调用两个方法,分别获取文章列表和类别列表,以在模板中输出。

2.创建一个名为sitemapxml的模型

复制代码代码如下:php
load->database();}public function getArticle(){$this->db->select('ID,post_date,post_name');$this->db->order_by('post_date', 'desc');$result=$this->db->get('posts');return $result->result_array();}public function getCategory(){$this->db->select('c_sname');$result=$this->db->get('category');return $result->result_array();}}模型里面定义两个方法,获取文章列表和类别列表。

3.创建一个名为sitemap.php的模板

复制代码代码如下:sitemap php
最重要的就是这个模板了,按照sitemap.xml的标准格式,从数据库中读取相关数据,用循环的方式自动生成这样的格式,页面上展示的是html形式的xml的内容。

然后再用一个很笨的方法,将生成的html文本(实际上就是xml文件的显示内容),复制到一个新建的sitemap.xml文件,格式化一下,保存,就产生了一个标准的sitemap.xml文件。因为要用的SAE部署应用,目录不支持写操作,只能这样上传了,隔一段时间这样弄一下就ok了。

相关文章