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

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

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

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

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

x

4 o* V% m4 G" d# Z3 u实现思路:+ Z0 `" Y5 p6 r/ X, C' E: Y9 n
因为百度sitemap可以提交xml文件,所以我们可以利用discus内置的rss来实现。
( F  \% H  l9 ]* c" F) z/ K$ [/ Q: X' r0 Z+ z3 T
实现方法:
7 j/ J. M3 e' K  u1、打开根目录的 portal.php 文件) U+ p$ g6 }1 v  `1 r
找到
  A3 b7 y. V7 c
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block'))) $_GET['mod'] = 'index';
复制代码
5 K, |7 P/ L1 ~5 k6 P5 j
修改为$ k2 o2 s! F+ k! R6 o3 g  n* Q
  1. if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block', 'sitemap'))) $_GET['mod'] = 'index';
复制代码

  _2 _% t* g9 V; {% y" z" l4 O6 ^% _
2、找到 source/module/portal/portal_rss.php 文件并复制一份,命名为 portal_sitemap.php
$ N4 c9 f+ F6 N) k, q  o; h: }3 ?打开 portal_sitemap.php 文件6 z0 r. Z# i) d
找到
2 R: k1 W2 H/ t9 h  Z, i
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".
    0 X/ T  D0 d! z& p+ d
  2.      "<rss version="2.0">\n".
    * o/ h2 c: ]& U4 U
  3.      "  <channel>\n".
    / `; p) z0 u7 q* Z2 e- j8 M
  4.      (count($catarray) > 1 ?; l$ G6 C- |: J3 o4 s( z, M8 V. ]
  5.           "    <title>{$_G[setting][bbname]}</title>\n".
    3 J* f4 I6 e  C& L4 U* e
  6.           "    <link>{$_G[siteurl]}forum.php</link>\n".
    % Y& s2 P2 g7 ~6 r- x
  7.           "    <description>Latest $num articles of all categories</description>\n"/ f" X& w' t8 u' J6 q- F6 j
  8.           :. p$ l4 S7 G4 T- u/ ], k
  9.           "    <title>{$_G[setting][bbname]} - $catname</title>\n".2 J9 S; R4 L" v9 R: J
  10.           "    <link>{$_G[siteurl]}portal.php?mod=list&catid=$rsscatid</link>\n".
    0 v  l2 F7 e. O
  11.           "    <description>Latest $num articles of $catname</description>\n"
    - l/ [7 K; G7 \$ g7 X' r
  12.      ).
    ' V! `  m. ~$ f
  13.      "    <copyright>Copyright(C) {$_G[setting][bbname]}</copyright>\n".
    * E. k' V) U" F# {  o( Q# Y$ G$ i
  14.      "    <generator>Discuz! Board by Comsenz Inc.</generator>\n".
    # g. S2 w0 s" T+ w; h9 \- Z2 q
  15.      "    <lastBuildDate>".gmdate('r', TIMESTAMP)."</lastBuildDate>\n".$ A, j! O' B# Y% l) f) Z2 P% M
  16.      "    <ttl>$ttl</ttl>\n".
    4 X; T- w- c0 z4 G) S. X
  17.      "    <image>\n".  z2 u- T$ Y* r
  18.      "      <url>{$_G[siteurl]}static/image/common/logo_88_31.gif</url>\n".
    5 c- v5 A4 y* Z' ]% c
  19.      "      <title>{$_G[setting][bbname]}</title>\n".
    / W; h; L' R8 q. I6 a( e( \
  20.      "      <link>{$_G[siteurl]}</link>\n".2 O8 C7 j3 Q' @6 G  ~$ `
  21.      "    </image>\n";
复制代码

. p* s/ Q3 W8 x$ q修改为
# ]7 k- s6 l& T6 H. w# O
  1. echo      "<?xml version="1.0" encoding="".$charset.""?>\n".
    ) p! n9 [+ G% o* t# ]
  2.      "  <urlset>\n";/ G# l1 I! ?. M" }% d
复制代码

2 D1 F+ X. `  E7 A; o找到. O3 Q/ y9 n9 n( j3 g/ T: {% M
  1. echo      "    <item>\n".
    # j1 @; @0 P3 g: w. I* |
  2.                          "      <title>".$article['subject']."</title>\n".
    ) Y0 o& L" |; v  o, T
  3.                          "      <link>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</link>\n".2 }$ J" ^0 a2 ~1 O0 B
  4.                          "      <description><![CDATA[".dhtmlspecialchars($article['description'])."]]></description>\n".* S  ]% }  D6 @- x4 I9 g& k
  5.                          "      <category>".dhtmlspecialchars($article['catname'])."</category>\n".; o" H9 r$ ^4 G! Z% g6 S5 u$ X# Y- A# c
  6.                          "      <author>".dhtmlspecialchars($article['author'])."</author>\n".
    * T& w  ~. K! ~5 B% d( h
  7.                          ($attachfile ? '<enclosure url="'.$filename.'" length="'.$attachsize.'" type="image/jpeg" />'."\n" : '').
    ( l" l( J6 s. V) D0 f
  8.                          "      <pubDate>".gmdate('r', $article['dateline'])."</pubDate>\n".
    - F' N! A- L( i8 }& h4 R
  9.                          "    </item>\n";
复制代码

, L- \2 D+ y/ O0 ^+ q' K- \% b修改为
" `/ x6 \! a; x+ t
  1. echo      "    <url>\n".* f) g% W7 }9 ?
  2.                          "      <loc>$_G[siteurl]".($rewriteflag ? rewriteoutput('portal_article', 1, '', $article[aid]) : "portal.php?mod=view&aid=$article[aid]")."</loc>\n".
    " c* E2 @2 `9 k- b/ e. _/ _
  3.                          "      <lastmod>".date('Y-m-d', $article['dateline'])."</lastmod>\n".
    ) j0 C: _! j/ Y: C5 O: r# a& w
  4.                                         "      <changefreq>daily</changefreq>\n".$ M% X# o# R& j( X
  5.                                         "      <priority>1.0</priority>\n".
    ' W" `  w1 s2 r
  6.                          "    </url>\n";
    ; H. ^/ o0 U9 s6 ^) f5 ~
复制代码

/ F1 a4 `+ @5 y4 E3 J找到
' _4 Y& E6 t8 Q. G# H
  1. echo      "  </channel>\n".2 p; L5 r$ V" n* D2 n
  2.      "</rss>";
复制代码

: [; x1 e) f3 \修改为
3 R7 P! O2 h$ Q8 Z5 a2 \  decho      "  </urlset>\n";
5 Z: d" W" W  s0 ~
2 n4 I7 s  j: D# D# ~5 a# c" C然后访问地址:http://www.xxx.com/portal.php?mod=sitemap即可看到效果,百度sitemap提交这个地址即可。
9 R' x, J2 s* Z, J) z7 {5 l注意显示条数,可以修改portal_sitemap.php这里:$num = 20;  程序默认是显示20条,可根据自己的需要更改。
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

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

本版积分规则

精彩课程推荐

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

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

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

主讲:当流科技 Discuz插件

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

主讲:风雨兼程 Discuz!教程

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

主讲:我心枫叶 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

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

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

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

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

主讲:风雨兼程 Discuz!教程

宝塔面板如何添加和管理Mysql数据库?

主讲:xotexa372 服务器学院

商务合作

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

关注微信公众号

QQ扫码 加 DZ技术群