我想创建一个标签云,我想知道基于什么参数我应该这样做。
另外,我不希望总是显示相同的顶部标签,那么大型网站如何处理这个问题呢?
我有一个包含项目的表,一个包含标记(只是标记id和标记文本)的表和另一个用于规范化的表,其中每个项目和标记之间的关系都有一行。
我认为WordPress的实现是一个很好的实现,具有很好的灵活性(在PHP中)。请查看wp_tag_cloud()的文档中的参数对象:
- 最小 -最小的标签(最小计数)显示为8
- 最大 -最大标签(最高计数)显示为22
- unit -将'pt'(点)描述为最小和最大值的字体大小单位
- number -最多显示45个标签
- format -以平面样式(以空格分隔)显示标签
- separator -显示标签之间的空白
- orderby -按名称排序标签
- order -对标签按ASCENDING顺序排序
- exclude -不包含标签
- include -包含所有标签
- *topic_count_text_callback* -使用函数default_topic_count_text
- 链接 -查看
- 分类法 -使用post标签作为云 的基础
- echo -回显结果
以下面的代码为例:
<?php $args = array(
'smallest' => 8,
'largest' => 22,
'unit' => 'pt',
'number' => 45,
'format' => 'flat',
'separator' => "n",
'orderby' => 'name',
'order' => 'ASC',
'exclude' => null,
'include' => null,
'topic_count_text_callback' => default_topic_count_text,
'link' => 'view',
'taxonomy' => 'post_tag',
'echo' => true ); ?>