예제 #1
0
파일: sitemap.php 프로젝트: yszar/linuxwp
    echo '</urlset>';
    $timeLost = intval(1000 * (microtime(true) - __BAIDU_START_TIME__));
    BaidusubmitSitemap::updateSitemap($sitemap->sid, array('item_count' => $itemCount, 'file_size' => $fileSize, 'lost_time' => $timeLost));
    BaidusubmitSitemap::updateUrlStat($urlnum);
}
//增量sitemap
if ('sitemapinc' === $_GET['m']) {
    $startTime = intval(@$_GET['start']);
    $sitemap = BaidusubmitSitemap::getSitemap(BaidusubmitSitemap::TYPE_INC, $startTime);
    if (empty($sitemap)) {
        BaidusubmitSitemap::headerStatus(404);
        return 1;
    }
    $endTime = $sitemap->end;
    define('_BAIDU_MAX_POST_COUNT_', 5000);
    $pidlist = BaidusubmitSitemap::getPostIdByTimeRange($startTime, $endTime, _BAIDU_MAX_POST_COUNT_);
    $indexsplitsitemap = false;
    $postCount = count($pidlist);
    if ($postCount >= _BAIDU_MAX_POST_COUNT_) {
        $indexsplitsitemap = true;
    }
    $itemCount = 0;
    $fileSize = 0;
    $index = 0;
    header('Content-Type: text/xml; charset=utf-8');
    echo '<?xml version="1.0" encoding="UTF-8"?><urlset>';
    $sizesplitsitemap = false;
    foreach ($pidlist as $pid) {
        $schema = BaidusubmitSitemap::genSchemaByPostId($pid, $post);
        $output = $schema->toXml() . "\n";
        $fileSizeCheck = $fileSize + strlen($output);