Карта сайта очень важна для Google, Yahoo, для SEO. каждое базовое требование сайта — это карта сайта. Поэтому я хотел бы поделиться с вами тем, как создать динамическую карту XML в приложении CodeIgniter 3. Мы будем генерировать XML-карту сайта без использования какого-либо плагина или чего-либо в приложении CodeIgniter.
Здесь вам нужно просто выполнить несколько шагов, чтобы добавить XML-карту сайта для SEO. Я просто создал одну таблицу с элементами и получаю весь URL-адрес и сделаю ее динамической sitemap. Таким образом, вы просто видите ниже код с маршрутом, контроллером и файлом просмотра, как показано ниже.
Шаг 1. Создание маршрута
мы собираемся с нуля, нам нужно создать один маршрут «sitemap.xml» для доступа из URL. поэтому откройте файл routes.php и добавьте код, как показано ниже:
<?php defined('BASEPATH') OR exit('No direct script access allowed'); $route['default_controller'] = 'welcome'; $route['404_override'] = ''; $route['translate_uri_dashes'] = FALSE; $route['sitemap\.xml'] = "Sitemap/index";
Шаг 2. Создание контроллера Sitemap
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Sitemap extends CI_Controller { /** * Index Page for this controller. * */ public function index() { $this->load->database(); $query = $this->db->get("items"); $data['items'] = $query->result(); $this->load->view('sitemap', $data); } }
Шаг 3. Создание файла XML
<?php echo'<?xml version="1.0" encoding="UTF-8" ?>' ?> <urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc><?php echo base_url();?></loc> <priority>1.0</priority> <changefreq>daily</changefreq> </url> <!-- Sitemap --> <?php foreach($items as $item) { ?> <url> <loc><?php echo base_url()."item/".$item->id ?></loc> <priority>0.5</priority> <changefreq>daily</changefreq> </url> <?php } ?> </urlset>
Итак, давайте запустим и посмотрим, как выглядит ваш XML-файл.
Вы можете посмотреть URL: https://localhost:8000/sitemap.xml