你现在的位置:首页 > PHP网站建设知识库 > ecshop > 正文

实现ecshop后台自定义商品页title的功能

为了让网站在搜索引擎上有更好的排名,我们打算在echsop后台实现自定义每个商品详情页的title的功能, 应该怎么做呢?

\

下面就来讲一讲具体的修改方法:
注:以下是基于“未进行过任何修改的 ecshop2.7.2 代码 +  官方默认模板” 基础上讲解的。

第1步: 修改数据库结构,其实就是增加个字段

进入 后台 》数据库管理 》SQL查询   ,
在输入框里输入下面SQL语句,并点击“提交查询”


ALTER TABLE `ecs_goods` ADD `goods_title` VARCHAR( 150 ) NOT NULL DEFAULT '' AFTER `goods_name` 

第2步:
修改后台模板文件  /admin/templates/goods_info.htm
找到 <table width="90%" id="general-table" align="center">

在它下面增加一行代码
<tr><td class="label">自定义商品页面TITLE</td><td><input type="text" name="goods_title" value="{$goods.goods_title|escape}" size="50" /></td></tr>

 第3步:
修改后台程序文件 /admin/goods.php
找到
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, " .

修改为(注意一共能搜到两处,每处都要修改)
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_title, goods_name_style, goods_sn, " .


继续找到 "VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .

修改为(注意一共能搜到两处,每处都要修改) "VALUES ('$_POST[goods_name]','$_POST[goods_title]', '$goods_name_style', '$goods_sn', '$catgory_id', " .

继续搜索找到下面代码
"goods_name = '$_POST[goods_name]', " .

将它修改为
"goods_name = '$_POST[goods_name]', goods_title='$_POST[goods_title]'," .

第4步:

修改ECSHOP前台商品程序文件,
打开  /goods.php  文件
找到
$smarty->assign('page_title',          $position['title']);                    // 页面标题

修改为
$page_title=!empty($goods['goods_title']) ? $goods['goods_title'] : $position['title'];
  $smarty->assign('page_title',          $page_title);                    // 页面标题

 最后,别忘了到后台清除缓存。

此时,我们进入后台,来使用这个功能。