Tagadelic
Bèr Kessels - June 9, 2005 - 22:00
Tagadelic is a small module, without any databases, or configuration, that generates a page with weighted tags. The cool thing is that by merely altering font sizes, these lists suddenly gain a dimension.
Tagadelic offers various ways to add terms and vocabularies in one tag cloud. By using the urls, you can create your own clouds pages.
It also offers a sideblock for each taxonomy tree.
Because examples are cooler to look at then PHP or ugly ASCIIart READMEs, we want your implementation of tagadelic. Please post it in a comment to this project.
We are testing a really nice third-party feature-request system. Please use FeVote to vote for- or add, your favorite Tagadelic features
Related modules
- tagadelic_views: Views implementation
- community_tags: Allows members of the community to tag other users' content.
Releases
| Official releases | Date | Size | Links | Status | |
|---|---|---|---|---|---|
| 6.x-1.2 | 2008-Dec-31 | 19.98 KB | Download · Release notes | Recommended for 6.x | |
| 5.x-1.0 | 2008-Feb-10 | 16.75 KB | Download · Release notes | Recommended for 5.x | |
| 4.7.x-2.0 | 2006-Nov-15 | 9.67 KB | Download · Release notes | Recommended for 4.7.x | |
| Development snapshots | Date | Size | Links | Status | |
|---|---|---|---|---|---|
| 6.x-1.x-dev | 2008-Dec-31 | 19.98 KB | Download · Release notes | Development snapshot | |
| 5.x-1.x-dev | 2008-Aug-15 | 18.4 KB | Download · Release notes | Development snapshot | |

folktunes.org is tagadelic (example)
http://folktunes.org/tags
All tags are input with free-tagging, but structured in main categories:
http://folktunes.org/artists
http://folktunes.org/songs
http://folktunes.org/instruments
etc...
Tagadelic rocks.
Good Stuff...
I think the the readme file needs more information on how to setup this module.
Anyway after a few searches I was well on my way:
http://blog.photos2view.com/tagadelic-drupal.htm
Maybe the setup steps that can be included in the readme file are:
1 Upload the .module and the .css file to your modules folder
2 Activate the module from admin>modules
3 Activate the block if you want
4 or use a php snippet from http://wiki.bryght.com/tags/tagadelic-module to display in a page.
marcopolo ---
Blog | Photography | Best Designed Drupal Websites | Share Trading | Forex Trading |
Tagadelic:displaying all category/vocabulary tags in one block.
<?phpdrupal_set_html_head('<style type="text/css">@import url('.drupal_get_path('module','tagadelic').'/tagadelic.css);</style>');
$vocs[] = 3; // id of the vocabulary of which you want to display a tag cloud
$output = theme('tagadelic_weighted',tagadelic_get_weighted_tags($vocs));
print $output;
?>
This PHP snippet from bryght.com only displays tags from one particular vocabulary. Anyone know how I display all tags from all vocabularies in a block? Seems like it should be simple but I can't figure it out.
Thanks
Edit: I figured it out. $vocs[] needed to be initialized as an array with all the vocabulary numbers listed like so:
$vocs[] = 1;
$vocs[] = 2;
$vocs[] = 3; etc....
One line
You can do it on one line like this:
$vocs = array(1,2,3,4,5,6,7,8,9); // or whatever vocabularies you wantcheck this tags out:
check out my implementation: http://www.onlinestreet.de/tags/
超级喜欢..
超级喜欢..
According to
According to http://babelfish.altavista.com
this means
either "Super likes" or "Super? Happiness?"
marcopolo ---
Without babelfish, I can
Without babelfish, I can tell you that it means: "I like this module very much". :)
Cool module: that's exactly what I was looking for. I'm going to use it with wechange.
thanks.
--
http://www.reuniting.info/
Healing with Sexual Relationships.
http://www.wechange.org/
We live in a world of solutions.
www.senserely.com
An example on Senserely.com using tags in the whole vocabulary plus tags in the content. Works very well so far! Thank you.
People, places, topics...
Thanks a lot. :)
http://www.wechange.org/tagadelic ,
http://www.wechange.org/tagadelic/people ,
http://www.wechange.org/tagadelic/places ,
http://www.wechange.org/tagadelic/topics .
--
http://www.reuniting.info/
Healing with Sexual Relationships.
http://www.wechange.org/
We live in a world of solutions.
Rss reader
Helo
http://cuckarnia.bzzz.net/tagadelic
Cuckarnia is an rss reader of few sites around bzzz and indymedia, 95% Polish language content. Made on aggregator2 and still 4.6
___
Obin.org - Independent media workshop
I just needed to
I just needed to say...
Thanks !!!
The module works perfect...
---
Visit...
http://mysoul.go.dyndns.org
My soul...
Find your other... half !
thanks for this module!! my
thanks for this module!!
my website: http://www.digitalreise.de
Great module!!
I've found putting them in the primary menu is a great way to offer a sitemap.
http://www.7gen.com/tagadelic/chunk/1
http://www.7gen.com/tagadelic/chunk/3
http://energy-healing.info/tagadelic/chunk/7
http://energy-healing.info/tagadelic/chunk/5
http://energy-healing.info/tagadelic/chunk/2
http://energy-healing.info/tagadelic/chunk/6
- David Herron - http://7gen.com/
SynthWise uses tagadelic in a simple way
Just finished updating a new theme for an existing site.
It uses tagadelic in a very simple way:
SynthWise Tags
There is only one vocab, and everything on the site is identified by /tag/thing - makes for an easy structure, easy pathauto and all that.
So there's another one!
Cheers for the fabuloso module.
Chapman
This looks great but....
How do you get it to display on the main page?
Depends on what you mean by main page
You can set your drupal frontpage to be /tagadelic in the settings, or if you want to get fancy you can use the frontpage.module (or your own theme trickery or one of the many other neato-front modules) to add this call to whatever makes your frontpage happen:
theme('tagadelic_weighted', tagadelic_get_weighted_tags(array($vocabulary->vid))));If you're doing this by hand, you'll want to replace $vocabulary->vid with the ID number of your tagging vocab.
------
Personal: Outlandish Josh
Professional: Chapter Three
Tagadelic in Drupal 5.0
I converted the module and am using it in my newly redesigned 5.0 site:
http://ryan.grinhost.net
Free Parkour Uses Tagadelic
Free Parkour uses tagadelic.
See how Free Parkour uses tagadelic in a simple way.
Conscious Manifestations
http://cmanifestations.net
Hey guys, I'm using the
Hey guys, I'm using the following snippet to include tags in my page.tpl.php file
<?phpdrupal_set_html_head('<style type="text/css">@import url('.drupal_get_path('module','tagadelic').'/tagadelic.css);</style>');
$vocs[] = 3; // id of the vocabulary of which you want to display a tag cloud
$output = theme('tagadelic_weighted',tagadelic_get_weighted_tags($vocs));
print $output;
?>
is it possible to add some code there to make it respond to SORT order preferences I set in my module. Right now it only sorts by WEIGTH, but I would prefer sorting by title or random...
Pakfriet.be
Up and running @ http://adverlicio.us
Great tool ~ thanks for creating and sharing it.
http://adverlicio.us/tagadelic
------------------
adverlicio.us | online advertising archive
Powered by Drupal
livbit.com
One of my website uses the tagadelic module...
www.livbit.com
Another Example...
I'm using it on my site, Aggdata
This is the one of the best
This is by far one of the best modules for Drupal
http://www.opensourcefriends.com - Ask the simple questions.
tag sort order problem... and solution
When tags are using non 7bits chars, they are not sorted correctly.
In tagadelic.module, I made the following change to _tagadelic_sort_by_title in order to use mbstring to sort tags correctly (it works at least for french tags):
Maybe iconv could be used there.
Function "to7bit" comes from php.net.
/**
* @args string $text line of encoded text
* string $from_enc (encoding type of $text, e.g. UTF-8, ISO-8859-1)
*
* @returns 7bit representation
*/
function to7bit($text,$from_enc) {
if (isset($from_enc))
$from_enc = mb_detect_encoding($text,"auto");
$text = mb_convert_encoding($text,'HTML-ENTITIES',$from_enc);
$text = preg_replace(
array('/ß/','/&(..)lig;/',
'/&([aouAOU])uml;/','/&(.)[^;]*;/'),
array('ss',"$1","$1".'e',"$1"),
$text);
return $text;
}
/**
* callback for usort, sort by count
*/
function _tagadelic_sort_by_title($a, $b) {
if (extension_loaded('mbstring'))
return strnatcasecmp(to7bit($a->name), to7bit($b->name));
else
return strnatcasecmp($a->name, $b->name);
}
Some more Tagadelic examples
Hi!
We use Tagadelic for some of our websites.
1. Informationsarchiv.net - http://www.informationsarchiv.net/
The site contains a news-section that uses tags as categories. The tag-cloud could be found at the index page.
2. Witze-Fun.de - http://www.witze-fun.de/
The site is one of the biggest joke-databases in germany. All jokes are parsed into tags automatically. The results are very good because it's easy to detect nouns in german. The generated tag-cloud could be found at the index page.
YATE - Yet another tagadelic example
I wanted to show this site as an example of Drupal 5 and tagadelic working flawlessly together.
Opal Myth Tags
Great module!
I just want to show how great is this module. My tags: Tagadelic at sipiblog.hu
Keep working, you may release the final for the 5.0!
Wonderfull tag-clouds
I just implemented it as part of a 404 page. Great! Perhaps some users would like the ability to use separators between tags, though.
Gradient Colors for different vocabularies
I am using different vocabularies in my page, and I wanted to:
Here's my website with the example: q14.net
Here's the code (use it for custom block):
<?php
$tags = array();
$styles = array();
$gradients = array();
// color gradients, from dark to bright
array_push($gradients, array('003300', '336633', '339933', '66cc66', '99ff99' ));
array_push($gradients, array('000033', '003366', '333399', '6666cc', '9999ff' ));
array_push($gradients, array('330000', '663300', '993333', 'cc6666', 'ee9999' ));
array_push($gradients, array('000000', '333333', '666666', '888888', '999999' ));
array_push($gradients, array('003333', '336666', '339999', '669999', '99cccc' ));
$color_counter = 0;
foreach(taxonomy_get_vocabularies() as $voc) {
foreach(tagadelic_get_weighted_tags(array($voc->vid)) as $tag) {
array_push($tags, $tag);
}
// set css
$css_out.=".t_number{ color: #999}";
for($i = 0; $i <= 10; $i++) {
$val = 0.7+$i/10;
$css = ".t".$voc->vid."_".$i." {font-size : ".$val."em }";
$css .=" .t".$voc->vid."_".$i.":link, .t".$voc->vid."_".$i.":visited { color: #".$gradients[$color_counter][count($gradients[$color_counter])-1].";}";
$css_out .= $css; // css should be in head actually
if(($i > 1)&&($i % 2 == 0)&& (count($gradients) > 0)) array_pop($gradients[$color_counter]);
}
$color_counter++;
}
print '<style type="text/css">'.$css_out.'</style>'."\n";
$tags = tagadelic_sort_tags($tags);
// own output method (not using tagadelic_theme()!!)
$output = '<span class="t_number">';
foreach ($tags as $term) {
$output .= ''.l($term->name, taxonomy_term_path($term), array('class' => "t".$term->vid."_".$term->weight));
$output .= '('.$term->number_of_posts.')'." \n";
}
$output .= '</span>';
print $output;
?>
Excellent module and a great snippet!
Excellent module and a great snippet!
Thanks much!
firstov.com
allcraftsonline.com
Free Language
Free Language uses tagadelic:
Learn Arabic
Learn Cantonese
Learn English
Learn French
Learn German
Learn Hindi
Learn Italian
Learn Japanese
Learn Mandarin Chinese
Learn Portuguese
Learn Russian
Learn Spanish
Blog Entry Tags
Web Feed Tags
Feed Sources Tags
New site using tagadelic
This is a great plugin! Keep up the good work.
Gamer Chicks Rule!
http://www.gamerchicksrule.com/content/
http://www.gamerchicksrule.com/content/tagadelic
Other site with module
http://www.bestplacesofworld.com
Tagadelic and Gview module
Two new sites using tagadelic
http://www.vgeek.com
http://www.3dlinux.com
Tagadelic Block Sorting in Drupal 5.1
I've created a custom block to display a tag cloud using this code:
<?php$vocs = array(1,3);
$output = theme('tagadelic_weighted',tagadelic_get_weighted_tags($vocs));
print $output;
?>
The tags it displays are not able to sort by title, currently only by weight. Anyone have any ideas why this won't let me sort the tags by title? I've set it to sort by title in the Taxonomy settings page. Is this a bug that hasn't been fixed yet for Tagadelic module for Drupal 5.1?
panduan dot org is tagadelic
was easy to set up - tho a simple instruction in the readme.txt will be helpful for complete newbies.
http://panduan.org/
Raja Iskandar Shah
Consulting for Malaysian Business
www.norazilaco.biz
another website using
another website using tagadelic. thanks.
www.zhulu.de
Abduzeedo
This is not my site but has a very cool implementation of this module.
http://www.abduzeedo.com
Stock implementation
I only display it in for my blog on my site, that may change if I get some time to play with it some more. It does what I want for now :)
Thanks for the nice module.
I will use it for my little
I will use it for my little site, so i'm curious about how stable it work.
Very good but problem with unpublished nodes
I have a little problem:
Can Tagadelic show only Tags from Nodes with the status "published"? Because it shows all Tags even those from unpublished nodes.
Seconded
I second this request. I'm writing a blog and thought a tag cloud would make a great addition to the homepage. Unfortunately, I constantly create unpublished nodes to brainstorm in and work through to finished posts. As I write I add tags to the keywords category. Unfortunately these tags now appear in my tag cloud, but when clicked on return a page saying that there are no posts in this category.
Anything that can be done as far as the URL goes to make tagadelic ignore unpublished nodes?
Check issue queue
There's an issue for this, please check that out and post suggestions/patches there.
---
paul byrne
paul.leafish.co.uk | www.leafish.co.uk
Another example...
Tagadelic module works perfect!! Thanks a lot!!
politeh.ridne.net - website of the students' union of Lviv Polytechnic National University (Ukraine)
Hi Tyler Which version of
Hi Tyler
Which version of the tagadelic module are you using?
Many thanks
Dan
Hi, Dan! I think it's
Hi, Dan!
I think it's 4.6.x-1.x-dev
Here it is!
http://www.rockstarlove.com
Still working on some of the UI and color scheming.
It also uses Leech module with the Yahoo Terms plugin. I set up a cron to run every 30 min. to grab Rss Feeds from the top celeb gossip sites.
I think i need to tone down the pink a bit. ;)
Pretty cool me thinks.
Latte/
Tagadeic helps EMF Pollution Remediation
See the left sidebar of EMF Pollution & Remediation
Amnon
-
Professional: Drupal Israel | Drupal Search
Personal: Hitech Dolphin: Regain Simple Joy :)
Exclude rather than Include categories
Sometimes, as an admin, it's much easier to figure out (and easier to see) what you DON'T want in a tag cloud, as opposed to figuring out what you want included (and being left wondering if something isn't showing up just because it wasn't popular enough, or if there's something wrong with your code). For those few, here's a solution:
Put this in your template file:
<?php
/**
* Function based on tagadelic module, but customized for afterl use
* @param array $excluded_vids An array of vocabulary ids to not include in the output
* @param int $number_of_tags The number of tags to output. If not set, or set to 0, will default to global tagadelic settings
* @param int $steps The number of gradations from maximum popularity to lowest. If not set, or set to 0, will default to global tagadelic settings.
*/
function hottest_tags($excluded_vids = array(), $number_of_tags = 0, $steps = 0) {
//Let's fire off an error if the tagadelic module is not installed
if (!module_exist('tagadelic')) return t('The hottest tags function requires the tagadelic module.');
if (empty($number_of_tags)) $number_of_tags = variable_get('tagadelic_page_amount', '60');
if (empty($steps)) $steps = variable_get('tagadelic_levels', 6);
// query adapted from tagadelic module (tagadelic_get_weighted_tags)
// returns a result set ordered by count, of tags NOT in passed categories.
if (empty($excluded_vids)) {
$result = db_query_range('SELECT COUNT(*) AS count, d.tid, d.name, d.vid FROM {term_data} d INNER JOIN {term_node} n ON d.tid = n.tid GROUP BY d.tid, d.name, d.vid ORDER BY count DESC', 0, $number_of_tags);
}
else {
$result = db_query_range('SELECT COUNT(*) AS count, d.tid, d.name, d.vid FROM {term_data} d INNER JOIN {term_node} n ON d.tid = n.tid WHERE d.vid NOT IN ('.substr(str_repeat('%d,', count($excluded_vids)), 0, -1) .') GROUP BY d.tid, d.name, d.vid ORDER BY count DESC', $excluded_vids, 0, $number_of_tags);
}
//build weighting using tagadelic's built-in code
$tags = tagadelic_build_weighted_tags($result, $steps);
//sort the tags per global tagadelic settings
return theme('tagadelic_weighted', tagadelic_sort_tags($tags));
}
?>
then, make a new block (content type PHP), and put this in there:
<?php
/** The following variables can be left unset, if desired, and the defaults from the tagadelic module will be used */
/** @var array $excluded vids To exclude categories (vocabularies), set it like this: array(catID, catID, catID) */
$excluded_vids = array(1,2,3,4,5,6,7,8,346,350);
/** @var int $number_of_tags How many tags do you want in the output? */
$number_of_tags = 0;//0 means: Use the tagadelic module's setting
/** @var int $steps How many steps of gradation between most popular and least popular? */
$steps = 0;//0 means: Use the tagadelic module's setting.
print hottest_tags($excluded_vids, $number_of_tags, $steps);
?>
We're using this on afterellen.com to great effect. Thanks to all the contributors on here who got me started in the right direction.
Great site
and thanks for the code.
Thx, great code
Thx klktrk, you can see my tags block in my web
http://www.acebyte.com
-= ACEBYTE =-
hey klktrk, do you know a
hey klktrk,
do you know a way to create a tagcloud only with tags submitted by an user?
regards
Lausch
My blog use that module
Here it is - http://andyceo.ruware.com
Hello and thanx, from Russia, Ulyanovsk! :)
Display number of tags
I've altered a line in the module so that the number of tags appears when you rest your mouse (or focus on) a term in the tag cloud.
In tagadelic.module (I'm using Drupal 5, $Id: tagadelic.module,v 1.36.2.3 2007/03/13 09:58:31 ber Exp $) line 293:
$output .= l($term->name, taxonomy_term_path($term), array('class'=>"tagadelic level$term->weight") ." \n";Change it to this:
$output .= l($term->name, taxonomy_term_path($term), array('class'=>"tagadelic level$term->weight", 'title'=>"Number of posts with this tag: $term->number_of_posts")) ." \n";You should of course do this as a theme override function (see http://drupal.org/node/55126), and leave your tagadelic module alone! To do that you would put the whole theme function (found at line 287 in the module) in your template.php file. (change (your theme name here) to well, the name of your theme and no brackets!):
/*** theme function that renders the HTML for the tags
* @ingroup themable
*/
function (your theme name here)_tagadelic_weighted($terms) {
foreach ($terms as $term) {
$output .= l($term->name, taxonomy_term_path($term), array('class'=>"tagadelic level$term->weight", 'title'=>"Number of posts with this tag: $term->number_of_posts")) ." \n";
}
return $output;
}
Hope this useful
Great idea - would be even
Great idea - would be even better if it could become an option in the standard module
displaying number of posts
Thank you. You can also simply display the number of posts (without having to hover the mouse).
(This code is from version 4.7)
$output .= l($term->name, taxonomy_term_path($term), array('class'=>"level$term->weight")) ."(".$term->number_of_posts.") \n";Post count in 6.x
The relevant code for version 6.x can be found on tagadelic.module, line 311:
Change from:
$output .= l($term->name, taxonomy_term_path($term), array('attributes' => array('class' => "tagadelic level$term->weight", 'rel' => 'tag'))) ." \n";to
$output .= l($term->name, taxonomy_term_path($term), array('attributes' => array('class' => "tagadelic level$term->weight", 'rel' => 'tag'))) ." (".$term->number_of_posts.") \n";Cheers for an excellent and highly useful module!
https://www.charlesleaver.com
https://www.charlesleaver.com/
Real cool module, How can I
Real cool module,
How can I set the URL from /Tagadelic to /tag ?
I just want to make the URL more readable.
I am going to redesign my site http://www.you-xi-ji.com by drupalm
Thanks in advance.
URL aliases
Use the path module to add a URL alias from
tagadelic->tag---
paul byrne
paul.leafish.co.uk | www.leafish.co.uk
Many thanks Paul, it works
Many thanks Paul, it works now.
Problem
Tagadelic 6.x-1.x-dev Tagadelic makes weighted tag clouds from your taxonomy terms.
Depends on: Array (missing)
i don't install tagadelic. Why?
A couple of recent sites
A couple of recent sites I've done that use tagadelic:
Olympics in Beijing
Freestyle Language
unrev.org
Tagadelic caching
Hi All,
I was checking the CVS messages and comparing some checkins, and noticed that a caching solution was provided in version 1.38 (#78573 by arthurf, refer to http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/tagadelic/t... )
However, in the last released stable version 5.x-1.0 (2008-Feb-10), the module file version is 1.36.2.8, which doesnt seem to be having any caching.
Any idea which release has/will have caching for Drupal-5?
Regards,
Anshuman
Great module, thanks! Here
Great module, thanks! Here another example: Tags on StuQ.nl
---
StuQ.nl - Personal weblog
tags on GrowCleanAir.com
Grow Clean Air's Tags
unrev.org
Newbie with a small issue
Im new to this so be gentle. I have installed tagadelic, I have my Tags in Tags in the right nav bar.
Right now it looks like this
________________________________
Tags in Tags
more tags
_________________________________
Nothing is showing up. Now when i Click on more tags they show up there in the page, but not in the cloud.
Did i miss a step?
Using Drupal 6.2
Thanks - and quick question on tag cloud
Really liking this module. by any chance is there a way to have tagadelic generate a tagcloud from posts that don't have tags? I imagine it would look just at post titles perhaps and treat them as bags of words, discounting certain parts of speech, etc. Anyway, long shot but thought I'd ask. Great module either way.
tagadelic_views
I really want to use this module, but the View implementation in the tagadelic_vies module is drupal 5 only. How would I go about using tagadelic as a block without it?
simply use the blocs that
simply use the blocs that tagadelic create, you don't need views module to do a tag cloud block.
Tag cloud for certain category
Is it possible to restrict taxonomy terms in cloud by category of posts ?
( for example: articles have tags and categories.... a tag cloud for taxnomy terms used only in certain category >)