typecho同一页面多次输出标签时标签输出数量参数为什么失效?
本文介绍了typecho同一页面多次输出标签时标签输出数量参数为什么失效?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
很喜欢typecho的简洁风格,自己把博客搬到typecho后,仿着别人的主题自己在弄一个主题。
现在遇到了问题,我在主页的导航栏用的是标签,输出12个标签(按标签下文章数量排序,文章最多的12个标签),最近加了个侧边栏并在侧边栏里加了标签云的效果,这儿输出30个标签(标签总数大于12个小于30个的),但无论怎么改参数,侧边栏的标签云输出的标签个数始终和导航栏标签数一致,好像用的是同一个输出。
我试着把侧边栏标签云的输出用的数组变量改名,改变不了数量,第二次引用的标签数总会和第一次引用的一样!不论第二次引用时limit数改为多少。请大侠帮看一下,php新手实在没找明白哪儿的问题。
代码如下:
<?php $this->widget('Widget_Metas_Tag_Cloud', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 12))->to($tags); ?>
<?php while($tags->next()): ?>
<li><a rel="tag" href="<?php $tags->permalink(); ?>" title="<?php $tags->name(); ?>"><?php $tags->name(); ?></a></li>
<?php endwhile; ?>
侧边栏:
<?php $this->widget('Widget_Metas_Tag_Cloud', 'ignoreZeroCount=1&limit=30')->to($tags); ?>
<ul>
<?php while($tags->next()): ?>
<li><a style="color: rgb(<?php echo(rand(0, 255)); ?>, <?php echo(rand(0,255)); ?>, <?php echo(rand(0, 255)); ?>)" href="<?php $tags->permalink(); ?>" target="_blank"><?php $tags->name(); ?></a></li>
<?php endwhile; ?>
解决方案
确实是这样的,你修改变量是没有用的。
在widget里加上@任意不同字符串即可
如:
<?php $this->widget('Widget_Metas_Tag_Cloud@abc', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 12))->to($tags); ?>
<?php while($tags->next()): ?>
<li><a rel="tag" href="<?php $tags->permalink(); ?>" title="<?php $tags->name(); ?>"><?php $tags->name(); ?></a></li>
<?php endwhile; ?>
<?php $this->widget('Widget_Metas_Tag_Cloud@def', 'ignoreZeroCount=1&limit=30')->to($tags); ?>
<ul>
<?php while($tags->next()): ?>
<li><a style="color: rgb(<?php echo(rand(0, 255)); ?>, <?php echo(rand(0,255)); ?>, <?php echo(rand(0, 255)); ?>)" href="<?php $tags->permalink(); ?>" target="_blank"><?php $tags->name(); ?></a></li>
<?php endwhile; ?>
这篇关于typecho同一页面多次输出标签时标签输出数量参数为什么失效?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文