Tag cloud (categorii still wp) pe Blogger / Blogspot

I find labels offensive; tu nu? Totusi, m-am gandit ca e o chestie misto de pus pe blogger. Blogger / blogspot nu are asta automat, dar ca orice altceva, se poate face un hack. Si daca esti cumva pe Wordpress (nimeni nu-i perfect), iti voi arata cum sa ai animatia si-acolo (sari direct la punctul 3).

LE: Ambele metode prezentate aici nu mai sunt valabile. Blogger permite acum label clouds in modul normal, blogumus nu pare sa mai functioneze. Raspund la intrebari numai pe BlogIdol.ro.

Eu n-am de gand sa ma mut in curand de pe blogger, dar sunt anumite chestii pe care am vrut sa le-mbunatatesc, si cred c-am reusit in cea mai mare parte. Una din ele este prezentarea categoriilor.

Trebuie pastrata o diferentiere clara intre categorii (labels) si taguri (tags). Categoriile sunt scheletul blogului si nu cred ca trebuie sa ai mai mult de 30. Dac-ajungi sa ai mai mult de 30, inseamna ca tu confunzi categoriile cu tag-urile. Categoriile le alegi pe baza tematicii blogului, si cred ca-i o idee buna sa incerci sa le mentii intr-un numar cat mai mic. Alegi cuvinte generale. Tag-urile sunt cuvinte mai restrictive, si le adaugi pentru a gasi mai usor articolul (atat tu, cat si motoarele de cautare). Nu stiu in ce masura asta te-a lamurit ce-s alea; daca nu, iata o lista de tutoriale:

A) Label cloud (stil wordpress)

Desi Blogger imi permite sa arat categoriile in ce ordine vreau, optiunile nu sunt suficiente sa ma satisfaca. Am vrut sa arat Categoriile in ordine alfabetica, cu marimea fontului data de numarul articolelor sub categoria respectiva. Rezultatele pot fi vazute in subsolul blogului. Nu-mi amintesc exact ce tutorial am urmat, dar cred ca primul la care m-am uitat a fost cel a lui Phydeaux. Acesta pare mai complex decat e necesar, intrucat e prea lung, si declaratia variabilelor se face in capul sablonului.

Hackosphere a publicat in 2006 un hack pentru asa ceva, iar frivolousmotion l-a rescris. Iata hackul frivolousmotion:

1. Du-te in Dashboard si login.

2. Apasa pe Layout -> Edit HTML. Nu apasa "Expand Widget Templates" - nu e necesar.

3. Fa un backup la sablon. Poti face asta fie apasand pe "Download Template" si salvandu-l cu un nume semnificativ, fie selectand tot textul si salvandu-l cu o descriere in Google Notebooks, de pilda. Daca faci vreo greseala majora sau nu esti multumit cu rezultatul, te poti duce la Upload a template from file, Choose... si apoi apesi Upload.

3. Apasa Ctrl+F pentru a cauta in pagina, si cauta

<b:section class='sidebar' id='sidebar' preferred='yes'>

4. Imediat dedesubt, fa copy & paste urmatorului cod:

<b:widget id='Label1' locked='false' title='Labels' type='Label'>
<b:includable id='main'>

<div class='widget-content'>
<div id='LabelDisplay'>
</div>
</div>

<script language='javascript' type='text/javascript'>
function zoomStyle() {
var max = 0;
var min = 10000;
<b:loop values='data:labels' var='label'>
if (<data:label.count/> &gt; max)
  max = <data:label.count/>;
if (<data:label.count/> &lt; min)
min = <data:label.count/>;
</b:loop>
var display = &quot;";
<b:loop values='data:labels' var='label'>
var delta = <data:label.count/> - min;
var size = 80 + (delta * 100) / (max - min);
display = display + &quot;<span style='font-size:" + size + "%'><a expr:href='data:label.url + "?max-results=100"' style='text-decoration:none;'><data:label.name/></a></span> &quot;;
</b:loop>

obj = document.getElementById(&#39;LabelDisplay&#39;);
obj.innerHTML = display;
}

zoomStyle();
</script>

<b:include name='quickedit'/>
</b:includable>
</b:widget>

5. Fa un preview al sablonului apasand pe "Preview". Daca-i OK, salveaza sablonul apasand Save Template. Daca nu, apasa pe Clear Edits sau incarca sablonul salvat mai devreme, si ia-o de la capat, avand grija sa urmaresti instructiunile cu mai multa atentie - eu le-am incercat si-a mers (rezultatul se vede dedesubt, pe pagina).

6. Apasa pe Page Elements si muta Widgetul unde vrei. Apasa pe Preview inainte de a salva.

Daca preferi varianta originala (hackosphere), inlocuieste codul de la punctul 4. cu combo box (permite alegerea mai multor stiluri) sau zoom style only (un singur stil). Iata si varianta combo:

<!-- Multi-style labels - zoom, menu and list styles -->
<b:widget id='Label1' locked='false' title='Labels' type='Label'>
<b:includable id='main'>
  <h2>Multi-style Labels</h2><br/>
  <a href='javascript:void' title='Switch to List' onclick='javascript:linkStyle();'>
  <img src='http://www.anniyalogam.com/widgets/list.jpg'/></a>
  <a href='javascript:void' title='Switch to Menu' onclick='javascript:menuStyle();'>
  <img src='http://www.anniyalogam.com/widgets/menu.jpg'/></a>
  <a href='javascript:void' title='Switch to Zoom' onclick='javascript:zoomStyle();'>
  <img src='http://www.anniyalogam.com/widgets/zoom.jpg'/></a>
  <b><a href='http://hackosphere.blogspot.com/2006/09/multi-style-labels-widget-for-blogger.html'>?</a></b><br/><br/>

  <div class='widget-content'>
  <div id='LabelDisplay'>
  </div>
  </div>

  <script language='javascript' type='text/javascript'>
  function zoomStyle() {
    var max = 0;
    var min = 10000;
    <b:loop values='data:labels' var='label'>
    if (<data:label.count/> &gt; max)
         max = <data:label.count/>;
    if (<data:label.count/> &lt; min)
       min = <data:label.count/>;
    </b:loop>
    var display = "";
    <b:loop values='data:labels' var='label'>
      var delta = <data:label.count/> - min;
      var size = 100 + (delta * 100) / (max - min);
      display = display + "<span style='font-size:" + size + "%'><a expr:href='data:label.url + "?max-results=100"' style='text-decoration:none;'><data:label.name/></a></span><br/><br/>";
    </b:loop>

     obj = document.getElementById('LabelDisplay');
     obj.innerHTML = display;
  }

  function menuStyle() {
     var display = "<select onchange='location = this.options[this.selectedIndex].value;'><option>Select a label</option>";
     <b:loop values='data:labels' var='label'>
       display = display + "<option expr:value='data:label.url + "?max-results=100"'><data:label.name/> (<data:label.count/>)</option>";
     </b:loop>
     display = display + "</select>";

     obj = document.getElementById('LabelDisplay');
     obj.innerHTML = display;
  }

  function linkStyle() {
     var display = "<ul>";
     <b:loop values='data:labels' var='label'>
       display = display + "<li><a expr:href='data:label.url + "?max-results=100"'><data:label.name/></a> (<data:label.count/>)</li>";
     </b:loop>
     display = display + "</ul>";

     obj = document.getElementById('LabelDisplay');
     obj.innerHTML = display;
  }

  // set default to zoom style
  zoomStyle();
  </script>

    <b:include name='quickedit'/>
</b:includable>
</b:widget>

 

B) Blogumus

Widgetul blogumus consta intr-un tag cloud sferic, animat si poate fi vazut in stanga sus. Instalarea unui widget Blogumus este similara cu cea zoom style, diferenta constand in codul introdus la punctul 4, care-i urmatorul:

<b:widget id='Label99' locked='false' title='Labels' type='Label'>
<b:includable id='main'>
  <b:if cond='data:title'>
    <h2><data:title/></h2>
  </b:if>
  <div class='widget-content'>

    &lt;object type="application/x-shockwave-flash" data="http://sites.google.com/site/bloggerustemplatus/code/tagcloud.swf" width="250" height="200" allowscriptaccess="always" &gt;
        &lt;param name="movie" value="http://sites.google.com/site/bloggerustemplatus/code/tagcloud.swf" /&gt;
        &lt;param name="bgcolor" value="#ffffff" /&gt;
        &lt;param name="flashvars" value="tcolor=0x000000&amp;mode=tags&amp;distr=true&amp;tspeed=100&amp;tagcloud=&lt;tags&gt;
      <b:loop values='data:labels' var='label'>
<a expr:dir='data:blog.languageDirection' expr:href='data:label.url' style='12'><data:label.name/></a>
</b:loop>
&lt;/tags&gt;" /&gt;
        &lt;p&gt;Blogumulus by &lt;a href='http://www.roytanck.com/'&gt;Roy Tanck&lt;/a&gt; and &lt;a href='http://www.bloggerbuster.com'&gt;Amanda Fazani&lt;/a&gt;&lt;/p&gt;
    &lt;/object&gt;

  </div>

  <b:include name='quickedit'/>
</b:includable>
</b:widget>

Acest cod a fost publicat de Amanda Fazani la bloggerbuster (exista si o varianta mai veche). Este adaptat dupa un plugin Wordpress creat de Roy Tanck, WP-Cumulus. Atentie, insa: pluginul nu "inghite" labels sau tag-uri cu diacritice. L-am rugat pe Roy sa se uite la chestia asta, dar nu stiu cand, daca sau cum o va face.

Atributele de latime (width) si inaltime (height) pot fi modificate de la default (250px si, respectiv, 200px). Culorile textului si backgroundului sunt exprimate in hex - alb este #ffffff, negru este 000000. Exista mai multe modalitati de a afla valoarea hex asociata cu fiecare culoare, dar cea mai simpla este sa mergi in Layout -> Fonts and Colors si sa gasesti culoarea asociata cu sablonul tau (sau alta culoare, daca vrei sa fii funky). In cazul meu este #fff0e0. Nu uita sa Clear Edits dupa ce gasesti culoarea preferata, intrucat vrei sa schimbi numai widgetul, nu tot blogul.

 

C) Altele

Daca-ti place ideea de "tag cloud", s-ar putea sa te bucuri sa afli ca poti face un tag din orice, inlcusiv feed-ul comentariilor tale, site-ului tau sau chiar al altui site. Un tutorial se afla in lista de clipuri youtube de mai sus. Tot ce trebuie sa faci este sa mergi la MakeCloud.com si sa introduci un feed.

20090810 UPDATE: Vrei mai multe articole tehnice pentru Blogger / Blogspot? Este modificarea de aici curenta, s-au am facut una noua, cu acelasi efect, dar mai buna? Toate modificarile aduse de mine acestui sablon (template) pot fi gasite in Zamolxis ChangeLog. Seria lucrand la fatada va gazdui de-acu’ incolo articole despre PR, media persuasion si eventual imaginea Romaniei.

LE: Inlocuit in blogumus halotemplates.s3.amazonaws.com/wp-cumulus-example cu sites.google.com/site/bloggerustemplatus/code.

22 comments:

  1. Datorita acestui tutorial am reusit sa pun Blogumus. Multumesc frumos!

    ReplyDelete
  2. cu placere - ma bucur ca ti-a folosit! nu te sfii sa ceri si alte hack-uri care te-ar interesa (nu stiu daca voi avea timp, dar nu strica sa stiu)

    ReplyDelete
  3. cum pun pe pagina ...:translate this:.....

    ReplyDelete
  4. @onut: am scris 2 articole pe tema asta. ultimul este un articol care se cheama "11 limbi in plus..."
    il gasesti in lista articolelor din categoria / label -ul lucrand la fatada

    il poti gasi de asemenea facand un search pentru "translate" in casuta din dreapta sus

    ReplyDelete
  5. la Blogumus da, vezi ultimul paragraf din sectia respectiva. daca vrei sa schimbi la tag-urile care apar la mine pe pagina jos, va trebui sa urmezi hackul lui Phydeaux (primul link din articol)

    ReplyDelete
  6. salutare m-ar interesa si pe mine abonarea aia prin mail sa o pun la mine pe blog ...poti sa imi trimit si mie pe blogul_lui_cgc@yahoo.com un mail te rog cum se face? ms mult de tot

    ReplyDelete
  7. imi pare rau, nu ofer asistenta prin email. gasesti instructiuni la feedburner.com

    ReplyDelete
  8. salut!
    daca folosesc un template de tip clasic pe care nu vreau sa-l upgradez si in care nu am cod de gen "b:section class='sidebar' id='sidebar' preferred='yes'", ce alternativa imi recomanzi pentru un label cloud sau un label list?

    ReplyDelete
  9. @Dorin: Nu am nici un pic de experienta cu template-urile vechi. Am vazut cateva design-uri faine, dar am ales totusi sistemul nou fiindca-mi place sa schimb si sa modific chestii si am remarcat ca majoritatea tutorialelor sunt pentru sistemul nou. Exista si pentru cel vechi, dar sunt greu de gasit, dat fiind ca cei care le-au scris l-au abandonat si s-au mutat pe Wordpress (not a good sign) :)
    Deci nu pot decat sa-ti recomand un sistem nou. S-ar putea chiar ca sablonul tau sa fi fost deja portat: cauta.

    U.Laurentiu: merci :)

    ReplyDelete
  10. Am pus si eu acest widget pe blogul meu.
    Daca te intereseaza un schimb de link-uri cu www.materiale-didactice.ro astept raspuns.

    ReplyDelete
  11. multzam fain!
    am reusit sa pun un blogumus:love:

    m-am chinuit o groaza..pana acum :D

    ReplyDelete
  12. no fain, ma bucur :)
    orasul luminilor, adica paris?

    as schimba insa codul culorilor intre background si foreground, ca sa fie alb sau violet pe fond negru, ca sa se potriveasca cu restul sablonului tau.

    ReplyDelete
  13. Salut... de o buna vreme incoace tot ma chinui si eu sa inserez blogumus pe blogul meu. Ma pricep cat de cat la coduri HTML, dar acesta m-a depasit... faza e ca am testat-o maiintai pe un alt blog (tot blogspot) pe care a mers fara nicio problema (de mentionat ca acel blog contine doar 2 articole de umplutura), insa pe blogul meu principal n-a vrut sa se afiseze nici de-al dracu! De n-spe mii de ori m-am lovit de mesaje de error de genu': "Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly" ...de fiecare data altundeva gasind o problema... chiar daca respectivele elemente XML au fost inchise... ca sa nu o mai lungesc mult... codul prezentat de tine este mai ok... a mers din prima... cu singura problema ca in locul ei apare un mare spatiu gol... (mai intai am avut diacritice in taguri, acum le-am scos... dar tot niciun progres) ...

    ReplyDelete
  14. S-ar zice ca broblemu' este in sablonul tau, care pare un pic cam complex si "incarcat". Ce-ti recomand:
    1. Mai verifica o data ca ai scos toate diacriticele si nu lasa nici spatii aiurea, daca poti.
    2. Foloseste un HTML / CSS validator si corecteaza potentiale greseli in cod (fa un backup la sablon inainte).
    3. Incearca sa faci modificarile intr-o masura cat mai mare prin interfata grafica si nu direct in sablon. De pilda, este posibil sa scrii un widget direct in cod, in loc sa mergi prin Add Widget - sablonul tau este insa atat de incarcat, incat facand asta you're looking 4 trouble.

    Gud lac!

    ReplyDelete
  15. Am introdus si eu aceasta optiune apare bine in blog, dar cand dai click pe un titlu nu se intampla nimic.

    Ma puteti ajuta ?

    Multumesc

    ReplyDelete
  16. M-am uitat pe blogul tau si n-am vazut nici una dintre cele doua optiuni. Ce-ti recomand este sa mai incerci inca o data si sa urmezi instructiunile intocmai (in special, re: diacritice pentru blogumus). Iti voi adauga blogul in lista celor din diaspora din blogroll - spune-mi daca mai stii altele netrecute acolo.

    ReplyDelete
  17. Salut !Am şi eu un blog şi am vrut să fac câteva modificări .Aveam o rubrică în dreapta unde vizitatorii puteau scrie ceva. Nu ştiu ce sa întâmplat dar a dispărut şi nimeni nu mai poate să-şi dea cu părerea pe blog !Blogul este de la Blogspot. Ştiţi cumva ce trebuie să fac pentru a reveni acea rubrică la loc ? Este vreun cod HTML ,dacă ştiţi vă rog ajutaţi-mă !Vă rog mult şi aştept cât mai repede dacă puţeţi ! Vă salut cu respect !

    ReplyDelete
  18. P.S.Dacă ştiţi cumva unde pot afla răspunsul ?--marin_tunareanu@yahoo.com---marin-detoatepentrutoti.blogspot.com

    ReplyDelete
  19. Incercati forumulbloggerilor.ro - sfatul meu este sa renuntati la muzica automata - este foarte dificil pentru un cititor sa gaseasca cum s-o opreasca.

    ReplyDelete
  20. Mi-am pus şi eu Blogumus, dar nu funcţionează, în sensul în care dai clic pe o categorie. Dacă mă poţi ajuta?...

    ReplyDelete

Thank you for commenting, but comments entered in this version may not appear.
Felicitări pentru decizia de a comenta! Orice comentariu este bine-venit :).
Din moment ce vezi acest mesaj, accesezi pagina printr-o metoda alternativa si este posibil sa comentezi neobservat(a). Metoda preferabila este prin pagina normala, care contine Disqus; odata inregistrat, acesta iti permite sa comentezi prin reply la email.
Dacă ai intrebări, există răspunsuri - FAQ.
Baftă!