jbouzekri/sculpin-tag-cloud-bundle

在Sculpin中生成标签云

1.2 2015-07-12 16:31 UTC

This package is auto-updated.

Last update: 2024-09-12 19:44:01 UTC


README

SensioLabsInsight

此捆绑包在Sculpin中生成标签云。

您可以在我的个人法语博客的右侧列中看到一个工作演示。

安装

使用composer,将依赖项添加到您的composer.json中

require: {
    "jbouzekri/sculpin-tag-cloud-bundle": "1.*"
}

然后运行composer update命令

启用此捆绑包。如果您已经有了app/SculpinKernel.php,请将其添加到其中,否则请创建文件并包含以下内容

<?php

class SculpinKernel extends \Sculpin\Bundle\SculpinBundle\HttpKernel\AbstractKernel
{
    protected function getAdditionalSculpinBundles()
    {
        return array(
            'Jb\Bundle\TagCloudBundle\JbTagCloudBundle'
        );
    }
}

然后您需要将标签云模板及其样式表添加到项目中

  • 将Resources/views/tag_cloud.html文件复制到源文件中的_includes文件夹
  • 将Resources/public/css/tag_cloud.css文件复制到源文件的css文件夹中(或者您可以直接将其内容添加到项目样式表中)。

使用

在模板中,您现在可以调用以下twig函数

{{ tag_cloud() }}

它将生成HTML标签云。

您可以指定一个自定义模板

{{ tag_cloud('my_template.html') }}

配置

jb_tag_cloud:
    tag_permalink: /tags/:taxon/index.html
    tag_entity: Jb\Bundle\TagCloudBundle\Model\Tag
    tag_cloud_entity: Jb\Bundle\TagCloudBundle\Model\TagCloud
    max_number: 0
    strategies:
        - jb_sculpin.tag_cloud.strategy.shuffle
        - jb_sculpin.tag_cloud.strategy.percent_size
  • jb_tag_cloud.tag_permalink : tag_cloud twig助手中使用的URL模式
  • jb_tag_cloud.tag_entity : 标签实体
  • jb_tag_cloud.tag_cloud_entity : 标签云实体
  • jb_tag_cloud.strategies : 用于操作标签云的服务列表。默认情况下,shuffle随机排列标签的顺序,percent_size根据标签出现的次数计算标签权重。
  • jb_tag_cloud.max_number : 当启用jb_sculpin.tag_cloud.strategy.max_number策略时使用,这将限制显示在云中的标签数量(如果为0,则显示所有标签)。这是全局的,并将应用于所有标签云。
  • jb_tag_cloud.alpha: 用于按字母顺序显示标签。可以与percent_size结合使用

许可证

MIT

此捆绑包受lotsofcodetag-cloud库的启发