国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

103 satır
3.6KB

  1. <?php
  2. /**
  3. * 生成Tag操作
  4. *
  5. * @version $Id: makehtml_taglist_action.php 1 11:17 2020年8月19日Z tianya $
  6. * @package DedeCMS.Administrator
  7. * @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
  8. * @license http://help.dedecms.com/usersguide/license.html
  9. * @link http://www.dedecms.com
  10. */
  11. require_once(dirname(__FILE__) . "/config.php");
  12. CheckPurview('sys_MakeHtml');
  13. require_once(DEDEINC . "/arc.taglist.class.php");
  14. if (empty($pageno)) $pageno = 0;
  15. if (empty($mkpage)) $mkpage = 1;
  16. if (empty($upall)) $upall = 0; // 是否更新全部 0为更新单个 1为更新全部
  17. if (empty($ctagid)) $ctagid = 0; // 当前处理的tagid
  18. if (empty($maxpagesize)) $maxpagesize = 50;
  19. $tagid = isset($tagid) ? intval($tagid) : 0;
  20. if ($tagid > 0) {
  21. $upall = 0; // 更新单个模式
  22. $ctagid = $tagid;
  23. } else {
  24. $upall = 1; // 更新全部模式
  25. }
  26. $allfinish = false; // 是否全部完成
  27. if ($upall == 1 && $ctagid == 0) {
  28. $rr = $dsql->GetOne("SELECT * FROM `#@__tagindex` WHERE mktime <> uptime LIMIT 1");
  29. if (!empty($rr) && count($rr) > 0) {
  30. $ctagid = $rr['id'];
  31. } else {
  32. $allfinish = true;
  33. }
  34. }
  35. if ($ctagid == 0 && $allfinish) {
  36. $reurl = '../a/tags/';
  37. ShowMsg("完成TAG更新!<a href='$reurl' target='_blank'>浏览TAG首页</a>", "javascript:;");
  38. exit;
  39. }
  40. $tag = $dsql->GetOne("SELECT * FROM `#@__tagindex` WHERE id='$ctagid' LIMIT 0,1;");
  41. MkdirAll($cfg_basedir . "/a/tags", $cfg_dir_purview);
  42. if (is_array($tag) && count($tag) > 0) {
  43. $dlist = new TagList($tag['tag'], 'taglist.htm');
  44. $dlist->CountRecord();
  45. $ntotalpage = $dlist->TotalPage;
  46. if ($ntotalpage <= $maxpagesize) {
  47. $dlist->MakeHtml('', '');
  48. $finishType = TRUE; // 生成一个TAG完成
  49. } else {
  50. $reurl = $dlist->MakeHtml($mkpage, $maxpagesize);
  51. $finishType = FALSE;
  52. $mkpage = $mkpage + $maxpagesize;
  53. if ($mkpage >= ($ntotalpage + 1)) $finishType = TRUE;
  54. }
  55. $nextpage = $pageno + 1;
  56. $onefinish = $nextpage >= $ntotalpage && $finishType;
  57. if (($upall == 0 && $onefinish) || ($upall == 1 && $allfinish && $onefinish)) {
  58. $dlist = new TagList('', 'tag.htm');
  59. $dlist->MakeHtml(1, 10);
  60. $reurl = '../a/tags/';
  61. if ($upall == 1) {
  62. ShowMsg("完成TAG更新!<a href='$reurl' target='_blank'>浏览TAG首页</a>", "javascript:;");
  63. } else {
  64. $query = "UPDATE `#@__tagindex` SET mktime=uptime WHERE id='$ctagid' ";
  65. $dsql->ExecuteNoneQuery($query);
  66. $reurl .= GetPinyin($tag['tag']);
  67. ShowMsg("完成TAG更新:[" . $tag['tag'] . "]!<a href='$reurl' target='_blank'>浏览TAG首页</a>", "javascript:;");
  68. }
  69. exit();
  70. } else {
  71. if ($finishType) {
  72. // 完成了一个跳到下一个
  73. if ($upall == 1) {
  74. $query = "UPDATE `#@__tagindex` SET mktime=uptime WHERE id='$ctagid' ";
  75. $dsql->ExecuteNoneQuery($query);
  76. $ctagid = 0;
  77. $nextpage = 0;
  78. }
  79. $gourl = "makehtml_taglist_action.php?maxpagesize=$maxpagesize&tagid=$tagid&pageno=$nextpage&upall=$upall&ctagid=$ctagid";
  80. ShowMsg("成功生成TAG:[" . $tag['tag'] . "],继续进行操作!", $gourl, 0, 100);
  81. exit();
  82. } else {
  83. // 继续当前这个
  84. $gourl = "makehtml_taglist_action.php?mkpage=$mkpage&maxpagesize=$maxpagesize&tagid=$tagid&pageno=$pageno&upall=$upall&ctagid=$ctagid";
  85. ShowMsg("成功生成TAG:[" . $tag['tag'] . "],继续进行操作...", $gourl, 0, 100);
  86. exit();
  87. }
  88. }
  89. }