很多cms 中有很多 标签, 商品标签 文章标签  列表标签  几十个标签, 让开发者头疼, 难记,  TPshop开发者考虑到这点, 用了一个万能标签, 开发者非常方便实用

TPshop万能标签只要记住这个标签全站可以通用

示例一

<tpshop sql="select * from `tp_article`  where cat_id = 5 order by article_id desc limit 4" item="v" key="k" >    
    <li><a href="">{$v['title']}</a></li>
</tpshop>

示例二

<tpshop sql="select * from `tp_goods_category` where `parent_id` = '$v[id]' limit 6" key="k2" item='v2'>
    <a class="list_big_o ma-le-30" href="{:U('Home/Index/goodsList',array('id'=>$v2[id]))}">{$v2['name']}<i>></i></a>                                    
</tpshop>

数组 '$v[id]' 形式, sql语句外面必须 双引号 要区分开来,  要写成 '$v[id]'  而不能写成 $v['id']   $v["id"] {$v[id]}   中括号[ ]里面不能有单引号 双引号 外面不能有 { } 大括号.

/*
如上例子看 传sql语句非常方便 可以任意灵活的写sql,  但需要注意 一点  thinkphp 里面标签 不能用特殊字符跟标签冲突,  比如
<tpshop sql="select * from `tp_goods` where `goods_id`  > 0 " key="k2" item='v2'> 注意这里的 goods_id  > 0 的 ">" 符号 
跟 thinkphp魔板标签的 <if>  <foreach> <tpshop> 冲突,  所以thinkphp 里面使用 字符替代 比如 <if condition="5 > 3" >  
写成 <if condition="5 gt 3" > 用gt 表示 > 大于号.   其他符号也一样  
gt 表示 >  大于
egt 表示 >=   大于等于
lt  表示 <   小于
elt 表示 <=  小于等于
上面语句改写成  <tpshop sql="select * from `tp_goods` where `goods_id`  gt 0 " key="k2" item='v2'>
在TPshop 3.1.3 起 加入了 t="3600" 参数,   t 表示针对这个标签设置的缓存时间 秒为单位  如果不指定默认使用 index.php 配置的 TPSHOP_CACHE_TIME 缓存时间,
*/

广告标签示例

<adv limit="5" item="v" pid="2">
                <li>
                    <a href="{$v.ad_link}" <if condition="$v['target'] eq 1">target="_blank"</if>>                       
                        <img src="{$v[ad_code]}" width="980" height="400"  title="{$v[title]}" style="{$v[style]}"/>
                    </a>
                </li>
               </adv>  
               limit 表示获取多少条   item  是遍历时的每一项元素, pid是广告位置id
               <img src="{$v[ad_code]}" 图片路径  title="{$v[title]}" 图片标题   style="{$v[style]}"/> 设置{$v[style]}在后台更换广告时
可以看到广告是半透明的效果, <if condition="$v['target'] eq 1">target="_blank"</if>表示点击广告时是否新窗口打开
新添加一个广告位很简单,pid自己写一个数据库中不存在的 会数据库自动插入一个广告位置。不需要手动添加,写pid时 最好以前缀
开头来区分, 比如 index.html首页广告位都一 100  101  102 ... 100开头
商品列表页面的广告id 都以 200 201  202 203 都以200开头, 这样广告位置才不容易混淆
然后后台可以预览点击更换广告。

TPshop标签的更多相关文章

  1. tpshop全局公共方法

    TPshop 全局公告函数库 前后台可用  这里只列出有哪些方法, 简单描述, 具体的函数体查看 Application\Common\Common\function.php 文件 <?php ...

  2. a标签点击跳转失效--IE6、7的奇葩bug

    一般运用a标签包含img去实现点击图片跳转的功能,这是前端经常要用到的东西. 今天遇到个神奇的bug:如果在img上再包裹一层div,而且div设置了width和height,则图片区域点击时,无任何 ...

  3. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  4. 百度MIP页规范详解 —— canonical标签

    百度MIP的规范要求必须添加强制性标签canonical,不然MIP校验工具会报错: 强制性标签<link rel="/^(canonical)$/"> 缺失或错误 这 ...

  5. 【CSS进阶】伪元素的妙用--单标签之美

    最近在研读 <CSS SECRET>(CSS揭秘)这本大作,对 CSS 有了更深层次的理解,折腾了下面这个项目: CSS3奇思妙想 -- Demo (请用 Chrome 浏览器打开,非常值 ...

  6. TODO:Laravel 使用blade标签布局页面

    TODO:Laravel 使用blade标签布局页面 本文主要介绍Laravel的标签使用,统一布局页面.主要用到到标签有@yield,@ stack,@extends,@section,@stop, ...

  7. 最新 去掉 Chrome 新标签页的8个缩略图

    chrome的新标签页的8个缩略图实在让人不爽,网上找了一些去掉这个略缩图的方法,其中很多已经失效.不过其中一个插件虽然按照原来的方法已经不能用了,但是稍微变通一下仍然是可以用的(本方法于2017.1 ...

  8. css-父标签中的子标签默认位置

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  9. xpath提取多个标签下的text

    title: xpath提取多个标签下的text author: 青南 date: 2015-01-17 16:01:07 categories: [Python] tags: [xpath,Pyth ...

随机推荐

  1. linux命令返回值的妙用

    什么是返回值 在shell终端中,你所输入的一切命令其实都有返回值,而这个返回值默认保存在"$?"中,举例看一下 [root@localhost ~]# touch [root@l ...

  2. linux命令(35):diff命令

    diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的 ...

  3. iOS应用管理(字典转模型)

    1. 新建appViewModel 1.1声明需要的属性 //NSString一般用copy来修饰 @property(nonatomic,copy)NSString *name; @property ...

  4. 转axios 的应用

    尤雨溪之前在微博发布消息,不再继续维护vue-resource,并推荐大家开始使用 axios . 一.axios 简介 axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP ...

  5. STM32——项目需求之低功耗的停机模式

    在说低功耗之前,先要明白一个东西,那就是stm32中的事件和中断. 事件是中断的触发源,开放了对应的中断屏蔽位,则事件可以触发相应的中断.在STM32中,中断与事件不是等价的,一个中断肯定对应一个事件 ...

  6. PHP数据库连接失败--could not find driver 解决办法

    数据库连接失败could not find driver在调试一个PHP程序时,报了这个错误, could not find driver 经过一番查找,结合自己的思考和实践,终于找到了问题所在. 原 ...

  7. OpenWRT中的按键和灯的GPIO控制实现_转

    本文转自:OpenWRT中的按键和灯的GPIO控制实现 基于BarrierBreaker版本,基于AR9331 AP121 Demo单板 来进行描述 1.灯 A.在mach-ap121.c中,定义了灯 ...

  8. 关于face alglimnment各种资料,存下来有空慢慢看

    人脸对齐和应用 机器学习--详解人脸对齐算法SDM-LBF 基于MTCNN的人脸自动对齐技术原理及其Tensorflow实现测试 人脸检测——MTCNN CVPR论文<Face Alignmen ...

  9. Knockout开发中文API系列4–绑定关键字

    目的 Visible绑定通过绑定一个值来确定DOM元素显示或隐藏 示例 <div data-bind="visible: shouldShowMessage"> You ...

  10. 【进阶修炼】——改善C#程序质量(4)

    46, 显示释放资源,需要实现IDisposable接口. 最好按照微软建议的Dispose模式实现.实现了IDisposable接口后,在Using代码块中,垃圾会得到自动清理. 47, 即使提供了 ...