云服务器促销,免费安装宝塔面板!
开启左侧

[DZ教程] 如何利用discuz制作门户的百度sitemap的方法

[复制链接]
我心枫叶 发表于 2018-6-10 00:54:22 | 显示全部楼层 |阅读模式

本站会员必须 邮箱验证成功后 才能发帖。马上注册查阅更多教程,下载海量资源,让你轻松玩做站

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

$ C0 R' y0 s# N1 |# }% V& J实现思路:$ T. Q, L7 U9 x  b1 `
因为百度sitemap可以提交xml文件,所以我们可以利用discus内置的rss来实现。
" G, @, ?% z$ k, t9 i$ p# {0 c1 H8 v5 }7 F+ X( Y6 _4 x' S: \
实现方法:
" _" z; P% L0 [  Z1、打开根目录的 portal.php 文件$ K( r0 C8 h* C4 T0 N5 }( W- w7 H$ T
找到3 C5 e  w2 M, e' k# e- Q8 U4 @
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block'))) $_GET['mod'] = 'index';
复制代码
5 f$ y) H* \6 h" S
修改为
0 H8 x% \/ e* A) u% p* P3 ?- m( h
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block', 'sitemap'))) $_GET['mod'] = 'index';
复制代码

  [, f) ~+ s" h/ ?9 w- T0 m$ w1 e* m$ ]2 @, v5 w+ k: x- B) y3 P
2、找到 source/module/portal/portal_rss.php 文件并复制一份,命名为 portal_sitemap.php
' o0 I8 c  D6 t5 V. W# L打开 portal_sitemap.php 文件
8 ~- g. X& k& O$ m找到* E& _4 D* ^4 ?/ b9 _2 n
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".2 Y; x4 R$ s! V6 m$ e
  2.      "<rss version="2.0">\n".
    % e0 V3 i* ]( B1 k
  3.      "  <channel>\n".! A% r4 {# C) ]
  4.      (count($catarray) > 1 ?
    0 k9 Y8 Z: s) F2 W
  5.           "    <title>{$_G[setting][bbname]}</title>\n"." m/ \+ A( q  q6 t, H
  6.           "    <link>{$_G[siteurl]}forum.php</link>\n".+ b( ]' [* \/ A
  7.           "    <description>Latest $num articles of all categories</description>\n"
    : x8 S* l- Y) s
  8.           :, U5 I! S& F- a$ K
  9.           "    <title>{$_G[setting][bbname]} - $catname</title>\n".
    . q' o; z9 j1 @& ?; q
  10.           "    <link>{$_G[siteurl]}portal.php?mod=list&catid=$rsscatid</link>\n".
    1 B7 ^0 G' }( }; Q/ I" W" w8 s
  11.           "    <description>Latest $num articles of $catname</description>\n"0 w% A1 J( d. N
  12.      ).' N2 c7 x& W2 M6 R, w
  13.      "    <copyright>Copyright(C) {$_G[setting][bbname]}</copyright>\n".: H2 r+ E7 K0 ?* Q
  14.      "    <generator>Discuz! Board by Comsenz Inc.</generator>\n".
      I$ k. ?' \) q& Y
  15.      "    <lastBuildDate>".gmdate('r', TIMESTAMP)."</lastBuildDate>\n".
    ! H$ A: K7 ~3 z' R  Y0 F
  16.      "    <ttl>$ttl</ttl>\n".
    2 Y+ L0 r% j3 D) g
  17.      "    <image>\n".+ q: T% j) f5 \/ M9 v
  18.      "      <url>{$_G[siteurl]}static/image/common/logo_88_31.gif</url>\n".
    $ x5 i1 ?- x2 L! R6 o, |+ N
  19.      "      <title>{$_G[setting][bbname]}</title>\n".9 L' C; L6 L/ e1 @* z
  20.      "      <link>{$_G[siteurl]}</link>\n".0 L( V/ M6 @  _) o* G) G
  21.      "    </image>\n";
复制代码

: A! u3 w4 _- d' B' P8 m修改为% b; l+ W4 w3 Q, u. a' m9 ^3 E  R' D
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".8 R# N% O$ `4 z
  2.      "  <urlset>\n";% L( \* j" O  _3 P+ o8 G7 s
复制代码

7 L& A/ q" ^6 s2 T1 B$ Q4 m找到
1 A0 I$ O! S) Z: s" C- E
  1. echo      "    <item>\n".
    & b* s! k  T4 J$ s
  2.                          "      <title>".$article['subject']."</title>\n".3 I$ J7 @: a4 f' z0 v" {
  3.                          "      <link>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</link>\n".1 q* P) z+ @4 N
  4.                          "      <description><![CDATA[".dhtmlspecialchars($article['description'])."]]></description>\n".! {$ Q$ f8 X( a
  5.                          "      <category>".dhtmlspecialchars($article['catname'])."</category>\n".5 U2 j$ U; x2 C* u# \' m: w
  6.                          "      <author>".dhtmlspecialchars($article['author'])."</author>\n".+ f0 X; n- {( b! b
  7.                          ($attachfile ? '<enclosure url="'.$filename.'" length="'.$attachsize.'" type="image/jpeg" />'."\n" : '').
    : }% F$ \; j' `, D2 G$ c
  8.                          "      <pubDate>".gmdate('r', $article['dateline'])."</pubDate>\n".9 _8 T' }: e) U4 p( ]
  9.                          "    </item>\n";
复制代码

& V* M9 n' n9 q) T1 [修改为1 k' h- ~# q, M" M  K0 S% p
  1. echo      "    <url>\n".
    5 K0 y2 E5 C( R- Z
  2.                          "      <loc>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</loc>\n".
    - Y/ x9 L+ `$ n' k3 ]- O
  3.                          "      <lastmod>".date('Y-m-d', $article['dateline'])."</lastmod>\n".
    6 F; V7 F- t6 M4 W; r
  4.                                         "      <changefreq>daily</changefreq>\n".
    " M) Q& I5 h; e  g( q
  5.                                         "      <priority>1.0</priority>\n".0 D7 }6 g- r) V9 l) x! D! Z
  6.                          "    </url>\n";
    * N, Z6 s, p( ]5 x4 H/ \8 S
复制代码
# d3 T7 b6 F& F
找到
9 P' G* q8 B. Z& ~* E3 ^2 F4 Z
  1. echo      "  </channel>\n"./ \: Z  Q7 z, u# A  y
  2.      "</rss>";
复制代码

9 R9 ?- E& n& K' `修改为
2 ?+ G% E, F. V/ hecho      "  </urlset>\n";1 [$ z: A  x, k+ i2 W

7 ]& ]/ B2 j; a( Y& E1 V& I( v7 _5 S然后访问地址:http://www.xxx.com/portal.php?mod=sitemap即可看到效果,百度sitemap提交这个地址即可。- R! B2 {! Y5 L0 @8 k
注意显示条数,可以修改portal_sitemap.php这里:$num = 20;  程序默认是显示20条,可根据自己的需要更改。
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐

抱歉,当前存在网络问题或服务器繁忙,详细错

主讲:我心枫叶 Discuz!教程

Discuz!论坛网盘附件免跳转下载(手机版网

主讲:当流科技 Discuz插件

discuz论坛搬家教程,如何搬迁到新服务器?

主讲:风雨兼程 Discuz!教程

宝塔面板绑定域名无法访问后台怎么解决?

主讲:风雨兼程 服务器学院

Discuz!X3.3全新安装和升级后快速回复框丢

主讲:风雨兼程 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

主讲:当流科技 服务器学院

Discuz! X3.4虚拟人气虚拟用户在线插件 完

主讲:执手天涯 Discuz插件

宝塔面板mysql怎么用navicat 连接数据库呢

主讲:当流科技 服务器学院

商务合作

0551-66191059
service#dangliu.net
点击这里给我发消息
dz论坛/Discuz!论坛新手

关注微信公众号

QQ扫码 加 DZ技术群