之前发过一个有关“相关文章的内容”逐浪CMS Tags内容关键词设计优化方向讨论 https://bbs.z01.com/PItem?id=18453 [分享自逐浪CMS开发者社区社区]最近在使用过程当中,发现相关文章这块在使用过程当中依然有所不足。比如说“上格筑家”这个关键词吧。如果说超过了10条,或者超过了我们所预期的条数,那样式展示,或者优化效果可以达到我们的要求,如果没超过呢?比如说除了这条,再没有别的了那可能相关这里就没有别的内容了?这怎么办?在MVC当中,判断标签可以选择为空则,或者字段num<10 则怎么处理但是在逐浪CMSV8当中判断标签的使用却是条件比较不好符合的那怎么办呢?之前有一次我将CSS写法写进了标签设计当中这次我决定用JS来控制一下首先咱们先写一个正常的相关文章内容然后将标签引用{ZL.Label id=”相关文章列表带图简介输出” ShowNum=”10” TitleNum=”30” KeyWord=”0” Synnum=”100” /}根据我测试的文章,我得到了3条相关内容这样有点少,那怎么办?然后我再调用7个别的内容,并要求内容本文章内容不显示写标签这样我们会发现我们需要再调用几个内容成了问题,那如果根据第一个标签的结果来控制第二个结果呢?逐浪CMS四则运算,将四则运算用当shownum这里先写一个统计标签,统计第一个标签的文章数,这样得到了第一个标签的数后,我们用10减去这个数,剩下的就是第二个标签要显示的数了然后我们将四则运算带到第二个标签当中控制数据数目代码如下:{ZL:Calc(10-{ZL.Label id="相关文章列表带图简介输出统计数" KeyWord="@KeyWord" /},0)/}样式调整
{ZL:Calc(10-{ZL.Label id="相关文章列表带图简介输出统计数" KeyWord="@KeyWord" /},0)/}
<ul class="news-tumlist"> {ZL.Label id="相关文章列表带图简介输出" ShowNum="10" TitleNum="30" KeyWord="{SField sid="文章模型数据源标签" FD="Tagkey" page="0"/}" Synnum="100" /} </ul> <ul class="news-tumlist"> {ZL.Label id="整站文章列表带图简介输出" ShowNum="" TitleNum="30" KeyWord="{SField sid="文章模型数据源标签" FD="Tagkey" page="0"/}" Synnum="100" /} </ul>
上图
这样我们的问题是不是就完了?不是的当相关文章低于10的时候是正常的。可是当相关内容超过10的时候问题就来了{ZL:Calc(10-{ZL.Label id="相关文章列表带图简介输出统计数" KeyWord="@KeyWord" /},0)/}这段代码来控制数据数目会出现负值负值会调用出多少,我没有数,反正会很多那怎么办呢?我采用了JS来控制第二个标签
<div class="list-more"> <ul class="news-tumlist"> {ZL.Label id="整站文章列表带图简介输出" ShowNum="" TitleNum="30" KeyWord="{SField sid="文章模型数据源标签" FD="Tagkey" page="0"/}" Synnum="100" /} </ul> </div> <script> var num = {ZL.Label id="相关文章列表带图简介输出统计数" KeyWord="{SField sid="文章模型数据源标签" FD="Tagkey" page="0"/}" /} if(num < 10){ $(".list-more").show(); }else{ $(".list-more").hide(); } </script>
样式呈现没问题,但是多余的代码会进行隐藏处理这样我们就可以先这样用了样式网页https://weihai.3j99.cn/Item/8697
此贴算是一个半拉子工程吧,后面我就用数据标签的形式再尝试改一下。如果成功了,就分享出来,如果失败了,就请大神授技了
美得不胜收,这就是大约的工匠精神吧。
为负,就调用隐藏类,直接替补不就得了。代码是你可以好好用child
child
nth:child()
# 举例: p:nth-child(2) { background:#ff0000; }
重点不是样式呈现,是为负值时好像可以调用出数据数目为top10000 如果当内容为十个二十个的还好,如果为数目量大则服务器压力有点大。。目前我将第二个凑数的标签删了,不够10就不够10吧,等找到方法后再说
过度js依赖症,你这样不好。