作者:holy190 | 来源:互联网 | 2018-07-16 23:00
ec(2);PHPBB3的百度sitemap生成器代码<?php 02error_reporting(0); 03define(IN_PHPBB,true); 04$phpbb_root_path.; 05$phpExsubstr(strrchr(__FILE__,.),1); 0
PHPBB3的百度sitemap生成器代码
02 error_reporting(0);
03 define('IN_PHPBB', true);
04 $phpbb_root_path = './';
05 $phpEx = substr(strrchr(__FILE__, '.'), 1);
06
07 include($phpbb_root_path . 'config.' . $phpEx);
08 include($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx);
09
10 $db = new $sql_db();
11
12 $db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false, false);
13
14 if(PHP_VERSION <'4.1.0') {
15 $_GET = &$HTTP_GET_VARS;
16 $_SERVER = &$HTTP_SERVER_VARS;
17 }
18
19
20 $maxitemnum = 500;
21 $timestamp = time();
22 $PHP_SELF = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];
23 $boardurl = 'http://'.$_SERVER['HTTP_HOST'].substr($PHP_SELF, 0, strrpos($PHP_SELF, '/') + 1);
24
25 $sitemapfile = $phpbb_root_path.'./cache/baidu_sitemap.xml';
26 echo $xmlfiletime = @filemtime($sitemapfile);
27
28 header("Content-type: application/xml");
29
30 $xmlcOntent= "n".
31 "n";
32
33 if($timestamp - $xmlfiletime >= 8 * 3600) {
34 $xmlfiletime = $timestamp - 8 * 3600;
35
36 $sql = 'SELECT * FROM '.$table_prefix.'topics WHERE topic_time > '.$xmlfiletime.' LIMIT '.$maxitemnum;
37 $result = $db->sql_query($sql);
38
39 $xmlcontent .= " $boardurln".
40 " [email]admin@phprimer.com[/email]n".
41 " 8n".
42 " ".gmdate('Y-m-d H:i:s', $timestamp + 8 * 3600)."n".
43 " PHPrimer v0.1n";
44
45 while ($data=$db->sql_fetchrow($result)) {
46 print_r($data);
47 $xmlcontent .= " - n".
48 " {$boardurl}viewforum.php?f={$data['forum_id']}&t={$data['topic_id']}n".
49 " n".
50 " ".gmdate('Y-m-d H:i:s', $data['topic_time'] + 8 * 3600)."n".
51 " ".gmdate('Y-m-d H:i:s', $data['topic_last_post_time'] + 8 * 3600)."n".
52 " $data[topic_replies]n".
53 " $data[topic_views]n".
54 " $data[forum_id]n".
55 " ".(intval($data['topic_type']) ? 1 : 0)."n".
56 " n";
57 }
58
59 $xmlcontent .= "";
60 if($fp = @fopen($sitemapfile, 'w')) {
61 fwrite($fp, $xmlcontent);
62 flock($fp, 2);
63 fclose($fp);
64 }
65
66 echo $xmlcontent;
67
68 } else {
69
70 @readfile($sitemapfile);
71
72 }