ECshop目录型url需要解决的问题(通用解决方法)
2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家
论坛里有兄弟说搞过目录型url,刚好,我昨天也开始在帮一哥们搞目录型url,为备忘,现在我把ecshop目录型url的实现方法和必须要解决的地方记录下来,和大家一起来分享交流下。 此目录型url需要实现: 产品分类:域名/产品分类名 或 域名/产品分类名/ 产品:域名/产品分类名/产品名.html 文章分类:域名/文章分类名 或 域名/文章分类名/ 文章:域名/文章分类名/文章名.html 其他页面和有参数的产品分类页面保留原来ecshop的伪静态方式。 经过分析,本问题需要解决以下几个方面的问题: 1,页面里的所有图片、链接、js、css的相对地址全部需要改为绝对地址,例如: <a href="index.php"><img src="themes/default/logo.jpg"></a>需要改为<a href="http://xxx.xx.com/index.php"><img src="http://xxx.xx.com/themes/default/logo.jpg"></a> <link href="themes/default/style.css" rel="stylesheet" type="text/css" />需要改为<link href="http://xxx.xx.com/themes/default/style.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="js/common.js"></script>需要改为<script type="text/javascript" src="http://xxx.xx.com/js/common.js"></script> 2,解决了图片、链接、js、css的相对地址转换为绝对地址之后,还需要解决ajax调用地址的问题,例如 域名/产品分类名/产品名.html这个页面,如果不调整ajax调用地址,那么必然会有找不到地址的错误 3,js里的所有类似location.href=url跳转的,所有相对地址也都要调整为绝对地址 4,‘域名/产品分类名’ 向 产品分类ID映射的问题 5,由于“域名/产品分类名”和“域名/文章分类名”以及“域名/产品分类名/产品名.html”和“域名/文章分类名/文章名.html”url规则的一致性,采用apache的重写规则来实现伪静态是不可能的,因此采用从$_SERVER['PATH_INFO']着手实现伪静态,即:把所有找不到的地址都重定向到一个“调度器”dispatcher,在调度器里分析$_SERVER['PATH_INFO'],从而加载不同的页面。这个类似于MVC模式里面的“单一入口”文件。 5,build_uri函数的修改 以上列的几点,是实现ecshop目录型url必须要解决的问题,和具体的url规则、目录级数无关,只要解决了这几点问题,那么什么样的目录型url都可以轻松搞定。 |
回答:
不需要那么复杂。只要写好了规则.直接 /themes/default/logo.jpg 引用就客气.使用绝对地址。移植性太差.特别是生成真静态 |
不需要那么复杂。只要写好了规则.直接 /themes/default/logo.jpg 引用就客气.使用绝对地址。移植性太差.特别 ... 图片、css、js的地址是可以通过重写规则来实现的,不过js程序里的ajax动态地址和js跳转地址通过重写规则就实现不了了。 我的方法是个通用方法,不会影响移植性。等搞完了我会分享下我的实现方法。 |
这样会有很多好处? |
目录型多seo比较友好,同意3楼,如果换个域名路径都要换N多 |
个人觉得过于复杂的url 会加重服务器负担! 而且作为中文站 完全没有必要过分强调URL 特别是针对百度 当然外贸站应该考虑! |
有没有必要就没有考虑太多了,这个是用户的需求,照着需求来做就行了。如果是英文站目录型的url还是比较优雅的,中文的感觉就多余了。 |
目录型URL演示地址: http://app.megiga.com/nature/index.php |
的确不错,好东西 等待分享 呵呵 |
目录型URL的绝佳的演示地址>>>>http://ecshop.topit.cn,可以自定义分类目录,可以自定义商品url,拼音或英语拼写都可以,其实想实现这个,很简单,后台分类管理那,可加几个设置: 一,分类处加下一个分类路径的设置: 二、分类处还可以加一个分类模板的设置可以实现不同的分类不同的模板 三、商品管理处,增加一个ajax自定义商品url的东西: 四、最后增加前台的路径前加加上$url前缀,$url=$ecs->url(); ecshop的强大就在这里,灵活多变,就OK了 |
目录型多seo比较友好,同意3楼,如果换个域名路径都要换N多 我这个绝对路径是自动生成的,只需要在config.php里面定义域名就行了。 |
支持一个 |
最近更新
常用插件
- ecshop二次商品订购人信息
ecshop二次商品订购人信息填写插件,有时候给朋友送花,或者是送礼品的...
- ecshop二次开发详细页面生
插件介绍: ECSHOP系统,在很多时候,很多商品没有人购买,不但购买的人...
- ecshop分类批量扩展插件
ecshop分类批量扩展插件,这个插件是ecshop插件里面比较核心的插件。我们...
- ecshop商品分类名称增加样
ecshop插件介绍:本插件可以方便在后台管理,为ecshop商品分类名称增加样...
- ecshop2.7.1打印发货单插件
ecshop2.7.1打印发货单插件介绍:ecshop2.7.1和以前的ecshop版本不一样,ecs...
ecshop热门问答
ecshop热门资料
ecshop标题
ecshop拖动
ecshopECSHOP设置
ecshopadmin
ecshoppay_status
ecshop留言板问题
ecshop水平线
ecshop团购产品
ecshop聘请
ecshoptaobaomall
ecshop触屏
ecshoppath
ecshop简洁
ecshop失效
ecshop伪静态规则
ecshop品牌列表
ecshope
ecshopzoom
开网店
ecshopdigg顶一下
ecshop行业
ecshop服务期
ecshop伦敦时间
ecshop招网站运营专员或团队
ecshop购物车中没有商品
ecshop感叹号
ecshopjustify
ecshop文章随意调用
ecshop企业网站欣赏
ecshop分成管理