Heim > CMS-Tutorial > Empire CMS > Hauptteil

Classic Empire CMS generiert eine Sitemap für die Codefreigabe

silencement
Freigeben: 2019-11-29 13:50:07
nach vorne
2475 Leute haben es durchsucht

Classic Empire CMS generiert eine Sitemap für die Codefreigabe

Da ich mit dem Sitemap-Plugin von Empire CMS nicht zufrieden war, habe ich selbst ein Sitemap-Generierungstool geschrieben und den Homepage-Link, den Spaltenseiten-Link und den Inhaltsseiten-Link in die Sitemap eingefügt , und dann eine XML-Datei generieren und an Baidu Webmaster Tools senden. Ich habe eine geplante Aufgabe unter Linux geschrieben und sie einmal am Tag zu einer festen Zeit generiert ~

Der Code lautet wie folgt:

<?php
/*引用文件*/
require(&#39;e/class/connect.php&#39;);
require(&#39;e/class/db_sql.php&#39;);
require(&#39;e/data/dbcache/class.php&#39;);</p> <p>/*建立数据库链接 与 实例化类*/
$link = db_connect();
$empire=new mysqlquery(); </p> <p>//header("Content-type:application/xml");
header("Content-type: text/html; charset=utf-8");</p> <p>$operation = $_GET[&#39;operation&#39;];
$current_url = explode(&#39;/&#39;,$_SERVER[&#39;PHP_SELF&#39;]);
$current_script_name = end($current_url); </p> <p>if($operation && $operation == "makexml")
{
$xml = generate_sitemp_xml();
$result = save_xml(&#39;sitemap.xml&#39;,$xml);
if($result)
{
echo &#39;生成成功,<a href="sitemap.xml">点此查看</a>&#39;;
}
else
{
echo &#39;生成失败,<a href="&#39;.$current_script_name.&#39;">在来一次</a>!&#39;;
}
}
else
{
echo &#39;欢迎使用微笑的鱼Sitemap生成工具,请<a href="&#39;.$current_script_name.&#39;?operation=makexml">点此生成</a>!&#39;;
}</p> <p></p> <p>
//保存到文件
function save_xml($filename, $text) {
if (!$filename || !$text)
return false;

@chmod($filename,0777);
if ($fp = fopen($filename, "w")) {
if (@fwrite($fp, $text)) {
fclose($fp);
return true;
} else {
fclose($fp);
return false;
}
}
return false;
}
//生成Sitemap XML数据
function generate_sitemp_xml()
{
global $dbtbpre,$empire;

$xml = &#39;&#39;;
$xml .= &#39;<?xml version="1.0" encoding="utf-8"?>&#39; .PHP_EOL;
$xml .= &#39;<urlset>&#39; .PHP_EOL;
$xml .= generate_home_xml();//首页
$xml .= generate_class_xml();//栏目

$query="select * from {$dbtbpre}ecms_news order by id desc limit 100";
$sql=$empire->query($query);
while($r=$empire->fetch($sql))
{
$titleurl=sys_ReturnBqTitleLink($r);

$xml .= &#39; <url>&#39; .PHP_EOL;
$xml .= &#39; <loc>&#39;.$titleurl.&#39;</loc>&#39; .PHP_EOL;
$xml .= &#39; <lastmod>&#39;.strftime(&#39;%Y-%m-%d&#39;,$r[&#39;newstime&#39;]).&#39;</lastmod>&#39; .PHP_EOL;
$xml .= &#39; <changefreq>daily</changefreq>&#39; .PHP_EOL;
$xml .= &#39; <priority>0.8</priority>&#39; .PHP_EOL;
$xml .= &#39; </url>&#39; .PHP_EOL;

}
$xml .= &#39;</urlset>&#39; .PHP_EOL;

return $xml;
}
//生成栏目链接XML数据
function generate_class_xml()
{
global $dbtbpre,$empire,$class_r;
$xml = &#39;&#39;;

$sql=$empire->query("SELECT * FROM {$dbtbpre}enewsclass WHERE islast=1");
while($r=$empire->fetch($sql))
{
$infor=$empire->fetch1("SELECT newstime FROM {$dbtbpre}ecms_".$class_r[$r[classid]][tbname]." WHERE 
classid=&#39;$r[classid]&#39; ORDER BY newstime DESC LIMIT 1");
$class_url=sys_ReturnBqClassname($r, 9);

$xml .= &#39; <url>&#39; .PHP_EOL;
$xml .= &#39; <loc>&#39;.$class_url.&#39;</loc>&#39; .PHP_EOL;
$xml .= &#39; <lastmod>&#39;.strftime(&#39;%Y-%m-%d&#39;,time()).&#39;</lastmod>&#39; .PHP_EOL;
$xml .= &#39; <changefreq>daily</changefreq>&#39; .PHP_EOL;
$xml .= &#39; <priority>0.8</priority>&#39; .PHP_EOL;
$xml .= &#39; </url>&#39; .PHP_EOL;

}

return $xml;
}
//生成栏目链接XML数据
function generate_home_xml()
{
$xml = &#39;&#39;;
$xml .= &#39; <url>&#39; .PHP_EOL;
$xml .= &#39; <loc>https://www.jb51.net</loc>&#39; .PHP_EOL;
$xml .= &#39; <lastmod>&#39;.strftime(&#39;%Y-%m-%d&#39;,time()).&#39;</lastmod>&#39; .PHP_EOL;
$xml .= &#39; <changefreq>daily</changefreq>&#39; .PHP_EOL;
$xml .= &#39; <priority>0.8</priority>&#39; .PHP_EOL;
$xml .= &#39; </url>&#39; .PHP_EOL;

return $xml;</p> <p>}</p> <p>/*关闭数据库连接 与 释放类*/
db_close();
$empire=null;
?
Nach dem Login kopieren

Es wird empfohlen, „Empire cms Tutorial“ zu studieren

Das obige ist der detaillierte Inhalt vonClassic Empire CMS generiert eine Sitemap für die Codefreigabe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:www.word666.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!