home_rss.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. /**
  3. * [Discuz!] (C)2001-2099 Comsenz Inc.
  4. * This is NOT a freeware, use is subject to license terms
  5. *
  6. * $Id: home_rss.php 25756 2011-11-22 02:47:45Z zhangguosheng $
  7. */
  8. if(!defined('IN_DISCUZ')) {
  9. exit('Access Denied');
  10. }
  11. $pagenum = 20;
  12. $siteurl = getsiteurl();
  13. $uid = empty($_GET['uid'])?0:intval($_GET['uid']);
  14. $list = array();
  15. if(!empty($uid)) {
  16. $space = getuserbyuid($uid, 1);
  17. }
  18. if(empty($space)) {
  19. $space['username'] = $_G['setting']['sitename'];
  20. $space['name'] = $_G['setting']['sitename'];
  21. $space['email'] = $_G['setting']['adminemail'];
  22. $space['space_url'] = $siteurl;
  23. } else {
  24. $space['username'] = $space['username'].'@'.$_G['setting']['sitename'];
  25. $space['space_url'] = $siteurl."home.php?mod=space&amp;uid=$space[uid]";
  26. }
  27. $uidsql = empty($space['uid'])?'':" AND b.uid='$space[uid]'";
  28. $data_blog = C::t('home_blog')->range(0, $pagenum, 'DESC', 'dateline', 0, null, $uid);
  29. $blogids = array_keys($data_blog);
  30. $data_blogfield = C::t('home_blogfield')->fetch_all($blogids);
  31. $charset = $_G['config']['output']['charset'];
  32. dheader("Content-type: application/xml");
  33. echo "<?xml version=\"1.0\" encoding=\"".$charset."\"?>\n".
  34. "<rss version=\"2.0\">\n".
  35. " <channel>\n".
  36. " <title>{$space[username]}</title>\n".
  37. " <link>{$space[space_url]}</link>\n".
  38. " <description>{$_G[setting][bbname]}</description>\n".
  39. " <copyright>Copyright(C) {$_G[setting][bbname]}</copyright>\n".
  40. " <generator>Discuz! Board by Comsenz Inc.</generator>\n".
  41. " <lastBuildDate>".gmdate('r', TIMESTAMP)."</lastBuildDate>\n".
  42. " <image>\n".
  43. " <url>{$_G[siteurl]}static/image/common/logo_88_31.gif</url>\n".
  44. " <title>{$_G[setting][bbname]}</title>\n".
  45. " <link>{$_G[siteurl]}</link>\n".
  46. " </image>\n";
  47. foreach($data_blog as $curblogid => $value) {
  48. $value = array_merge($value, (array)$data_blogfield[$curblogid]);
  49. $value['message'] = getstr($value['message'], 300, 0, 0, 0, -1);
  50. if($value['pic']) {
  51. $value['pic'] = pic_cover_get($value['pic'], $value['picflag']);
  52. $value['message'] .= "<br /><img src=\"$value[pic]\">";
  53. }
  54. echo " <item>\n".
  55. " <title>".$value['subject']."</title>\n".
  56. " <link>$_G[siteurl]home.php?mod=space&amp;uid=$value[uid]&amp;do=blog&amp;id=$value[blogid]</link>\n".
  57. " <description><![CDATA[".dhtmlspecialchars($value['message'])."]]></description>\n".
  58. " <author>".dhtmlspecialchars($value['username'])."</author>\n".
  59. " <pubDate>".gmdate('r', $value['dateline'])."</pubDate>\n".
  60. " </item>\n";
  61. }
  62. echo " </channel>\n".
  63. "</rss>";
  64. ?>