View file services/sitemap/sitemap.php

File size: 8.35Kb
<?php
require_once ($_SERVER['DOCUMENT_ROOT'].'/system/connections/core.php');

$out = '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
$site = SCHEME.HTTP_HOST;

/*
-----
Блоги
-----
*/

if (config('PRIVATE_BLOGS') == 1 && config('SITEMAP_BLOGS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/blogs/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `ID`,`TIME` FROM `BLOGS` WHERE `PRIVATE` = '0' AND `SHARE` = '0' ORDER BY `TIME` DESC LIMIT 6000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/blogs/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
-----
Видео
-----
*/

if (config('PRIVATE_VIDEOS') == 1 && config('SITEMAP_VIDEOS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/videos/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';
  
  $data = db::get_string_all("SELECT `VIDEOS`.`ID`,`VIDEOS`.`TIME` FROM `VIDEOS` LEFT JOIN `VIDEOS_DIR` ON (`VIDEOS_DIR`.`ID` = `VIDEOS`.`ID_DIR` OR `VIDEOS_DIR`.`ID_DIR` = `VIDEOS`.`ID_DIR`) WHERE `PRIVATE` = '0' GROUP BY `VIDEOS`.`ID` ORDER BY `VIDEOS`.`TIME` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/videos/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
------
Музыка
------
*/

if (config('PRIVATE_MUSIC') == 1 && config('SITEMAP_MUSIC') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/music/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';
  
  $data = db::get_string_all("SELECT `MUSIC`.`ID`,`MUSIC`.`TIME` FROM `MUSIC` LEFT JOIN `MUSIC_DIR` ON (`MUSIC_DIR`.`ID` = `MUSIC`.`ID_DIR` OR `MUSIC_DIR`.`ID_DIR` = `MUSIC`.`ID_DIR`) WHERE `PRIVATE` = '0' GROUP BY `MUSIC`.`ID` ORDER BY `MUSIC`.`TIME` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/music/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
----
Фото
----
*/

if (config('PRIVATE_PHOTOS') == 1 && config('SITEMAP_PHOTOS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/photos/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';
  
  $data = db::get_string_all("SELECT `PHOTOS`.`ID`,`PHOTOS`.`TIME` FROM `PHOTOS` LEFT JOIN `PHOTOS_DIR` ON (`PHOTOS_DIR`.`ID` = `PHOTOS`.`ID_DIR` OR `PHOTOS_DIR`.`ID_DIR` = `PHOTOS`.`ID_DIR`) WHERE `PRIVATE` = '0' GROUP BY `PHOTOS`.`ID` ORDER BY `PHOTOS`.`TIME` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/photos/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
-----
Форум
-----
*/

if (config('PRIVATE_FORUM') == 1 && config('SITEMAP_FORUM') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/forum/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `ID`,`TIME` FROM `FORUM_THEM` WHERE `BAN` = '0' ORDER BY `TIME` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/forum/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
-------
Новости
-------
*/

if (config('PRIVATE_NEWS') == 1 && config('SITEMAP_NEWS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/news/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `ID`,`TIME` FROM `NEWS` ORDER BY `TIME` DESC LIMIT 1000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/news/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
--------
Загрузки
--------
*/

if (config('PRIVATE_DOWNLOADS') == 1 && config('SITEMAP_DOWNLOADS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/downloads/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `ID`,`TIME` FROM `DOWNLOADS` ORDER BY `TIME` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/downloads/show/?id='.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
----------
Сообщества
----------
*/

if (config('PRIVATE_COMMUNITIES') == 1 && config('SITEMAP_COMMUNITIES') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/communities/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `URL`,`TIME` FROM `COMMUNITIES` ORDER BY `TIME` DESC LIMIT 1000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/public/'.tabs($list['URL']).'</loc>
    <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
------------
Пользователи
------------
*/

if (config('SITEMAP_USERS') == 1) {
  
  $out .= '
  <url>
  <loc>'.$site.'/m/users/</loc>
  <lastmod>'.date('Y-m-d', TM).'</lastmod>
  <priority>1</priority>
  </url>
  ';

  $data = db::get_string_all("SELECT `ID`,`DATE_CREATE` FROM `USERS` ORDER BY `DATE_CREATE` DESC LIMIT 5000");
  while ($list = $data->fetch()) {
    
    $out .= '
    <url>
    <loc>'.$site.'/id'.$list['ID'].'</loc>
    <lastmod>'.date('Y-m-d', $list['DATE_CREATE']).'</lastmod>
    <priority>0.5</priority>
    </url>
    ';
  
  }
  
}

/*
-------
Магазин
-------
*/

if (is_dir(ROOT.'/modules/shop/')) {
  
  if (config('PRIVATE_SHOP') == 1 && config('SITEMAP_SHOP') == 1) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/shop/</loc>
    <lastmod>'.date('Y-m-d', TM).'</lastmod>
    <priority>1</priority>
    </url>
    ';
    
    $data = db::get_string_all("SELECT `ID`,`TIME` FROM `SHOP_GOODS` WHERE `BAN` = '0' ORDER BY `TIME` DESC LIMIT 5000");
    while ($list = $data->fetch()) {
      
      $out .= '
      <url>
      <loc>'.$site.'/m/shop/show/?id='.$list['ID'].'</loc>
      <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
      <priority>0.5</priority>
      </url>
      ';
    
    }
  
  }
  
}

/*
----------
Объявления
----------
*/

if (is_dir(ROOT.'/modules/adlist/')) {
  
  if (config('PRIVATE_ADLIST') == 1 && config('SITEMAP_ADLIST') == 1) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/adlist/</loc>
    <lastmod>'.date('Y-m-d', TM).'</lastmod>
    <priority>1</priority>
    </url>
    ';
    
    $data = db::get_string_all("SELECT `ID`,`TIME` FROM `ADLIST` WHERE `BAN` = '0' ORDER BY `TIME` DESC LIMIT 3000");
    while ($list = $data->fetch()) {
      
      $out .= '
      <url>
      <loc>'.$site.'/m/adlist/show/?id='.$list['ID'].'</loc>
      <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
      <priority>0.5</priority>
      </url>
      ';
    
    }
  
  }
  
}

/*
----------------
Онлайн кинотеатр
----------------
*/

if (is_dir(ROOT.'/modules/movies/')) {
  
  if (config('PRIVATE_MOVIES') == 1 && config('SITEMAP_MOVIES') == 1) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/movies/</loc>
    <lastmod>'.date('Y-m-d', TM).'</lastmod>
    <priority>1</priority>
    </url>
    ';
    
    $data = db::get_string_all("SELECT `ID`,`TIME` FROM `MOVIES` ORDER BY `TIME` DESC LIMIT 3000");
    while ($list = $data->fetch()) {
      
      $out .= '
      <url>
      <loc>'.$site.'/m/movies/show/?id='.$list['ID'].'</loc>
      <lastmod>'.date('Y-m-d', $list['TIME']).'</lastmod>
      <priority>0.5</priority>
      </url>
      ';
    
    }
  
  }
  
}

/*
----------
Знакомства
----------
*/

if (is_dir(ROOT.'/modules/dating/')) {
  
  if (config('PRIVATE_DATING') == 1 && config('SITEMAP_DATING') == 1) {
    
    $out .= '
    <url>
    <loc>'.$site.'/m/dating/</loc>
    <lastmod>'.date('Y-m-d', TM).'</lastmod>
    <priority>1</priority>
    </url>
    ';
  
  }
  
}

$out .= '</urlset>';
		
header('Content-Type: text/xml; charset=utf-8');
echo $out;
exit();