在ECShop中自定义商品详情页的标题(title)是一个常见的需求,特别是在SEO优化方面,以下是几种方法:
1、修改数据库结构:
首先需要修改ECShop的数据库表结构,增加一个用于存储自定义标题的新字段,可以在ecs_goods
表中增加一个名为goods_title
的字段。
使用SQL语句进行修改:
ALTER TABLEecs_goods
ADDgoods_title
VARCHAR(255) NOT NULL AFTERgoods_name
;
2、修改后台模板文件:
打开后台模板文件admin/templates/goods_info.htm
,在适当位置添加输入框以允许用户输入自定义标题。
找到相应的代码段,并添加以下内容:
<tr> <td class="label">{$lang.goods_title}:</td> <td><input type="text" name="goods_title" value="{$goods_info.goods_title}" size="50"></td> </tr>
3、修改后台PHP文件:
打开后台PHP文件admin/goods.php
,在处理表单提交的部分添加对新字段的处理逻辑。
找到处理商品信息更新的代码段,并添加以下内容:
$goods['goods_title'] = !empty($_POST['goods_title']) ? $_POST['goods_title'] : '';
4、修改前台程序文件:
打开前台程序文件goods.php
,在查询商品信息时包含新字段。
找到查询商品信息的SQL语句,并修改为:
$sql = "SELECT g.goods_id, g.goods_name, g.goods_title, g.goods_desc, ... FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE g.goods_id = '$_REQUEST[goods_id]'";
在分配页面标题的地方,使用新字段的值(如果有的话),否则使用默认值。
$smarty->assign('page_title', $goods['goods_title'] ? $goods['goods_title'] : $position['title']);
通过上述步骤,可以在ECShop的商品详情页上成功添加自定义的TITLE,这不仅有助于提升网站的SEO效果,还能增强页面的专业性和用户体验。