博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ecshop:商品分类页和文章分类页添加自定义分类title,不填为空时默认为当前分类名称...
阅读量:5875 次
发布时间:2019-06-19

本文共 4115 字,大约阅读时间需要 13 分钟。

1.修改数据库:修改表:ecs_category

ALTER TABLE `ecs_category` ADD `cat_title` VARCHAR( 255 ) NOT NULL AFTER `cat_desc` ;

2.打开后台模板文件 admin/templates/category_info.htm

(1)查找第135行:

     <tr>

        <td class="label">{$lang.keywords}:</td>

        <td><input type="text" name="keywords" value='{$cat_info.keywords}' size="50">

        </td>

      </tr>

     在它上面增加

<tr>

<td>{$lang.SeoCategoryTitle}:</td>

<td>

<input type="text" name="cat_title" value='{$cat_info.cat_title}' size="50">

</td>

</tr>

(2)打开/languages/zh_cn/admin/category.php

 在代码最后加上:$_LANG['SeoCategoryTitle'] = '自定义Title';

 

(3)继续打开文件 admin/category.php, 查找下面代码:

$cat['cat_desc']     = !empty($_POST['cat_desc'])     ? $_POST['cat_desc']           : ”;

总共能找到两处:102行和261行,在每处的后边添加代码

$cat['cat_title']     = !empty($_POST['cat_title'])     ? $_POST['cat_title']           : ”;

 

3.下面来修改前台程序文件 /category.php

(1)找到416行:

return $GLOBALS['db']->getRow('SELECT cat_name, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ' . $GLOBALS['ecs']->table('category') .

        " WHERE cat_id = '$cat_id'");

将之修改为

return $GLOBALS['db']->getRow('SELECT cat_name, cat_title, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ' . $GLOBALS['ecs']->table('category') .

        " WHERE cat_id = '$cat_id'");

 

(2)继续找到331行

$smarty->assign('page_title',       $position['title']);

将之修改为

$page_title_dafault=$cat['cat_name'];

$page_title_info=$cat["cat_title"];

$smarty->assign('page_title',       ($cat['cat_title']=='') ? $page_title_dafault : $page_title_info);

 

 

+++++++++++++++++++++修改文章标题+++++++++++++++++++++++++++

1. 首先我们来修改数据库结构,给数据表 ecs_article_cat  增加一个字段 “page_title”

进入ECSHOP后台》数据库管理》SQL查询,输入下面SQL语句,并提交。这里要注意数据表前缀,我这里使用的是模板前缀ecs。

ALTER TABLE `ecs_article_cat` ADD `page_title` VARCHAR( 255 ) NOT NULL

2. 修改后台模板和程序

(1)打开  /admin/templates/articlecat_info.htm 找到

<tr>

    <td class="label">{$lang.sort_order}:</td>

在它前面增加如下的代码段

<tr>

    <td class="label">{$lang.SeoPageTitle}</td> <td>

      <input type="text" name="page_title" value="{$cat.page_title|escape}" size="50" />

    </td>

  </tr>

 

(2)打开/languages/zh_cn/admin/category.php

 在代码最后加上:$_LANG['SeoPageTitle'] = '自定义Title';

(3)接着打开 /admin/articlecat.php

$sql = "INSERT INTO ".$ecs->table('article_cat')."(cat_name, cat_type, cat_desc,keywords, parent_id, sort_order, show_in_nav)

           VALUES ('$_POST[cat_name]', '$cat_type',  '$_POST[cat_desc]','$_POST[keywords]', '$_POST[parent_id]', '$_POST[sort_order]', '$_POST[show_in_nav]')";

修改为

$sql = "INSERT INTO ".$ecs->table('article_cat')."(cat_name, cat_type, cat_desc,keywords, parent_id, sort_order, show_in_nav,page_title)

           VALUES ('$_POST[cat_name]', '$cat_type',  '$_POST[cat_desc]','$_POST[keywords]', '$_POST[parent_id]', '$_POST[sort_order]', '$_POST[show_in_nav]','$POST[page_title]')";

 

继续,将

$sql = "SELECT cat_id, cat_name, cat_type, cat_desc, show_in_nav, keywords, parent_id,sort_order FROM ".

           $ecs->table('article_cat'). " WHERE cat_id='$_REQUEST[id]'";

修改为

$sql = "SELECT cat_id, cat_name, cat_type, cat_desc, show_in_nav, keywords, parent_id,sort_order,page_title FROM ".

           $ecs->table('article_cat'). " WHERE cat_id='$_REQUEST[id]'";

 

继续向下将

if ($exc->edit("cat_name = '$_POST[cat_name]', cat_desc ='$_POST[cat_desc]', keywords='$_POST[keywords]',parent_id = '$_POST[parent_id]', cat_type='$cat_type',

sort_order='$_POST[sort_order]', show_in_nav = '$_POST[show_in_nav]'",  $_POST['id']))

 

修改为

if ($exc->edit("cat_name = '$_POST[cat_name]', cat_desc ='$_POST[cat_desc]', keywords='$_POST[keywords]',parent_id = '$_POST[parent_id]', cat_type='$cat_type',

sort_order='$_POST[sort_order]', show_in_nav = '$_POST[show_in_nav]',page_title='$_POST[page_title]'",  $_POST['id']))

 

3.修改文章列表页前台程序

 

打开 article_cat.php 文件

找到84行

$meta = $db->getRow("SELECT keywords, cat_desc,cat_name FROM " . $ecs->table('article_cat') . " WHERE cat_id = '$cat_id'");

修改为:

$meta = $db->getRow("SELECT keywords, cat_desc,cat_name,page_title FROM " . $ecs->table('article_cat') . " WHERE cat_id = '$cat_id'");

 

找到93行

$smarty->assign('keywords',    htmlspecialchars($meta['keywords']));

在它下面增加一行代码

$cat_title_dafault=htmlspecialchars($meta['cat_name']);

$cat_title_info=htmlspecialchars($meta['page_title']);

$smarty->assign('page_title',    ($meta['page_title']=='') ? $cat_title_dafault : $cat_title_info);

 

这样就OK了~

转载地址:http://kbzix.baihongyu.com/

你可能感兴趣的文章
丢包补偿技术概述
查看>>
PHP遍历文件夹及子文件夹所有文件
查看>>
WinForm程序中两份mdf文件问题的解决
查看>>
【转】唯快不破:创业公司如何高效的进行产品研发管理
查看>>
Spark RDD、DataFrame原理及操作详解
查看>>
程序计数器、反汇编工具
查看>>
Android N: jack server failed
查看>>
007-Shell test 命令,[],[[]]
查看>>
关于Linux系统使用遇到的问题-1:vi 打开只读(readonly)文件如何退出保存?
查看>>
pandas 按照某一列进行排序
查看>>
在WPF中如何使用RelativeSource绑定
查看>>
Map的深浅拷贝的探究
查看>>
XSLT语法 在.net中使用XSLT转换xml文档示例
查看>>
如何将lotus 通讯簿导入到outlook 2003中
查看>>
WinForm 应用程序中开启新的进程及控制
查看>>
前端工程师的职业发展路线在哪?
查看>>
IOS 内存警告 Memory warning level
查看>>
[转]PAC Manager: Ubuntu 上强大的 SSH 帐号管理工具,可取代 SecureCRT_Miracle_百度空间...
查看>>
顺序容器 (2)string类型操作
查看>>
转载:我最近的研究成果(IGeometry.Project and IGeometry.SpatialReference)
查看>>