Alphabetische Liste der TaxanomyTerms?
am 19.12.2006 - 02:14 Uhr in
Hallo,
Ich brauche Tipss jeder Art wie ich diesem Ziel näher komme:
"Eine alphabetisch sortierte Liste für die Terms eines Vokabulars."
So zum Beispiel:
__________________________________________________________
----------------------------------------------------------
INDEX OF TAXONOMY TERMS
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Anchor-Links: AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ
AA
Aarvark (1 Node tagged)
AB
Abbeygale (6 Node tagged)
Abdomen (2 Node tagged)
Absolom (1 Node tagged)
absolute (21 Node tagged)
AC
ac/dc (5 Node tagged)
aclimatization (1 Node tagged)
acolythe (2 Node tagged)
....
....
AZ
azymuth (1 Node tagged)
azmodan (1 Node tagged)
______________________________________________________________________
----------------------------------------------------------------------
Ich stehe hier:
das folgende Code-Snippet erstellt eine Liste ALLER Terms in einem gewählten Vokabular. Das sieht so aus:
Beispiel Bild des Ansatzes.
Schon ganz gut, aber die Abfrage ist eben nicht beschränkt auf Ergebnisse nur aus "A", oder "B".
<?php
// This snippet produces a comma separated list of terms within a given vocabulary
// Includes links to terms and number of nodes.
// Shared by Sverre - September 2006
// Drupal 4.7 tested
$vid = 8; // Change to appropriate vocabulary id
$result = db_query(db_rewrite_sql('SELECT t.tid, t.name, t.description, COUNT(*) as count FROM {term_data} t INNER JOIN {term_node} tn ON t.tid = tn.tid WHERE t.vid = %d GROUP BY t.tid, t.name ORDER BY weight, name', 't', 'tid'), $vid);
$items = array();
while ($category = db_fetch_object($result)) {
$items[] = l($category->name .' ('. $category->count .')', 'taxonomy/term/'. $category->tid);
}
if(count($items)) {
return theme('item_list',$items);
}
?>
Wie gestalte ich das Datenbank Query, das sie mir nur Term-namen liefert die mit "A" oder "Aa" anfangen?
Vielen Vielen Dank, wenn sich einer die Mühe macht mir zu helfen.
Stephan
- Anmelden oder Registrieren um Kommentare zu schreiben
Dieses Snippet habe ich auch
am 19.12.2006 - 02:28 Uhr
Dieses Snippet habe ich auch gefunden. Es erstellt fast die gleiche Liste wie oben.
<?php
$query = "SELECT tid,name from {term_data} WHERE description = '' ORDER BY name ASC";
$result = db_query($query);
while ($term = db_fetch_object($result)) {
$items[]= l($term->name, "admin/taxonomy/edit/term/$term->tid");
}
if(count($items)) {
return theme('item_list',$items);
}
?>
Wie beschränke ich dieses auf alle Elemente die mit "A" "B" oder "AA" anfangen?
Versuch mal
am 19.12.2006 - 12:37 Uhr
Ersetz die Where-Klausel des SQL-Statements mal hiermit "WHERE t.name like 'A%'" .
md - drupalcenter
http://drupal.mdwp.de
vCard herunterladen
vg
md - DrupalCenter.de
mdwp* Drupal Consulting & Services
Hast Du das mal mit Views
am 19.12.2006 - 12:54 Uhr
Hast Du das mal mit Views [1] versucht?
Dafür gibt es ein Snippet [2], das so ziemlich genau das tun sollte, was Du möchtest.
Alternativ gibt es auch noch ein Modul mit Namen Views Alpha Pager [3], welches interessant sein könnte.
vg
[1] http://drupal.org/project/views
[2] http://drupal.org/node/74715
[3] http://drupal.org/project/views_alpha_pager
--
sanduhrs - drupalcenter
--------------------------------
http://erdfisch.de
--
sanduhrs · Stefan Auditor · Drupalcenter
http://drupal.org/user/28074 · http://association.drupal.org/user/646
Vielen Dank. Der Lösung ganz ganz nah.
am 19.12.2006 - 13:51 Uhr
@ md,
Erst mal vielen Dank für die Antwort. Aber wenn ich das ändere, erhalte ich folgende Fehlermeldung:
Parse error: syntax error, unexpected T_STRING in /home/.odelia/lvtester/test.greenkri.com/drupal/includes/common.inc(1180) : eval()'d code on line 13
Müssen wir aber nicht weiterbohren, der Tip von SandUhrs ist genau das richtige.
@SandUhrs
Grossartig! Ich habe schon viel mit Views herumprobiert, aber ich konnte es immer nur eine Liste von Nodes andzeigen lassen nicht von Terms.
Die Anleitung ist genial. Es läuft sofort. BANG! Fertig.
Vielen Vielen Dank.
Kosmetisch schön wäre jetzt noch eine zusätzliche Sortierung nach AA, AB, AC... das kriege ich nicht hin, aber das kann ich verschmerzen.
Liste von Kategorien
am 11.01.2007 - 13:48 Uhr
Eine Liste der Kategorien anzeigen geht mit dem Modul Taxonomy HTML - dürfte aber nicht 100%ig das sein, was Du suchst. Ich wollte es trotzdem nicht unerwähnt lassen:
http://drupal.org/project/taxonomy_html
--------------------------------
http://www.autokauf-und-recht.de
--------------------------------