齐博标签非常强大,可以让不懂程序的你,轻松就能实现所见即所得.

下面跟大家讲解一下,最复杂的运用, 同时使用了union 动态变量参数 与 分页处理标签

比如下面这张图,不仅仅想调用圈子,还想同时调用每个圈子里边的贴子, 当然,你还可以更变态的,同时调用圈子的图片或其它更多的东西都是完全可以的.

更变态的做法,你还可以调用跟贴子相关联的其它数据,也是可以的.

按照传统写PHP代码的处理方法,同时获取,那数据量一大,肯定会卡死.

而在这里,这切,都是通过异步获取数据,所以你完全不用担心效率的问题. 每一块都是单独的加载数据,也不影响用户体验.

实现效果图如下,点击可以查看大图

代码如下:

  1. <div class="pc_qun">
  2. {qb:tag name="pc_index_showquntest1" type="qun" rows="6" order="view" by="desc"}
  3. <h2>圈子名称: <a href="{$rs.url}" target="_blank">{$rs.title}</a></h2>
  4. <div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>
  5. {/qb:tag}
  6. </div>
  7. <div class="list_label_bbs" style="display:none;">
  8. {qb:tag name="label_listbbs" type="bbs" union="ext_id" rows="6"order="id" by="desc"}
  9. <a href="{$rs.url}" target="_blank">{$rs.title}</a><br>
  10. {/qb:tag}
  11. </div>
  12. <script type="text/javascript">
  13. $(document).ready(function () {
  14. $(".pc_qun .listbbs").each(function(){
  15. show_qun_bbs($(this));
  16. });
  17. });
  18. function show_qun_bbs(that){
  19. var page = 1;
  20. var id = that.data("id");
  21. $.get("{qb:url name='label_listbbs' /}" + page + "&ext_id="+id , function(res){
  22. if(res.code==0){
  23. that.html(res.data);
  24. }
  25. });
  26. }
  27. </script>

第一段代码,就是页面布局代码

  1. <div class="pc_qun">
  2. {qb:tag name="pc_index_showquntest1" type="qun" rows="6" order="view" by="desc"}
  3. <h2>圈子名称: <a href="{$rs.url}" target="_blank">{$rs.title}</a></h2>
  4. <div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>
  5. {/qb:tag}
  6. </div>

其中

  1. <div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>

这个就是关键之处, 这里就是显示更多贴子的. 你可以更变态的做法, 还可以在他下面一行添加类似的数据,显示相关联的图片 或者是其它更多的相关联数据.

抛开这一行,其它都是之前讲的标签没什么区别.


这里有两个关键的class类,大家不要忽略 class="pc_qun" 与 class="listbbs" 后面的JQ查找元素要用到

另一个关键点就是data-id="{$rs.id}" 这个就是后面的JQ要用到,去取哪个圈子ID的贴子数据.

所以上面这三个关键点,就是他跟普通标签不一样的地方.这里特别要使用到的.


接着再讲解另一段代码,
截图中多了 class="list_label_bbs" 这个类,其实没用到,下面的代码,就省去讲解这个类了

  1. <div style="display:none;">
  2. {qb:tag name="label_listbbs" type="bbs" union="ext_id" rows="6"order="id" by="desc"}
  3. <a href="{$rs.url}" target="_blank">{$rs.title}</a><br>
  4. {/qb:tag}
  5. </div>

这个跟普通标签有一点小区别,主要体现:
其中要包含一个隐藏DIV元素style="display:none;" (题外话:这个是方便你不用写JS模板,同时也方便SEO, 当然更关键的是为了后面的标签数据对应)
也就是说这里的标签必须是隐藏的.因为这里并不是真实用到的数据.只是用这个模子而已.

这里用到的标签名 name="label_listbbs" 跟下面的标签分页 变量名是对应的.必须一样 {qb:url name='label_listbbs' /}

这一段代码,你可以理解为就跟之前说的获取显示更多分页数据,没太大区别.

这里的关键之处,就是使用了动态变量参数 union="ext_id" 这个就是关键中的关键

其它地方,对照JS就不难理解了


这段话的意思,就是查找 圈子容器里pc_qun 里边的 listbbs元素 ,然后执行一个函数 show_qun_bbs 显示贴子. 这些都是前端JS相关的东西.

  1. $(document).ready(function () {
  2. $(".pc_qun .listbbs").each(function(){
  3. show_qun_bbs($(this));
  4. });
  5. });

下面这段,其实跟之前讲解的标签加载更多分页内容没什么区别的. 关键就是有一个动态参数ext_id= 获取到的是动态变量, 另外分页就总是取第一页, 你可以改一下JS,就可以显示更多页的数据.

  1. function show_qun_bbs(that){
  2. var page = 1;
  3. var id = that.data("id");
  4. $.get("{qb:url name='label_listbbs' /}" + page + "&ext_id="+id , function(res){
  5. if(res.code==0){
  6. that.html(res.data);
  7. }
  8. });
  9. }

复制

注意,以上是对圈子的讲解.同样的道理,你可以用在其它地方相关联的数据调用.比较调取用户数据.

齐博x1标签实例:标签的嵌套用法,调用聚合数据的更多相关文章

  1. 齐博x1文本代码标签的使用

    文本标签虽然简单,但是使用的地方确实非常多的. {qb:tag name="XXXX" type="text"}推荐新闻{/qb:tag} 类似这种使用的频率是 ...

  2. 齐博x1内容评论标签的风格制作

    评论的标签如下: {qb:comment name="xxxxx" rows='5'} HTML代码片段 {/qb:comment} 评论涉及到的元素有{posturl} 这个是代 ...

  3. 齐博x1动态改变标签调用不同频道的数据

    标签默认需要设置标签参数 type 指定调用哪个频道的数据,比如下面的代码,需要默认指定商城的数据, {qb:tag name="qun_pcshow_shop001" type= ...

  4. 齐博x1当前URL标签

    当前URL标签 {:get_url('location')} 当前URL的二维码标签 {:urls('index/qrcode/index')}?url={:urlencode(get_url('lo ...

  5. 齐博x1.3通用栏目名称及参数调用接口

    对于全站的频道可以使用下面的方法取出相应的栏目名称及参数http://qb.net/index.php/cms/wxapp.sorts.html注意,只需要把qb.net换成你的域名,cms 换成其它 ...

  6. 齐博x1到底是怎么的存在?

    齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. 系统已经对接好QQ.微信登录,同 ...

  7. 齐博X1到底是个什么鬼?

    什么是齐博/齐博CMS之X1? 齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. ...

  8. 最近无聊搭建一个齐博X1的下载页面

    https://layui.wanxiangsucai.com/ 用layui官方镜像站的模版 改了个齐博X1的下载页面 https://x1.wanxiangsucai.com/ 哈哈哈!!! 还有 ...

  9. 齐博x1齐博首创钩子的使用方法

    齐博X1有两套钩子体系,第一套是基于TP思路设计的.跟外面的大同小异.现在重点讲一下第二套我们首创的使用方法. 首先说一下如何埋钩子,这个跟TP思路的钩子类似,就是在页面的任何地方加入如下代码即可如下 ...

随机推荐

  1. 暑期 2021 参与社区:新一代工作流调度——Apache DolphinScheduler

    在众多企业都在进行数字化转型的大背景下,大数据.人工智能等行业有着十分广阔的前景,其发展也可谓如火如荼.发展过程中这其中当然离不开数据采集.数据流通和数据价值挖掘等各种环节,而各环节的打通需要一个坚实 ...

  2. LuoguP1799 数列_NOI导刊2010提高 (动态规划)

    $ f[j]=max(f[i−1][j],f[i−1][j−1]+(x == j) $ #include <iostream> #include <cstdio> #inclu ...

  3. Redis 05 集合

    参考源 https://www.bilibili.com/video/BV1S54y1R7SB?spm_id_from=333.999.0.0 版本 本文章基于 Redis 6.2.6 Set 中的值 ...

  4. Git 04 项目搭建

    参考源 https://www.bilibili.com/video/BV1FE411P7B3?spm_id_from=333.999.0.0 版本 本文章基于 Git 2.35.1.2 创建工作目录 ...

  5. Vue3 Transition 过渡效果之切换路由组件

    复习作用域插槽 组件可以被插入些许节点作为其子节点,插槽<slot>就是一个接口(或桥梁)引导这些节点进入组件.这些节点应该被渲染到组件里的具体哪个位置,就是具名插槽的作用.就像是给手机冲 ...

  6. Excelize 发布 2.2.0 版本, Go 语言 Excel 文档基础库

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  7. CF1204E Natasha, Sasha and the Prefix Sums (卡塔兰数推理)

    题面 题解 把题意变换一下,从(0,0)走到(n,m),每次只能网右或往上走,所以假设最大前缀和为f(n),那么走的时候就要到达但不超过 y = x-f(n) 这条线, 我们可以枚举答案,然后乘上方案 ...

  8. 【Java】学习路径55-练习:制作一个聊天室(多线程、UDP、双向传输数据)

    创建四个类,实现双向聊天的功能. 接收线程: import java.io.IOException; import java.net.*; public class ReceiveThread imp ...

  9. 一篇文章带你掌握主流数据库框架——MyBatis

    一篇文章带你掌握主流数据库框架--MyBatis MyBatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射. 在之前的文章中我们学习了MYSQL和JDBC,但是这些东西远远不 ...

  10. SpringBoot源码学习1——SpringBoot自动装配源码解析+Spring如何处理配置类的

    系列文章目录和关于我 一丶什么是SpringBoot自动装配 SpringBoot通过SPI的机制,在我们程序员引入一些starter之后,扫描外部引用 jar 包中的META-INF/spring. ...