Discuz 任意位置调用友情链接的升级版
参考这个帖子的全站调用友情链接 https://tuyuanma.com/news_3348_1_1
只是不能分组调用,并且没有排序
于是改了下,方法比较笨,里面的CSS标签你自行替换成自己的- <!--{eval $flinks8 = DB::fetch_all("SELECT * FROM ".DB::table('common_friendlink')." WHERE `type`= '8' order by displayorder asc;");}-->
- <!--{if $flinks8}-->
- <div class="cell">
- <!--{loop $flinks8 $link8}-->
- <a href="<!--{$link8[url]}-->" title="<!--{$link1[description]}-->" style="font-size: 14px;" class="indent" target="_blank"><!--{$link8[name]}--></a>
- <!--{/loop}-->
- </div>
- <!--{/if}-->
- <!--{eval $flinks4 = DB::fetch_all("SELECT * FROM ".DB::table('common_friendlink')." WHERE `type`= '4' order by displayorder asc;");}-->
- <!--{if $flinks4}-->
- <div class="cell">
- <!--{loop $flinks4 $link4}-->
- <a href="<!--{$link4[url]}-->" title="<!--{$link4[description]}-->" style="font-size: 14px;" class="indent" target="_blank"><!--{$link4[name]}--></a>
- <!--{/loop}-->
- </div>
- <!--{/if}-->
- <!--{eval $flinks2 = DB::fetch_all("SELECT * FROM ".DB::table('common_friendlink')." WHERE `type`= '2' order by displayorder asc;");}-->
- <!--{if $flinks2}-->
- <div class="cell">
- <!--{loop $flinks2 $link2}-->
- <a href="<!--{$link2[url]}-->" title="<!--{$link2[description]}-->" style="font-size: 14px;" class="indent" target="_blank"><!--{$link2[name]}--></a>
- <!--{/loop}-->
- </div>
- <!--{/if}-->
- <!--{eval $flinks1 = DB::fetch_all("SELECT * FROM ".DB::table('common_friendlink')." WHERE `type`= '1' order by displayorder asc;");}-->
- <!--{if $flinks1}-->
- <div class="cell">
- <!--{loop $flinks1 $link1}-->
- <a href="<!--{$link1[url]}-->" title="<!--{$link1[description]}-->" style="font-size: 14px;" class="indent" target="_blank"><!--{$link1[name]}--></a>
- <!--{/loop}-->
- </div>
- <!--{/if}-->
复制代码
为什么要这样调用呢?发现type其实就是分组的id
但是他的逻辑是这样的
分组一二三四的id分别是8.4.2.1
这样分别查询数据库就能得到相应分组的链接
加上order by displayorder asc 就是从小到大排列,这样就能读取到后台的排列顺序了
不过
还有一个比较变态的是一个链接可以选择多个分组,那么dz是如何定义这多个分组id的呢?
它用了加法,也就是比如:链接1在分组三和分组四里面,那它的分组id也就是type就是 3
所以
这样上面的代码如果一个链接有多个分组就无法查询到,因为type=3
但是如果把4个分组相加的type都写出来又有点太多了
不知道有没有好的思路解决这个问题
相关阅读:
discuz 任意位置调用友情链接
|