zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden PHP Script Tag Cloud

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 07.06.2008, 05:48
Benutzerbild von SPMan
The Oncoming Storm
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 23.05.2004
Ort: Metropolis
Beiträge: 1.243
SPMan wird schon bald berühmt werden
Frage PHP Script Tag Cloud

Moin,
bezugnehmend auf mein OffTopic-Thema habe ich nun PHP-Scripte (Beispiel) gefunden, die wohl Tag-Clouds generieren.
Nun kommen sie meinen Vorstellungen noch nicht ganz entgegen.
Das Aussehen sollte klar einer modernen Cloud-Tag entsprechen.
Andererseits, da ich seit meinem Studium PHP eher gemieden habe als das ich mich damit beschäftigt habe, weiß ich nicht, ob meine Vorstellungen umsetzbar sind.
Wie schon im Ursprungsthread geschrieben möchte ich die Tags und deren Priorität für meine Zwecke selbst angeben.(also nicht aus dem Content der Hompeage suchen lassen) Eine Textdatei, wo die Daten ausgelesen werden, sollte genügen.
Semantisch korrekt wäre aus meiner Sicht, wenn die Tags sich in einer Liste befinden. Oder sehe ich das falsch?
Nun sollten die Tags in einem (z.B. der Größe vorgegeben) Div (wobei vom Layout her zumindest Breite oder Länge eine feste Größe haben könnte) per Zufall (bei jedem neuen Aufruf) kreuz und quer ausgegeben werden. Ob es z.B. sinnvoll ist immer passend dem jeweiligen Link einen "Title" mitzugeben kann man diskutieren.
Die entsprechende CSS-Datei könnte der Einfachheithalber entweder separat verlinkt werden oder mit eindeutigen Namen in eine bestehene CSS-Datei integriert werden.

Nun meine Frage an die PHP-Scriptler unter Euch, ob ihr eine Möglichkeit seht das Ganze umzusetzen.
__________________
"Glück entsteht oft durch Aufmerksamkeit in kleinen Dingen."
- Wilhelm Busch
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 07.06.2008, 08:33
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.733
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Die Gestaltung hat aber nichts mit PHP zu tun.
__________________
Markus Wulftange
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 07.06.2008, 08:42
Benutzerbild von SPMan
The Oncoming Storm
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 23.05.2004
Ort: Metropolis
Beiträge: 1.243
SPMan wird schon bald berühmt werden
Standard

Zitat:
Zitat von Gumbo Beitrag anzeigen
Die Gestaltung hat aber nichts mit PHP zu tun.
Richtig, aber die Funktionalität. Und darum geht es mir ja erst einmal grundlegend. Und die Gestaltung kann durchaus variabel durch das Script gesteuert werden. (z.B. Größe der Tags)
__________________
"Glück entsteht oft durch Aufmerksamkeit in kleinen Dingen."
- Wilhelm Busch
Mit Zitat antworten
  #4 (permalink)  
Alt 07.06.2008, 09:15
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.733
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Folgendes ist möglich:
PHP-Code:
function generateTagCloud($tags$href=null$maxLevels=10)
{
    if (!
is_array($tags)) {
        return 
false;
    }
    
$min min($tags); $diff max($tags)-$min;
    
$retVal '<ul class="tagcloud">';
    foreach (
$tags as $tag => $weight) {
        
$adjustedWeight = ($weight-$min)/$diff*$maxLevels;
        
$retVal .= '<li>'.str_repeat('<strong>'$adjustedWeight);
        if (
$href) {
            
$retVal .= sprintf('<a href="'.htmlspecialchars($href).'">'.htmlspecialchars($tag).'</a>'rawurlencode($tag));
        } else {
            
$retVal .= htmlspecialchars($tag);
        }
        
$retVal .= str_repeat('</strong>'$adjustedWeight).'</li>';
    }
    
$retVal .= '</ul>';
    return 
$retVal;
}

$tags = array(
    
'foo' => 3,
    
'bar' => 14,
    
'baz' => 6,
);
echo 
generateTagCloud($tags'/tag/%s'10); 
Die Gewichtung entsteht dabei durch ineinander geschachtelte STRONG-Elemente.
__________________
Markus Wulftange
Mit Zitat antworten
  #5 (permalink)  
Alt 07.06.2008, 09:27
Benutzerbild von paracelsus
be simple
XHTMLforum-Kenner
 
Registriert seit: 16.07.2007
Ort: Kapfenberg - Austria, einige meinen am "Anus Mundi"
Beiträge: 4.788
paracelsus ist einfach richtig nettparacelsus ist einfach richtig nettparacelsus ist einfach richtig nettparacelsus ist einfach richtig nett
Standard

Hm, das Thema hab ich Anfangs belächelt, da sich mir der Sinn einer Tag Cloud nicht erschloss.

Aber nun da das Stichwort Gewichtung viel, denke ich das man damit ja nicht nur ein User Gimmik schaffen kann, sondern durchaus auch in >Richtung SUMA etwas möglich ist.

Markus´ Beispiel finde ich erstmal gelungen. Aber ist nicht auch der Sinn einer Tagcloud jener, das ein Element (mit mehr strongs) auch fetter und grösser angezeigt wird? Da müsste man dann über das Array tags CSS Klassen aufrufen so nach dem Motto > als dann font-size:2em ...

Die eigentliche Frage mit der Gewichtung habe ich im xhtml Forum plaziert...
Mit Zitat antworten
  #6 (permalink)  
Alt 07.06.2008, 09:32
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.733
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Das kann über das CSS geregelt werden, beispielsweise:
Code:
.tagcloud strong strong {
	font-size: 1.1em;
}
__________________
Markus Wulftange
Mit Zitat antworten
  #7 (permalink)  
Alt 07.06.2008, 09:34
Benutzerbild von paracelsus
be simple
XHTMLforum-Kenner
 
Registriert seit: 16.07.2007
Ort: Kapfenberg - Austria, einige meinen am "Anus Mundi"
Beiträge: 4.788
paracelsus ist einfach richtig nettparacelsus ist einfach richtig nettparacelsus ist einfach richtig nettparacelsus ist einfach richtig nett
Standard

Ja natürlich, Danke
Mit Zitat antworten
  #8 (permalink)  
Alt 07.06.2008, 09:34
Benutzerbild von SPMan
The Oncoming Storm
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 23.05.2004
Ort: Metropolis
Beiträge: 1.243
SPMan wird schon bald berühmt werden
Standard

Erst einmal danke an Markus für das Script. Ich werde es ausprobieren, wenn ich heute die Zeit finde und dann eine Rückmeldung geben.

Natürlich bin ich für noch mehr Rat weiterhin dankbar!

Zitat:
Zitat von paracelsus Beitrag anzeigen
Hm, das Thema hab ich Anfangs belächelt, da sich mir der Sinn einer Tag Cloud nicht erschloss.
MIr erst auch nicht. NUr ich habe noch eine quasi ungenutzte Domain und ich dachte mir so könnte man auch auf schönen, dazu noch aktuellen, sinvollen Weg ein paar Ideen die man hat verlinken.

Zitat:
Aber ist nicht auch der Sinn einer Tagcloud jener, das ein Element (mit mehr strongs) auch fetter und grösser angezeigt wird? Da müsste man dann über das Array tags CSS Klassen aufrufen so nach dem Motto > als dann font-size:2em ...
Da hst Du auf jeden Fall recht. Die semantische Gewichtung sollte sich auch optisch (Größe, evtl. sogar Farbunterschiede) wiederspiegeln.

Zitat:
Die eigentliche Frage mit der Gewichtung habe ich im xhtml Forum plaziert...
Das ist gut. Ich werde den Fred mal beobachten und mich ggf. beteiligen.
__________________
"Glück entsteht oft durch Aufmerksamkeit in kleinen Dingen."
- Wilhelm Busch
Mit Zitat antworten
  #9 (permalink)  
Alt 07.06.2008, 09:35
Benutzerbild von SPMan
The Oncoming Storm
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 23.05.2004
Ort: Metropolis
Beiträge: 1.243
SPMan wird schon bald berühmt werden
Standard

Zitat:
Zitat von Gumbo Beitrag anzeigen
Das kann über das CSS geregelt werden, beispielsweise:
Code:
.tagcloud strong strong {
	font-size: 1.1em;
}
Du bist gut!
Aber wie gesagt, ich bin erst einmal weg...
__________________
"Glück entsteht oft durch Aufmerksamkeit in kleinen Dingen."
- Wilhelm Busch
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 07.06.2008, 13:08
Benutzerbild von kampfgnom
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 22.11.2006
Ort: Radebeul
Beiträge: 1.808
kampfgnom befindet sich auf einem aufstrebenden Ast
Standard

Frage:
Mehr strong's == mehr Gewichtung für Sumas etc?
Wenn nicht, dann würd ich das einfach so machen, dass man sich klassen für die Gewichtung macht und sie durchnummeriert:
.emphase1 {}
.emphase2 {}
...
.emphase10 {}
und das ganze dann einfach durch die angegeben emphase umändert.
Wenn du keine DB hast, dann würd cih auf ne XML datei zurückgreifen. is imho leichter auszulesen!
__________________
Meine Spielwiese: http://blog.kanedo.net
Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt
Für open Source Liebhaber: open Com

Auch ich Zwitschere als @kanedo
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Redesign für Steiner Cycling Team pkipper Site- und Layoutcheck 11 09.02.2011 12:25
php upload script mit verschiebung elias1993 Serveradministration und serverseitige Scripte 3 30.11.2009 16:04
PHP Script mit GET-Parametern als Img-Src Ares Serveradministration und serverseitige Scripte 2 13.09.2008 21:19
Dateien auslagern - Include und PHP ArcVieh Serveradministration und serverseitige Scripte 17 27.03.2008 18:09
Suche kleines PHP Upload Script. ConiKost (X)HTML 2 03.08.2006 09:43


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:47 Uhr.