给商品信息页面添加一些tag关键词标签有利于谷歌的收录,也有利于关键词的SEO,实现这个功能并不难。其实就是给zencart添加一个功能模块,

具体方法是:

1,在mudules目录下面新建一个以模板当前模板名字为名的目录(已经有了就不用新建了),然后在该目录下面新建一个文件,命名为modules_tag.php。输入如下代码:

  1. $tag_sql="select metatags_keywords from ".TABLE_META_TAGS_PRODUCTS_DESCRIPTION." where ".
  2. "products_id=".(int)$_GET['products_id']." and language_id=".(int)$_SESSION['languages_id'];
  3. $tag=$db->Execute($tag_sql);
  4. $tags=array();
  5. if($tag->RecordCount()>0){
  6. $has_products_tags=true;
  7. $tags=explode(',', $tag->fields['metatags_keywords']);
  8. }

这里的功能就是获取关键词标签里面的关键词。

2,在当前模板的templates目录下面添加一个文件,命名为:tpl_module_tag.php。然后输入下面的代码:

  1. $has_products_tags=false;
  2. include(DIR_WS_MODULES . zen_get_module_directory('modules_tag.php'));
  3. ?>
  4. <?php if($has_products_tags) {?>
  5. <div id="tags">
  6. <strong><?php echo TEXT_TAGS?></strong>
  7. <?php foreach ($tags as $tag) {?>
  8. <span><a href="tag/<?php echo str_replace(' ', '+', trim($tag));?>"><?php echo trim($tag);?></a></span>
  9. <?php }?>
  10. </div>
  11. <?php }?>

这里的代码就是调用关键词,可根据自己的需要调整css.

3,给该标签的url写一个重写规则,因为这个标签其实是使用系统的查询功能,只不过查询的关键词被设置为商品的关键词。由于查询页面的URL比较长,不是很友好,所以有必要做个重写来达到友好的URL。
在根目录的.htaccess
文件中添加以下规则

RewriteRule ^tag/(.*)
index.php?main_page=advanced_search_result&search_in_description=1&keyword=$1
[L]

4,要看到效果请给商品添加关键词,在商品列表的右侧点击风火轮进入编辑。

 

zencart产品详细页面调用数据库显示tags标签的更多相关文章

  1. magento在产品详细页面添加分享链接的方法

    1,在产品详细页面的对用位置加入一下代码 <div class="sharethis_box">          <?php echo $this->ge ...

  2. 解决 ECSHOP v273 产品详情页面评论不显示的问题

    问题描述:   最近同事使用ECSHOP v273帮客户开发了一个商城系统,部署到服务器在测试的时候发现产品详情页面里测试的评论不显示,只显示了数量(其实是产品购买的次数)   因为同事搞了好长时间都 ...

  3. 如何修改magento产品详细页面的栏目

    magento默认模板里面的产品信息页面的布局是以两栏带右侧栏显示的,那么如何修改为两栏带左侧栏或者三栏.一栏的方式显示呢?下面教大家一种很简单的方法就可以实现.下面是默认的布局预览:

  4. 设置批量商品优惠、如何修改ZenCart产品显示图片的大小

    利用下面的方法,可以实现: 买一送一.买一件第二件5折.买三件优惠10%等功能. 管理页面 - 商品管理 - 价格管理 - (选择商品) - 编辑 - 添加空白折扣. 应用上面的办法,能够完成:买一送 ...

  5. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  6. zencart 具体页面调用规则: $body_code变量解析

    zencart $body_code变量解析 修改centerColumn 可以修改中间产品方框的大小 2.2.5 .BODY文件在这个文件生效 require($body_code) include ...

  7. ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  8. 使用PHP中的ajax做登录页面、验证用户名是否可用、动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  9. 14.ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

随机推荐

  1. 【CRC校验】学习笔记

    #include<stdio.h> unsigned ]= { 0x01,0x02,0x03,0x04,0x05,0x06 }; ] = { 0x0000, 0x1021, 0x2042, ...

  2. sqlserver 按日、周、月统计方法

    摘自于网络网络:http://blog.csdn.net/wanmdb/article/details/8080636 create table T(日期时间 datetime, 数量 int) in ...

  3. winsock编程select模型

    winsock编程select模型 网络服务端连接数量过多时,为每一个连接申请一个线程会让机器性能急剧下降(大多说是因为线程在用户态和内核态之间切换会占用大量的CPU时间片).为了解决多线程带来的性能 ...

  4. Calendar.getInstance()获取当天指定点上的时间[转载]

    ctoday.add(Calendar.DAY_OF_MONTH, 1); 明天时间 //获得当天0点时间public static int getTimesmorning(){Calendar ca ...

  5. UESTC 1217 The Battle of Chibi

    dp+树状数组优化. dp[i][j]表示以a[i]结尾,最长上升序列长度为j的方案数.dp[i][j]=sum{dp[k][j-1]} 其中k<i&&a[k]<a[i]. ...

  6. /usr 的由来及/usr目录结

    /usr 的由来及/usr目录结构   本文转自Delectat.com讨论中,大部分观点认为: usr 是 unix system resources 的缩写: usr 是 user 的缩写: us ...

  7. Intersect交集

    Description 设计一个求集合交的算法:输入集合A与集合B,求集合A与B之交.集合中的元素为整数(可以用c语言中的int表示),且互不相同. Input 输入第一行为一个整数t(0<t& ...

  8. js阻止浏览器默认事件

    1.阻止浏览器的默认行为 function stopDefault(e) { //如果提供了事件对象,则这是一个非IE浏览器 if(e && e.preventDefault) { / ...

  9. 关于Adobe CC 系列软件反复弹出 Adobe 软件许可问题

    最近装了falsh cc2014 版本,并结合网络提供资源破解(可参考:http://www.cnblogs.com/-yan/p/4450196.html) 但是,使用超过二十四小时后(时间为估计值 ...

  10. 拓扑序+dp Codeforces Round #374 (Div. 2) C

    http://codeforces.com/contest/721/problem/C 题目大意:给你有向路,每条路都有一个权值t,你从1走到n,最多花费不能超过T,问在T时间内最多能访问多少城市? ...