redbeed/taggly

This package is abandoned and no longer maintained. No replacement package was suggested.

A modern port of the old CodeIgniter Taggly library.

1.5.3 2016-02-19 11:30 UTC

This package is not auto-updated.

Last update: 2020-08-19 05:04:26 UTC


README

Taggly is a modern port of the old CodeIgniter Taggly library by Gavin Vickery. Packaged with a service provider and facade for Laravel, this package is totally framework agnostic and will help you to generate tag clouds just like the cool kids. Note, styling the cloud is up to you!

Usage

First you must add the service provider to to config/app.php under providers

Watson\Taggly\TagglyServiceProvider::class

And under aliases:

'Tag' => 'Watson\Taggly\TagFacade',

Now you must publish the assets:

php artisan vendor:publish

You can specify the connection in the taggly config file.

config/taggly.php

Overview

First, let's look at what makes up a tag in Taggly. A tag is made up of 3 things:

  • the tag name
  • the number of times it occurs, or it's weight
  • the path it should link to (optional)

You can either use an associative array or a Watson\Taggly\Tag object to represent a single tag. Here is how you represent a tag as an associative array:

$tag = array('tag' => 'Laravel', 'count' => 4, 'url' => 'https://www.laravel.com');

Simply passing this array to a new Tag object to use an object instead.

$tag = new Watson\Taggly\Tag($tag);

Once you have a collection of tags, you can pass them to Taggly and generate a cloud.

$taggly = new Watson\Taggly\Taggly;
$taggly->setTags([$tag1, $tag2, ...]);

echo $taggly->cloud();

You can also just pass the tags to the cloud() method, which is great if you're using the facade too.

Tag::cloud($tags);