hpolthof/tagcloud

PHP Tag Cloud composer package Implementation of http://lotsofcode.github.io/tag-cloud/
169 4
Install
composer require hpolthof/tagcloud
Latest Version:v4.0.2
PHP:>=5.4.0
License:MIT
Last Updated:Jul 7, 2015
Links: GitHub  ·  Packagist
Maintainer: hpolthof

tagcloud

PHP Tag Cloud composer package Implementation of http://lotsofcode.github.io/tag-cloud/

PHP Tag Cloud

v4.0

Installation

Use composer

composer require hpolthof/tagcloud
Basic usage
$cloud = new TagCloud();
$cloud->addTag("tag-cloud");
$cloud->addTag("programming");
echo $cloud->render();
Convert a string
$cloud->addString("This is a tag-cloud script, written by Del Harvey. I wrote this tag-cloud class because I just love writing code.");
Adding multiple tags
$cloud->addTags(array('tag-cloud','php','github'));
Removing a tag
$cloud->setRemoveTag('github');
Removing multiple tags
$cloud->setRemoveTags(array('del','harvey'));
More complex adding
$cloud->addTag(array('tag' => 'php', 'url' => 'http://www.php.net', 'colour' => 1));
$cloud->addTag(array('tag' => 'ajax', 'url' => 'http://www.php.net', 'colour' => 2));
$cloud->addTag(array('tag' => 'css', 'url' => 'http://www.php.net', 'colour' => 3));
Set the minimum length required
$cloud->setMinLength(3);
Limiting the output
$cloud->setLimit(10);
Set the order
$cloud->setOrder('colour','DESC');
Set a custom HTML output
$cloud->setHtmlizeTagFunction( function($tag, $size) {
	$link = '<a href="'.$tag['url'].'">'.$tag['tag'].'</a>';
	return "<span class='tag size{$size} colour-{$tag['colour']}'>{$link}</span> ";
});
Outputting the cloud (shown above)
echo $cloud->render();

More usages on in a prettier format can be found here: http://lotsofcode.github.com/tag-cloud

Tests

To run the unit test suite:

cd tests
curl -s https://getcomposer.org/installer | php
php composer.phar install
./vendor/bin/phpunit lotsofcode/TagCloud/TagCloud.php

Submitting pull requests

Indentation style, size and encoding should be followed as per .editorconfig settings.

Related Packages

arg/tagcloud

PHP Tag Cloud composer package Implementation of http://lotsofcode.github.io/tag...

1,944 9
lithiumdev/laravel-tagcloud

A Laravel package for generating tag clouds.

27,058 7
unisharp/laravel-taggable

Handle with independent tables or in on table

33 3
arcanedev/seo-helper

SEO Helper is a framework agnostic package that provides tools & helpers for SEO...

477,151 331
cviebrock/eloquent-taggable

Easy ability to tag your Eloquent models in Laravel.

749,160 569