规则之树

杰奇cms,实现指定小说或类别不显示

这是今天一个朋友提过的,实际上更早之前就有人问过,不过我已经在QQ上回答了。最近博客真心不知道更新什么内容,毕竟工作太忙,下班也事情多,所以现在是能写几篇算几篇了【及其衰】。回到这个问题,其实很简单,如果细心的话可以发现杰奇官网的默认模板里面已经存在通过order排序的id来显示不同的样式,那么这里其实大部分字段都可以用在if的判断里面。

那么一般情况下,杰奇所有列表里面,小说ID调用的字段如下:

{?$articlerows[i].url_articleid?}

那么,比如要让ID为52的书籍不显示出来,那么就可以这样写:

{?if $articlerows[i].url_articleid == 52?}
这里留空,代表该ID小说不显示
{?else?}
这里写正常的调用代码,显示除此之外的其它小说
{?/if?}

同样的,调用小说分类ID的字段如下:

{?$articlerows[i].sortid?}

那么要让ID为8的分类下的所有小说不显示,就可以这样来。

{?if $articlerows[i].sortid == 8?}
这里留空,代表该分类ID下的小说不显示
{?else?}
这里写正常的调用代码,显示除此之外的其它小说
{?/if?}

这里我测试的版本是杰奇1.8,是能够成功筛选的,其它版本的话可能是不同的字段,反正写法是一样的。基本上就是和php的if判断差不多,然后利用一下&或者|之类的且或条件就行了。这个方法可以利用在小说模板的几乎全部页面,包括排行版,分类,还有首页调用小说模块的各种区块里面。

如果要更加复杂的循环,我举一个例子,同时禁止ID为52的小说,和分类ID为8的小说:

{?if $articlerows[i].url_articleid == 52?}
这里留空,代表该ID小说不显示
{?else if $articlerows[i].sortid == 8?}
这里留空,代表该分类ID下的小说不显示
{?else?}
这里写正常的调用代码,显示除此之外的其它小说
{?/if?}

就这样咯,说白了就是php加了一个模板引擎的处理而已。

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »