我们在进行织梦dedecms模板设计的时候,想实现类似于wordpress博客那样的tag标签,本博客就是用wordpress搭建的,像我博客边栏的tag那样,就是在显示tag的链接和tag名的同时,还能显示每个tag关联的文章的数量。如下图所示:
但是织梦默认没有这样的标签来调用,这就需要我们自己对系统文件进行修改来实现了,具体方法如下:
找到并打开/include/taglib/tag.lib.php这个文件,找到第87行左右的下面这句代码:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
在这行代码的下面添加如下代码:
$count = $dsql->GetOne("Select count(tid) as total From `dede_taglist` where tag = '".$row['tag']."'");
$row['count'] = $count['total'];
添加好后在模板的tag循环标签里面就可以通过[field:count/]来获取当前tag标签关联的文章数量了,完整示例如下:
{dede:tag sort='hot' getall='2'}
<ul>
<li><a title="[field:count/]篇文章" href="[field:link/]">[field:tag /]</a></li>
</ul>
{/dede:tag}
如果要在标签详情页显示,那么可以通过runphp的方式:
{dede:field name='title' runphp = 'yes' }
global $dsql;
$row = $dsql->GetOne("Select count(tid) as total From `dede_taglist` where tag = '".@me."'");
@me = $row['total'];
{/dede:field}
是不是很简单呢?赶紧去试试吧!