Tree-Darstellung ähnlich Explorer
Eingetragen von stefanoni (13)
am 15.11.2007 - 18:38 Uhr in
am 15.11.2007 - 18:38 Uhr in
Hallo, ich bin neu hier.
Ich möchte gerne 1:N:N...Daten aus einer MySql-Datenbank als Tree darstellen, ähnlich der Darstellung im Windows-Explorer. Gibt es hier irgendwo schon eine Lösung ? Wo soll ich suchen ?
Vielen Dank für eine Antwort
und Grüsse aus der verschneiten CH
- Anmelden oder Registrieren um Kommentare zu schreiben
Explorer
am 15.11.2007 - 20:39 Uhr
Leider habe ich keine Lösung und keine Links.
Ich habe aber so etwas einmal in vor-CMS-Zeiten selber geschrieben, und zwar sowohl in PHP als auch in JavaScript. Einen solchen Ansatz würde ich auch empfehlen. JavaScript weil es bei verschachtelten Menüs die gewohnte schnelle Bedienung bietet, PHP als Fallback und für Suchmaschinen. Leider ist mein Code verschollen.
Es ist nicht unbedingt ein Modul nötig dafür, eine eigene Theme-Funktion für das Menü in der template.php des Themes wäre auch möglich. So etwas selber zu schreiben, ist aber auf jeden Fall mit einiger Arbeit verbunden.
Es wäre nett, wenn Du die Ergebnisse Deiner Suche hier mitteilen könntest.
Anleihen bei Taxonomy - Manager nehmen?
am 15.11.2007 - 23:05 Uhr
Hallo,
Welchen Inahltstyp möchtest Du denn gerne in einer Tree-Ansicht? Vielleicht hilft es ja schon die Daten mit Meta-Daten (Taxonomy) zu versehen und über diese Metadaten die Explorer-Darstellung zu machen?
Viele Grüße
Thomas Zahreddin
IT+Kunst+Organisation wird http://www.it-arts.org
Thomas Zahreddin
Nur die Darstellungs-Logik
am 16.11.2007 - 07:28 Uhr
Danke Thomas.
Für mein Problem ist der Inhalt-Typ ziemlich banal. Ein Name und ein Link pro Zeile würde schon genügen. Meine Problem ist eigentlich nur die Logik die den Tree grafisch darstellt. Ich habe das ansatzweise auch bereits in PHP gelöst, aber dabei sehr viel Zeit aufgewendet und bin auch an Grenzen gestossen und wollte nun schauen ob ich das Rad wirklich nochmals neu erfinden muss innerhalb Drupal.
Gruss
Mach ich
am 16.11.2007 - 07:31 Uhr
Danke, ich werde hier rückmelden, wenn ich was brauchbares, fertiges finde.
Wie bereits erwähnt bin ich neu bei Drupal und muss erst noch rausfinden was Du mit Theme-Funktion und template.php genau meinst.
Gruss
<ul>
am 16.11.2007 - 14:58 Uhr
Vielleicht kann man auch UL- und LI-Tags so mit CSS formatieren, dass so (oder ähnlich) aussehen. Menüs haben ja normalerweise alle CSS-Klassen, die man dafür braucht: first, last, active.
Lösung gefunden
am 16.11.2007 - 17:32 Uhr
Ich denke das müsste es sein. Hat da schon jemand Erfahrung damit gemacht ?
http://drupal.org/project/jquery_treeview
Gruss an alle
JQuery Treeview
am 17.11.2007 - 06:47 Uhr
Ich habe ein wenig damit herumgespielt, aber bislang mit mäßigem Erfolg. Die Dokumentation der JQuery Treeview ist dürftig.
Als erstes hat es nicht nur nicht funktioniert, sondern auch jeden Link in meiner Site unbenutzbar gemacht wenn ich JavaScript an hatte. Nach Installation des JQuery Update Moduls war dieses Problem behoben.
Um die Treeview zu aktivieren, muss eine
<ul>
-Liste die Klassetreeview
besitzen. Die einfachste Methode, das zu testen, besteht darin, eine page anzulegen, das EingabeformatFull HTML
zu aktiveren und ein eine verschachtelte Liste anzulegen.Ich habe mal ganz forsch die Hauptnavigation mit der Klasse versehen, indem ich die Funktion
theme_menu_tree()
ausincludes/theme.inc
in in dietemplate.php
meines Themes hineinkopiert und dann inmeintheme_menu_tree()
umbenannt habe. Anschließend habe ich dort die entsprechende Klasse eingefügt. Das Ganze sieht dann so aus:/**
* Generate the HTML for a menu tree.
*
* @param $pid
* The parent id of the menu.
*
* @ingroup themeable
*/
function meintheme_menu_tree($pid = 1) {
if ($tree = menu_tree($pid)) {
return "\n<ul class=\"menu treeview\">\n". $tree ."\n</ul>\n";
}
}
Das Ergebnis ist unbefriedigend. Man kann senkrechte Linien erkennen, aber die sind nicht da, wo sie hinsollen und die anderen Symbole fehlen. Immerhin, JQuery Treeview macht irgendetwas. Wie die Fehler zu beseitigen sind, weiß ich nicht. Vielleicht dürfen die
<ul>
-Listen nicht mit CSS formatiert werden.Danke Linulo, für Deine
am 17.11.2007 - 08:57 Uhr
Danke Linulo, für Deine ausführlichen Infos
Klingt aber nicht gerade verlockend...
Och, wieso?
am 17.11.2007 - 19:21 Uhr
Och, wieso? Kann sein, dass das nur ne Kleinigkeit ist. Der Ansatz ist auf jeden Fall genau richtig: ULs, die ohne JavaScript korrekt angezeigt werden und wenn JS dann mit JQuery.