function get_show_url($mid, $arrurl, $page) { if (C('url_html') && C('url_html_channel') && in_array($mid, array('video', 'info', 'special'))) { $showurl = C('web_path') . str_replace('index' . C('html_file_suffix'), '', get_show_url_dir($mid, $arrurl['id'], $page) . C('html_file_suffix')); } else { if ($page > 1) { $arrurl['p'] = '{!page!}'; } $showurl = str_replace('index.php?s=/Home/', 'index.php?s=', U('Home-' . $mid . '/lists', $arrurl, false, true)); if (C('url_rewrite')) { $showurl = str_replace('index.php?s=', '', $showurl); $showurl = str_replace(array("video/lists/id", "info/lists/id"), array('list', 'newslist'), $showurl); } elseif (!C('url_html')) { $showurl = str_replace('index.php', '', $showurl); } } return $showurl; }
/** * //获取栏目页路径 * * @param $mid 模型名称'video/info/special' * @param $arrurl 为数组参数传入参考U函数(方便动态模式直接生成),只有一个栏目ID参数时 $arrurl['id'] = $cid; * @param $page 分页数字,大于1时返回的URL带有分页跳转参数变量{!page!} * @return$showurl 栏目页url */ function get_show_url($mid, $arrurl, $page) { //静态模式&栏目静态 if (C('url_html') && C('url_html_channel') && in_array($mid, array('video', 'info', 'special'))) { $showurl = C('web_path') . str_replace('index' . C('html_file_suffix'), '', get_show_url_dir($mid, $arrurl['id'], $page) . C('html_file_suffix')); } else { //动态模式 if ($page > 1) { $arrurl['p'] = '{!page!}'; } $showurl = str_replace('index.php?s=/Home/', 'index.php?s=', U('Home-' . $mid . '/lists', $arrurl, false, true)); //echo $showurl.'<br>'; if (C('url_rewrite')) { $params = get_url_where(); $showurl = str_replace('index.php?s=', '', $showurl); $showurl = str_replace(array("video/lists/id", "info/lists/id"), array('list', 'newslist'), $showurl); switch ($mid) { case 'video': if (ACTION_NAME == 'search') { $showurl = str_replace('index.php?s=/Home/', 'index.php?s=', U('Home-' . $mid . '/lists', $arrurl, false, true)); } else { $showurl = str_replace(array('$id', '$page', '$wd', '$area', '$language', '$actor', '$director', '$year', '$letter', '$order'), array($arrurl['id'], '{!page!}', $params['wd'], $params['area'], $params['language'], $params['actor'], $params['director'], $params['year'], $params['letter'], $params['order']), C('rewrite_videolist')); } break; case 'info': $showurl = str_replace(array('$id', '$page'), array($arrurl['id'], $params['page']), C('rewrite_newslist')); break; case 'special': $showurl = str_replace(array('$id', '$page'), array($arrurl['id'], $params['page']), C('rewrite_speciallist')); break; default: break; } //$showurl = str_replace(array('$id','$page','$wd','$area','$language','$actor','$director','$year','$letter','$order','$sid'),array($arrurl['id'],$params['p'] ? $params['p'] : 1,$params['wd'],$params['area'],$params['language'],$params['actor'],$params['director'],$params['year'],$params['letter'],$params['order'],$params['sid']),C('rewrite_videolist')); $showurl .= C('url_html_suffix'); } elseif (!C('url_html')) { $showurl = str_replace('index.php', '', $showurl); } } return $showurl; }
public function specialshow() { $go = intval($_GET['go']); $this->checkhtml(C('url_html_channel'), '专题栏目', '?s=Admin/Html/Maps/go/' . $go); $list = F('_gxcms/channel'); $channel['limit'] = $list[999]['special']; //查询本类及小类共多少条数据 $rs = M("Special"); $where['status'] = array('eq', 1); $count = $rs->where($where)->count('id'); //计算出该栏目需要生成的总页数 $totalpages = ceil($count / $channel['limit']); if ($totalpages < 1) { $totalpages = 1; } //准备生成 echo '<div class="htmllist" id="show" style="font-size:12px;">'; echo '<li>网站专题共需要生成<span>' . $totalpages . '</span>页</li>'; for ($ii = 1; $ii <= $totalpages; $ii++) { //当前专题分页前台标签数组变量------------------------------------------------------------------- $pageurl = get_show_url('special', array('id' => $cid), 2); $pages = '共' . $count . '篇专题 当前:' . $ii . '/' . $totalpages . '页 '; $pages .= get_cms_page_css($ii, $totalpages, 5, $pageurl, false); $channel['page'] = $ii; $channel['pages'] = $pages; $channel['count'] = $count; if ($ii > 1) { $channel['webtitle'] = '专题列表-第' . $ii . '页-' . C('web_name'); } else { $channel['webtitle'] = '专题列表-' . C('web_name'); } $channel['navtitle'] = '<a href="' . C('web_path') . '">首页</a> > <span>专题列表</span>'; //先给bdlist标签传值后再生成模板 C('bdlist_page', $page); $this->assign($channel); $listdir = str_replace('{!page!}', $ii, get_show_url_dir('special', $cid, $ii)); //保存路径 $this->buildHtml($listdir, './', 'Home:special_list'); $specialurl = C('webpath') . $listdir . C('html_file_suffix'); //预览路径 echo '<li>专题列表第<span>' . $ii . '</span>页 <a href="' . $specialurl . '" target="_blank">' . $specialurl . '</a> 操作成功</li>'; } echo '</div><script>document.getElementById("show").style.display="none";</script>'; if ($go) { $this->assign("jumpUrl", C('cms_admin') . '?s=Admin/Html/Maps/go/' . $go); $this->success('专题列表已经生成完毕,正在准备生成网站地图,请稍等!'); } else { $this->assign("jumpUrl", C('cms_admin') . '?s=Admin/Html/Show'); $this->success('恭喜您,专题列表页已经生成完毕!'); } }