Jump to content
FJB - Forum Jual Beli Indonesia

Archived

This topic is now archived and is closed to further replies.

vbul

Animated Flash Tags Widget , Flash Tag Cloud

Recommended Posts

Installation

 

Goto Admincp->vBullietin CMS->Widgets->Create New Widget

Choose PHP Direct Execution as Widget's Type

Place a Title. eg Upcoming Events. Keep it short as this is what will appear as title on your pages.

Click Save

Click Configure on the right of the new created widget.

Remove the default code that appears. Be sure to not leave behind even a single letter.

Copy and Paste the code that you can find below.

Leave the template name as is (vbcms_widget_execphp_page)

Click Save

Goto Admincp->vBullietin CMS->Layout Manager

Click Go on the Default Layout

Add the Widget to your Layout

Click Save

Download the attached tagcloud.zip and extract it.

Upload tagcloud.swf to root directory of your vbulletin install

That's all !!

 

 

PHP Code

 

PHP Code:

 

 

$flashWidth  = 330;
$flashHeight = 330;
$flashPath = 'tagcloud.swf';
$flashBackgroundColor = 'ffffff';
$tagCount = 30;
$tagMaxSize = 16;
$tagMinSize = 8;

// Colors are in hex
$data['tcolor'] = '0x000000';
$data['tcolor2'] = '0x336699';
$data['hicolor'] = '0x000000';
$data['speed'] = 100;
$data['distr'] = 'true';
$data['mode'] = 'tags';

$contentTypes = array(2=>'tags.php?tag=',15=>'blog.php?tag=');

/* No Editing Below This Line*/

global $vbulletin;

// %d

$query = sprintf("SELECT Tag.tagid, Tag.tagtext, TagContent.contenttypeid, COUNT( TagContent.tagid ) AS count FROM ".TABLE_PREFIX."tag AS Tag LEFT JOIN ".TABLE_PREFIX."tagcontent AS TagContent ON ( Tag.tagid = TagContent.tagid ) GROUP BY TagContent.tagid ORDER BY count DESC LIMIT %d",$tagCount);

$qtags = vB::$db->query_read($query);

while($tag = vB::$db->fetch_array($qtags)) {
   $tags[] = $tag;
   $tagSize[$tag['tagtext']] = $tag['count'];
}

// largest and smallest array values
$maxQty = max(array_values($tagSize));
$minQty = min(array_values($tagSize));

$spread = $maxQty - $minQty;
if ($spread == 0) {
       $spread = 1;
}

$step = ($tagMaxSize - $tagMinSize) / ($spread);

// make the tag cloud
$tagsHTML  = "";
foreach ($tags as $tag)
{
   $size = round($tagMinSize + (($tag['count'] - $minQty) * $step));
   $text = $tag['tagtext'];

   $url = $vbulletin->options['homeurl'].'/'.$contentTypes[$tag['contenttypeid']].urlencode($tag['tagtext']);
   $tagsHTML .= "$text";
}

$data['tagcloud'] = ''.$tagsHTML.'';

$flashVars = "";

foreach($data as $var=>$val)
{
   $flashVars .= (empty ($flashVars))?'':'&';
   $flashVars .= "$var=".urlencode($val);
}

ob_start();
?>


$content = ob_get_contents();
ob_end_clean();

$output = $content; 

 

31460129.jpg

 

Download

Share this post


Link to post
Share on other sites

×
×
  • Create New...