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

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

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

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

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

x
1 V2 H' z1 F7 c, y$ F0 q' m1 f# _
实现思路:
* b7 b2 h$ j* N0 Z" g因为百度sitemap可以提交xml文件,所以我们可以利用discus内置的rss来实现。. _$ s+ H7 K% ~2 f

( q! v3 C1 M% p. {8 i* L实现方法:
- Q/ |- J; q! V1 H; `7 _1、打开根目录的 portal.php 文件" l7 ^  r/ I6 |+ S: }6 b  X2 a
找到% G1 G7 C) N/ w
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block'))) $_GET['mod'] = 'index';
复制代码

. j4 V; d7 q  z# y, y: I- b修改为% {) ?  ~& f2 U
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block', 'sitemap'))) $_GET['mod'] = 'index';
复制代码

) k/ L( Y* c3 E! `) e" J! ~3 h; h9 J8 O7 g% O' _( Z2 w2 V
2、找到 source/module/portal/portal_rss.php 文件并复制一份,命名为 portal_sitemap.php
5 O# f0 i' ~& I' S1 ]. P: Z打开 portal_sitemap.php 文件
  U, s6 C8 T! W% E找到% ?$ h, ?* N* A/ ?9 u. @3 v% X+ g
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".; t3 f* f0 y; k+ V& e$ L
  2.      "<rss version="2.0">\n".
    2 w2 T6 W$ s* Q+ e: {" i
  3.      "  <channel>\n".
    3 I3 T* \( A4 n& }% r) `
  4.      (count($catarray) > 1 ?
    - |' E4 a0 p2 S9 k
  5.           "    <title>{$_G[setting][bbname]}</title>\n".6 s" k8 m7 s/ M
  6.           "    <link>{$_G[siteurl]}forum.php</link>\n".
    # h6 \' T# L# {9 q( M0 s) L$ }
  7.           "    <description>Latest $num articles of all categories</description>\n"
    ; [+ i" Z- P  Q* B6 x9 j
  8.           :
      p$ R& U* T3 O0 J; H2 Q
  9.           "    <title>{$_G[setting][bbname]} - $catname</title>\n".
    : P, o: P6 x% _7 ], x: F
  10.           "    <link>{$_G[siteurl]}portal.php?mod=list&catid=$rsscatid</link>\n".
    0 B! [* }* [3 Z4 }6 D6 J; G
  11.           "    <description>Latest $num articles of $catname</description>\n"1 I; {5 L  ^( ^" j4 q; R0 I8 ^
  12.      ).: y6 T, c' d8 o  `' W. F
  13.      "    <copyright>Copyright(C) {$_G[setting][bbname]}</copyright>\n".
    6 T! S# e" Y; e  @. K+ z! C6 H! @
  14.      "    <generator>Discuz! Board by Comsenz Inc.</generator>\n".
      T7 h# ]( V+ b: i
  15.      "    <lastBuildDate>".gmdate('r', TIMESTAMP)."</lastBuildDate>\n".
      O5 H; v* k( e0 E
  16.      "    <ttl>$ttl</ttl>\n".
    - L( Q2 O& C( Z& X2 G) E
  17.      "    <image>\n".
    * B& W6 _. j  {; ^3 R
  18.      "      <url>{$_G[siteurl]}static/image/common/logo_88_31.gif</url>\n".
    , h9 X5 p% y6 b# N; i
  19.      "      <title>{$_G[setting][bbname]}</title>\n".- {8 {8 ?% A  f
  20.      "      <link>{$_G[siteurl]}</link>\n".
    ) }1 ^" Q2 _* Q# q
  21.      "    </image>\n";
复制代码
' H, P2 p5 c4 w" l& m1 a
修改为. G# _* @% n) k" N
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".4 y3 H1 L4 O8 D" e
  2.      "  <urlset>\n";
    ' ]. _7 k5 A/ U
复制代码
$ Y+ I& {( H8 `& `
找到9 Y* Y& L1 a" b! @/ D+ j0 n
  1. echo      "    <item>\n".
    . n4 o; O) F  N6 v/ U" j
  2.                          "      <title>".$article['subject']."</title>\n".
    2 b7 m4 R4 T/ @# X3 E( B# S4 h7 ]
  3.                          "      <link>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</link>\n"." G0 Z: y, d: c: S# i. x
  4.                          "      <description><![CDATA[".dhtmlspecialchars($article['description'])."]]></description>\n".' [6 e5 y& v6 Z0 H2 V. Y2 Y% a/ I
  5.                          "      <category>".dhtmlspecialchars($article['catname'])."</category>\n".
    ) O& t5 q# q7 b6 |
  6.                          "      <author>".dhtmlspecialchars($article['author'])."</author>\n".4 V! I2 A4 f8 y7 {
  7.                          ($attachfile ? '<enclosure url="'.$filename.'" length="'.$attachsize.'" type="image/jpeg" />'."\n" : '').7 a5 I7 ]" l& s2 S+ c
  8.                          "      <pubDate>".gmdate('r', $article['dateline'])."</pubDate>\n".3 Y0 U# r4 k" f9 t9 c( M& X& ]. E
  9.                          "    </item>\n";
复制代码

7 z3 l; W. E5 Z7 u/ k7 i$ G. a修改为
& b. r' H' Y! k' Z7 q
  1. echo      "    <url>\n".7 N4 A: {1 \. q; \0 y' D
  2.                          "      <loc>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</loc>\n".
    . d0 v2 j7 ]; U' F: `
  3.                          "      <lastmod>".date('Y-m-d', $article['dateline'])."</lastmod>\n".& l4 R) z1 F5 Q2 l0 t, R5 m
  4.                                         "      <changefreq>daily</changefreq>\n".' f( Q/ S2 _& X
  5.                                         "      <priority>1.0</priority>\n".
    - _: G  r3 U$ F! K
  6.                          "    </url>\n";
    % I+ v7 l9 k4 l
复制代码

, @. m. ~; Y5 P8 g找到* A4 p6 T* a, Z; E, M+ y
  1. echo      "  </channel>\n".
    - i0 A" S% s7 M+ w4 W$ l# A6 S" e
  2.      "</rss>";
复制代码

9 Y1 n$ M" w( g8 M6 _, P# H修改为
& Z4 [' N6 p( K' ^$ I9 }1 p: fecho      "  </urlset>\n";
/ T% T" K6 Z& B6 L
3 m/ J: T9 y6 e' x. U然后访问地址:http://www.xxx.com/portal.php?mod=sitemap即可看到效果,百度sitemap提交这个地址即可。
+ Z1 F% X  I5 z( T注意显示条数,可以修改portal_sitemap.php这里:$num = 20;  程序默认是显示20条,可根据自己的需要更改。
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

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

本版积分规则

精彩课程推荐

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

主讲:当流科技 Discuz插件

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

主讲:我心枫叶 Discuz!教程

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

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

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

主讲:风雨兼程 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

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

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

主讲:风雨兼程 Discuz!教程

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

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

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

主讲:执手天涯 Discuz插件

商务合作

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

关注微信公众号

QQ扫码 加 DZ技术群