Объемное облако тегов Cumulus для HostCMS

#
Re: Объемное облако тегов Cumulus для HostCMS
DSergeev писал(а):
А как цвета то поменять?
А ч-черт его знает! Там есть какие-то параметры у облака - почитайте в блоге у автора флешки, может быть найдете что-то полезное  - http://www.roytanck.com/2009/03/11/how-to-use-wp-cumulus-shortcodes/
Заказов не беру. Консультирую редко.
#
Re: Объемное облако тегов Cumulus для HostCMS
Kotoff писал(а):
А ч-черт его знает!


ну все оказалось просто:


         //var rnumber = Math.floor(Math.random()*9999999);
         $('#smallcloudflashcontent').flash(
         {
         swf: '/cumulus/tagcloud.swf',
         width: 190,
         height: 190,
         wmode: 'transparent',
         allowScriptAccess: 'always',
         allowFullScreen: false,
         flashvars: {
         tcolor: '0x00B9F1',
         tcolor2: '0xE6E7E8',
         mode: 'tags',
         distr: 'true',
         tspeed: '100',
         tagcloud: tags_list
         }
         },
         { version: 8 }
         );

Жизнь не преодоление сложностей, а поиск возможностей © DSergeev
#
Re: Объемное облако тегов Cumulus для HostCMS
хочется сразу от всей души поблагодарить Kotoff за проделанную работу

но вот незадача:



ставил модуль с 4 страницы для utf, до этого были ошибки. вот ошибки ушли но показывает вот это.

айди магазина прописывал ручками. если я правильно понимаю то айди можно узнать в списке интернет магазинов, в тексте ссылки нужного - в конце shop_shops_id=3?

большое спасибо за помощь заранее, прошу не ругаться, только сегодня сел разбираться с цмской
#
Re: Объемное облако тегов Cumulus для HostCMS
fandorin, дайте ссылку на сайт, с которого вы сделали свой скриншот.
Если вы в денвере, то проверьте открывается ли у вас сама по себе флешка по ее прямому url. если открывается то выложите сюда тот html код, который генерируется xsl-шаблоном от облака.
Заказов не беру. Консультирую редко.
#
Re: Объемное облако тегов Cumulus для HostCMS
спасибо за столь быстрый ответ)

адрес сайта http://shop.fandorin.org.ua
не в денвере, просто стоит апач+пхп. флешка судя по всему открывается но просто пустая страница.. http://shop.fandorin.org.ua/cumulus/tagcloud.swf

насчет html кода судя по всему вот он:

<div id="smallcloudflashcontent"><object width="190" height="190" id="flash_301450716" type="application/x-shockwave-flash" data="tagcloud.swf"><param value="transparent" name="wmode"><param value="always" name="allowScriptAccess"><param value="false" name="allowFullScreen"><param value="tcolor=0x333333&amp;mode=tags&amp;distr=true&amp;tspeed=100&amp;tagcloud=&lt;tags&gt;%3Ca%20href=%22http:///shop/tag/Sony/%22%20style=%22font-size:%2024pt%22%3ESony%3C/a%3E%20&lt;/tags&gt;" name="flashvars"><param value="tagcloud.swf" name="movie"></object></div>
<script>&lt;!--
         var tags_list = '&amp;lt;tags&amp;gt;&lt;a href="http:///shop/tag/Sony/" style="font-size: 24pt"&gt;Sony&lt;/a&gt; &amp;lt;/tags&amp;gt;';
         
         
         //var rnumber = Math.floor(Math.random()*9999999);
         $('#smallcloudflashcontent').flash(
         {
         swf: 'tagcloud.swf',
         width: 190,
         height: 190,
         wmode: 'transparent',
         allowScriptAccess: 'always',
         allowFullScreen: false,
         flashvars: {
         tcolor: '0x333333',
         mode: 'tags',
         distr: 'true',
         tspeed: '100',
         tagcloud: tags_list
         }
         },
         { version: 8 }
         );
         
         --&gt;</script>   
#
Re: Объемное облако тегов Cumulus для HostCMS
fandorin, вы в приведенной ссылке открываете флешку по одному адресу, а на странице сайте она у вас по другому адресу "живет".
В сущности это наверное можно назвать отчасти и моим косяком - в примере на стр.4 темы я указал адрес флешки относительно текущего места, а надо было - относительно корня сайта и с учетом того что флешка лежит в папке /cumulus/
то есть вам надо в xsl-шаблоне написать  
swf: '/cumulus/tagcloud.swf',

Это во-1х.

А во2х, у вас в параметрах облака тегов ссылки очень странного вида:
http:///shop/tag/Sony/
Передаете ли вы в метод посторения облака текущий алиас? (см. примеры php-кода из архива, который можно скачать из того же поста на 4й странице. В архиве, кстати путь к флешке я обновил)
Заказов не беру. Консультирую редко.
#
Re: Объемное облако тегов Cumulus для HostCMS
Присоединяюсь к DSergeev, как поменять цвет других тегов (коричневых)?
#
Re: Объемное облако тегов Cumulus для HostCMS
kovaldo, так DSergeev же вроде выше дал ответ. Ну а если он вам не подходит, то вам может помочь ссылка на страницу разработчика самого облака, ссылку на которую я дал в первом посте на этой странице
Заказов не беру. Консультирую редко.
#
Re: Объемное облако тегов Cumulus для HostCMS
Kotoff писал(а):
А во2х, у вас в параметрах облака тегов ссылки очень странного вида: http:///shop/tag/Sony/ Передаете ли вы в метод посторения облака текущий алиас? (см. примеры php-кода из архива, который можно скачать из того же поста на 4й странице. В архиве, кстати путь к флешке я обновил)


Бьюсь уже второй час, но ничего не выходит. Все сделал по инструкции, облако есть, оно крутится, но при переходе по ссылке из облака видим вот что:
Вы попытались получить доступ к адресу http:///shop/tag/куома/, который сейчас недоступен. Убедитесь, что веб-адрес (URL) введен правильно, и попытайтесь перезагрузить страницу....

Даже и не знаю, что я делаю не так.
Код шаблона страницы:
<?php
/* Отображаем тэги Магазина */

// автоматическое определение id текущего магазина из настроек структуры
// можно вбить id вручную, заменив следующую строку, например, на $shop_id = 1;
$shop_id = to_int($GLOBALS['LA']['shop_id']);

$xsl_name = 'УниверсальноеОблакоТэговCumulus';

// Определим текущий домен сайта, для передачи его в XML
$site = &singleton('site');
$alias_row = $site->GetAlias($_SERVER['HTTP_HOST']);
$current_alias = $site->GetCurrentAlias($alias_row['site_id']);

$property = array();

$external_propertys = array();

// Передадим текущий домен сайта в XML
$external_propertys['current_alias'] = $current_alias;

$shop = &singleton('shop');
$shop->ShowTagsCloud($shop_id, $xsl_name, $property, $external_propertys);
?>

Содержимое XLS-шаблона
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="UTF-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
   
   <!-- УниверсальноеОблакоТэговCumulus  -->
   
   <xsl:template match="/">
      
      <h2>Метки</h2>
      
      <!--Подключим библиотеку-загрузчик Flash-->
      <script type="text/javascript" src="/cumulus/jquery.swfobject.1-1-1.js"></script>
      
      
      <!--Определим количество элементов для наиболее распространенной метки-->
      <xsl:variable name="max_tag_count" select="(//tag/count[not(. &lt; //tag/count)])[1] - 1"/>
      
      <!--Зададим минимальный и максимальный размер шрифта-->
      <xsl:variable name="max_size" select="24"/>
      <xsl:variable name="min_size" select="9"/>
      
      <!--Вычислим коэффициент размерности шрифта для меток с различным количеством элементов-->
      <xsl:variable name="coeff_size">
         <xsl:choose>
            <xsl:when test="$max_tag_count &gt; 0">
               <xsl:value-of select="($max_size - $min_size) div $max_tag_count"/>
            </xsl:when>
            <xsl:otherwise>0</xsl:otherwise>
         </xsl:choose>
      </xsl:variable>
      
      <!--Создадим контейнер для Flash-облака.
      ОБРАТИТЕ ВНИМАНИЕ! Если на странице несколько облаков, то id у их контейнеров должен быть разным!-->
      <div id="smallcloudflashcontent">
         <!--Выведем сюда классическое облако тегов, для тех у кого отключен Flash или Javascript-->
         <div class="TagsCloud">
            <xsl:apply-templates select="//tags/tag">
               <xsl:with-param name="min_size" select="$min_size"/>
               <xsl:with-param name="total" select="sum(//tag/count)"/>
               <xsl:with-param name="coeff_size" select="$coeff_size"/>
            </xsl:apply-templates>
         </div>
      </div>
      
      <!--Подключим Flash-облако с помощью библиотекиjquery.swfObject-->
      <script>
         <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
         var tags_list = '&lt;tags><xsl:apply-templates select="//tags/tag">
            <xsl:with-param name="min_size" select="$min_size"/>
            <xsl:with-param name="total" select="sum(//tag/count)"/>
            <xsl:with-param name="coeff_size" select="$coeff_size"/></xsl:apply-templates>&lt;/tags>';
         
         
         //var rnumber = Math.floor(Math.random()*9999999);
         $('#smallcloudflashcontent').flash(
         {
         swf: '/cumulus/tagcloud.swf',
         width: 190,
         height: 190,
         wmode: 'transparent',
         allowScriptAccess: 'always',
         allowFullScreen: false,
         flashvars: {
         tcolor: '0x333333',
         mode: 'tags',
         distr: 'true',
         tspeed: '100',
         tagcloud: tags_list
         }
         },
         { version: 8 }
         );
         
         <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
      </script>
   </xsl:template>
   
   <!-- Облако из групп -->
   <xsl:template match="tag">
      <xsl:param name="min_size"/>
      <xsl:param name="total"/>
      <xsl:param name="coeff_size" select="10"/>
<xsl:variable name="size" select="round($min_size + ((count - 1) * $coeff_size))"/><xsl:text disable-output-escaping="yes">&lt;</xsl:text>a href="http://<xsl:value-of select="/document/current_alias"/><xsl:value-of select="parent::*/parent::*/path"/><xsl:value-of select="parent::*/parent::*/url"/>tag/<xsl:value-of select="tag_path_name"/>/" style="font-size: <xsl:value-of select="$size"/>pt"<xsl:text disable-output-escaping="yes">&gt;</xsl:text><xsl:value-of select="tag_name"/><xsl:text disable-output-escaping="yes">&lt;</xsl:text>/a<xsl:text disable-output-escaping="yes">&gt;</xsl:text><xsl:text> </xsl:text></xsl:template>
</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2009. Progress Software Corporation. All rights reserved.

<metaInformation>
   <scenarios>
      <scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="cumulus.xml" htmlbaseurl="" outputurl="" processortype="internal" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml=""
         commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator="">
         <advancedProp name="sInitialMode" value=""/>
         <advancedProp name="bXsltOneIsOkay" value="true"/>
         <advancedProp name="bSchemaAware" value="true"/>
         <advancedProp name="bXml11" value="false"/>
         <advancedProp name="iValidation" value="0"/>
         <advancedProp name="bExtensions" value="true"/>
         <advancedProp name="iWhitespace" value="0"/>
         <advancedProp name="sInitialTemplate" value=""/>
         <advancedProp name="bTinyTree" value="true"/>
         <advancedProp name="bWarnings" value="true"/>
         <advancedProp name="bUseDTD" value="false"/>
         <advancedProp name="iErrorHandling" value="fatal"/>
      </scenario>
   </scenarios>
   <MapperMetaTag>
      <MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/>
      <MapperBlockPosition></MapperBlockPosition>
      <TemplateContext></TemplateContext>
      <MapperFilter side="source"></MapperFilter>
   </MapperMetaTag>
</metaInformation>
-->
#
Re: Объемное облако тегов Cumulus для HostCMS
recrut писал(а):
<!-- Облако из групп -->
   <xsl:template match="tag">
      <xsl:param name="min_size"/>
      <xsl:param name="total"/>
      <xsl:param name="coeff_size" select="10"/>
<xsl:variable name="size" select="round($min_size + ((count - 1) * $coeff_size))"/><xsl:text disable-output-escaping="yes">&lt;</xsl:text>a href="http://<xsl:value-of select="/document/current_alias"/><xsl:value-of select="parent::*/parent::*/path"/><xsl:value-of select="parent::*/parent::*/url"/>tag/<xsl:value-of select="tag_path_name"/>/" style="font-size: <xsl:value-of select="$size"/>pt"<xsl:text disable-output-escaping="yes">&gt;</xsl:text><xsl:value-of select="tag_name"/><xsl:text disable-output-escaping="yes">&lt;</xsl:text>/a<xsl:text disable-output-escaping="yes">&gt;</xsl:text><xsl:text> </xsl:text></xsl:template>

Проблема в xsl-шаблоне
Дело в том, что этот шаблон написан для инфосистем, и в инфосистемах корневыхм тегом xml-документа является тег document, а у магазине корневой тег - shop!
Поэтому при формировании ссылок алиас сайта просто не находится по заданному адресу.
В темплейте tag, который я процитировал выше, надо просто вместо выделенного слова document написать shop, и скорее всего будет вам щястье
Заказов не беру. Консультирую редко.
Авторизация