Beispiel #1
0
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;
}
Beispiel #2
0
/**
 * //获取栏目页路径
 * 
 * @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;
}
Beispiel #3
0
 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 . '篇专题&nbsp;当前:' . $ii . '/' . $totalpages . '页&nbsp;';
         $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> &gt; <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('恭喜您,专题列表页已经生成完毕!');
     }
 }