修改seo url中去掉产品id的方法(有更新)

用于收藏精华贴子、网友共享的资料等。可以回复,不能发新贴。

版主: Jack

版面规则
本版面不能发新贴,可以回复

修改seo url中去掉产品id的方法(有更新)

帖子shaning » 2011-05-26 18:07

以前用Ultimate SEO URLs模块 产品地址是这样的
http://www.xxx.com/产品名-p-101.html
通过下面方法我们改成这样的格式
http://www.xxx.com/产品名/

1.includes/init_includes/init_category_path.php(原先是includes/modules/pages/product_info/header_php.php 但不能引用到导航)
头部添加
if(zen_not_null($_GET['products_name'])){
$products_id_query=$db->Execute("select products_id from ".TABLE_PRODUCTS_DESCRIPTION.' where products_name="'.str_replace("-"," ",$_GET['products_name']).'"');
if($products_id_query->RecordCount()>0)
$_GET['products_id']=$products_id_query->fields['products_id'];
}
2.includes/classes/seo.url.php
约401行查找
$url = $this->make_url($page, $this->get_product_name($p2[1]), $p2[0], $p2[1], '.html', $separator);
替换为
$url = $this->make_url($page, $this->get_product_name($p2[1]),'', '', '/', '');

3..htaccess
查找
RewriteRule ^(.*)-p-(.*).html$ index\.php?main_page=product_info&products_id=$2&%{QUERY_STRING} [L]
替换为
RewriteRule ^(.*)\/$ index\.php?main_page=product_info&products_name=$1&%{QUERY_STRING} [L]


注意事项
1.产品名中不能出现- 可用空格来表示
2.产品名不能重复
3.类似后台admin这种的 必须要直接访问文件了 比如http://www.xxx.com/admin/index.php

-----------------------------更新分割线-----------------------------------------
有人问怎么样才能显示成 http://www.xxx.com/目录名/产品名/ 这样的方式
修改方法如下
1.includes/init_includes/init_category_path.php(原先是includes/modules/pages/product_info/header_php.php 但不能引用到导航)
头部添加
if(zen_not_null($_GET['products_name'])){
$products_id_query=$db->Execute("select products_id from ".TABLE_PRODUCTS_DESCRIPTION.' where products_name="'.str_replace("-"," ",$_GET['products_name']).'"');
if($products_id_query->RecordCount()>0)
$_GET['products_id']=$products_id_query->fields['products_id'];
}
2.includes/classes/seo.url.php
约401行查找
$url = $this->make_url($page, $this->get_product_name($p2[1]), $p2[0], $p2[1], '.html', $separator);
替换为
$url = $this->make_url($page, zen_get_categories_name_from_product($p2[1]).'/'.$this->get_product_name($p2[1]),'', '', '/', '');

3..htaccess
查找
RewriteRule ^(.*)-p-(.*).html$ index\.php?main_page=product_info&products_id=$2&%{QUERY_STRING} [L]
替换为
RewriteRule ^(.*)\/(.*)\/$ index\.php?main_page=product_info&products_name=$2&%{QUERY_STRING} [L]
注:这次后台就可以直接访问了 当然有两级目录的话就不行

--------------2011-7-31更新一个错误-------------------
原先不能引用导航 已经更新
头像
shaning
论坛版主
论坛版主
 
帖子: 1372
注册: 2005-10-29 17:22
地址: zencart定制深度修改等
QQ 帐号: 1 9 2 3 6 1 1 3

Re: 修改seo url中去掉产品id的方法

帖子chai19870227 » 2011-05-27 10:32

马上去试下
chai19870227
高级会员
高级会员
 
帖子: 126
注册: 2010-04-29 18:08
QQ 帐号: 383341509

Re: 修改seo url中去掉产品id的方法

帖子chai19870227 » 2011-05-27 10:49

你能把你的seo.url.php发下吗, 提示说没有$url = $this->make_url($page, $this->get_product_name($p2[1]),'', '', '/', $separator);这句
chai19870227
高级会员
高级会员
 
帖子: 126
注册: 2010-04-29 18:08
QQ 帐号: 383341509

Re: 修改seo url中去掉产品id的方法

帖子shaning » 2011-05-27 11:29

chai19870227 写道:你能把你的seo.url.php发下吗, 提示说没有$url = $this->make_url($page, $this->get_product_name($p2[1]),'', '', '/', $separator);这句

写错顺序了 已经修正
头像
shaning
论坛版主
论坛版主
 
帖子: 1372
注册: 2005-10-29 17:22
地址: zencart定制深度修改等
QQ 帐号: 1 9 2 3 6 1 1 3

Re: 修改seo url中去掉产品id的方法

帖子chai19870227 » 2011-05-27 20:14

不知道是不是不支持英文办的ZENCART 1.39h产品页面会是404错误 哪位成功的过来说下经验
chai19870227
高级会员
高级会员
 
帖子: 126
注册: 2010-04-29 18:08
QQ 帐号: 383341509

Re: 修改seo url中去掉产品id的方法

帖子kriz » 2011-05-28 10:09

遇到产品名字一样的产品怎么办呢?不就出错了?谁也无法确保产品名字绝对不会重复吧?
kriz
新手上路
新手上路
 
帖子: 9
注册: 2010-09-27 17:29

Re: 修改seo url中去掉产品id的方法

帖子shaning » 2011-05-30 12:34

kriz 写道:遇到产品名字一样的产品怎么办呢?不就出错了?谁也无法确保产品名字绝对不会重复吧?

既然想用这个方案 那就只能避免不要重复了
头像
shaning
论坛版主
论坛版主
 
帖子: 1372
注册: 2005-10-29 17:22
地址: zencart定制深度修改等
QQ 帐号: 1 9 2 3 6 1 1 3

Re: 修改seo url中去掉产品id的方法

帖子zhjhqk » 2011-06-03 10:29

学习一下,
zhjhqk
VIP会员
VIP会员
 
帖子: 396
注册: 2010-09-21 10:16

Re: 修改seo url中去掉产品id的方法

帖子Jason41 » 2011-06-09 12:34

不错,嘿嘿,那有办法目录也弄成这样的吗?期待中。。。
头像
Jason41
中级会员
中级会员
 
帖子: 62
注册: 2009-10-19 11:15
QQ 帐号: 1355581167

Re: 修改seo url中去掉产品id的方法

帖子jamesding88 » 2011-06-11 15:29

:lol:
头像
jamesding88
高级会员
高级会员
 
帖子: 100
注册: 2009-08-14 21:09
地址: BRISBANE QUEEMSLAND AUSTRALIA

下一页

  • 相关话题
    回复总数
    阅读次数
    最新文章

回到 精华共享



在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客

cron