如果是用的动态url则不存在这个分页问题!主要是设置伪静态后,在构成分页时,那里的传URLRULE仍然是原来默认你设置的栏目的url规则!所以我们在构造筛选的同时,也要重新构造url规则!参考房产信息列表可知分类信息模型里,官方已经给我们写好了一个重新构造url规则的方法!makeurlrule();
当时打开这个方法看的时候,就可以其实归根到底,还是一个get_url()的方法出了问题!
因此我们打开global.func.php这个文件!找到get_url()这个方法!你就会发现,这里取得的url始终是动态的,即便你设置了伪静态,这里取得url也一样是动态的!因些,我们要对这个方法进行修改!下进我贴上代码!
/** * 重写取得当前页面的完整URL地址,支持取得伪静态URL 4am 2015_07_21 伪静态分页错误 887921 */ function get_url() { $sys_protocal = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://'; $host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''; //判断重写是Apache还是ISAPI_Rewrite环境 if($_SERVER['REDIRECT_QUERY_STRING'] || $_SERVER['REDIRECT_URL']){ //Apche环境 return $sys_protocal.$host.$_SERVER['REDIRECT_URL']; }else if($_SERVER['HTTP_X_REWRITE_URL']){ //ISAPI Rewrite环境 return $sys_protocal.$host.$_SERVER['HTTP_X_REWRITE_URL']; }else{ //取得动态url $php_self = $_SERVER['PHP_SELF'] ? safe_replace($_SERVER['PHP_SELF']) : safe_replace($_SERVER['SCRIPT_NAME']); $path_info = isset($_SERVER['PATH_INFO']) ? safe_replace($_SERVER['PATH_INFO']) : ''; $relate_url = isset($_SERVER['REQUEST_URI']) ? safe_replace($_SERVER['REQUEST_URI']) : $php_self.(isset($_SERVER['QUERY_STRING']) ? '?'.safe_replace($_SERVER['QUERY_STRING']) : $path_info); return $sys_protocal.$host.$relate_url; } }
最后要注意的就是,在模板中调用的时候,一定要加用urlrule
本站声明:本站所有好东西均来源于互联网,不保证100%完整、不提供任何技术支持,分享目的仅限于学习和测试,一切商业行为与本站无关,下载后请在24小时内删除。请勿用于商业用途,如需商业使用请向官方购买授权,由于使用该资源引起的侵权行为与本站无关!如有侵权,请联系winnerzyy#vip.qq.com(将#换为@)及时删除!
最新评论
非常不错