有網(wǎng)友來(lái)問(wèn)他用tags循環(huán)出來(lái)的tag標(biāo)簽如何才能顯示每個(gè)的數(shù)量,去翻看官方手冊(cè)就會(huì)發(fā)現(xiàn)PbootCMS的tags標(biāo)簽循環(huán)默認(rèn)不帶單個(gè)tag的數(shù)量調(diào)用,這種情況就只能自己去二開(kāi)支持了,下面來(lái)講下如何操作。
教程步驟
打開(kāi)修改文件:/apps/home/controller/ParserController.php
1、找到這段代碼(有兩處),在下方添加新代碼
$tags = implode(',', $rs); // 把欄目tags串起來(lái)
|
添加后
$tags = implode(',', $rs); // 把欄目tags串起來(lái)
$tagsArrSum = array_count_values(explode(',', $tags)); // @mk-tags_one_sum 把所有tags組成數(shù)組并計(jì)算每個(gè)值得數(shù)量
|
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、上面修改后,前臺(tái)就讀了個(gè)sum標(biāo)簽,具體使用如下
{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}
|
效果截圖:
這樣就搞定了,不過(guò)慢慢的你會(huì)發(fā)現(xiàn)個(gè)bug,我后臺(tái)文章?tīng)顟B(tài)選擇了關(guān)閉,他的tag怎么也被調(diào)用出來(lái)了,右側(cè)顯示1個(gè)的時(shí)候點(diǎn)擊進(jìn)去就會(huì)顯示無(wú)數(shù)據(jù)。這個(gè)問(wèn)題打開(kāi)這篇文章參考操作
修復(fù)PbootCMS文章?tīng)顟B(tài)為關(guān)閉時(shí)tag標(biāo)簽依舊顯示問(wèn)題,增加文章?tīng)顟B(tài)判斷。