有网友来问他用tags循环出来的tag标签如何才能显示每个的数量,去翻看官方手册就会发现pbootcms的tags标签循环默认不带单个tag的数量调用,这种情况就只能自己去二开支持了,下面来讲下如何操作。
教程步骤
打开修改文件:/apps/home/controller/ParserController.PHP
1、找到这段代码(有两处),在下方添加新代码
$tags = implode(',', $rs); // 把栏目tags串起来
添加后
$tags = implode(',', $rs); // 把栏目tags串起来
$tagsArrSum = array_count_values(explode(',', $tags)); // @mk-tags_one_sum 把所有tags组成数组并计算每个值得数量
2、找到这段代码在下方位置,添加新的判断,具体位置看截图
case 'text':
$one_html = str_replace($matches2[0][$j], $this->adjustLabelData($params, $value['tags']), $one_html);
break;
添加后
case 'text':
$one_html = str_replace($matches2[0][$j], $this->adjustLabelData($params, $value['tags']), $one_html);
break;
case 'sum':
$sum = $tagsArrSum[$value['tags']]; // @mk-tags_one_sum
$one_html = str_replace($matches2[0][$j], $sum, $one_html);
break;
3、上面修改后,前台就读了个sum标签,具体使用如下
{pboot:tags scode=6 target=tag}
<li><a href="[tags:link]"><p title="[tags:text]">[tags:text]</p><font><span>([tags:sum])</span></font></a></li>
{/pboot:tags}
效果截图:
这样就搞定了,不过慢慢的你会发现个bug,我后台文章状态选择了关闭,他的tag怎么也被调用出来了,右侧显示1个的时候点击进去就会显示无数据。这个问题打开这篇文章参考操作修复PbootCMS文章状态为关闭时tag标签依旧显示问题,增加文章状态判断。