drupal 7 php snippet: Code-Optimierung & Fragen
am 31.03.2011 - 17:18 Uhr in
Hi,
habe mich soeben an meinem ersten drupal-snippet versucht und hoffe hier nun auf Unterstützung um das ganze drupal7-kompatibel zu machen.
Vielleicht hilft das ganz ja auch dem ein oder anderen der sowas sucht.
Primär geht es mir übrigens darum was das drupal7-Äquivalent zu taxonomy_term_count_nodes ist()?
Das Snippet soll im alle Terms eines Vokublars auflisten, verlinken und Anzahl der Nodes anzeigen.
Bis auf die Anzahl der Nodes funktioniert das alles auch schon.
Beschreibung steht ja eigentlich im Quelltext, deshalb erspare ich mir das ganze nochmal.
Wäre nett wenn ihr mir sagt wie man das ganze dann auch möglichst elegant mit den drupal-methoden umsetzen kann, da ich irgendwie noch nich so recht den Überblick über die ganzen Methoden habe und die ganzen Möglichkeiten die sich mir so bieten bzw was guter drupal-stil ist...oder vielleicht auch einfach ein paar hilfreiche Links.
thx
//p.s Falls bei Modul-Entwicklung falsch bin, da dies ja eigentlich kein Modul ist, tut es mir leid, habe keinen besseren Platz gefunden.
<?php
/* PHP Code Snippet for Drupal:
* Lists all Taxonomy Terms of specific Vocabulary and links them to the normal page, where all nodes of that term are listed.
Ans should show number of nodes for each term.
ToDo:
- get termpath from drupal method
- what is the drupal7 equivalent to taxonomy_term_count_nodes($tid)?
- theme with drupal style
*/
$vid = 1; //Which vocabulary to generate the tree for
$parent = 0; //The term ID under which to generate the tree. If 0, generate the tree for the entire vocabulary
$max_depth = NULL; //The number of levels of the tree to return. Leave NULL to return all levels
$load_entities = FALSE; //If TRUE, a full entity load will occur on the term objects. Otherwise they are partial objects queried directly from the {taxonomy_term_data} table to save execution time and memory consumption when listing large numbers of terms. Defaults to FALSE
//Getting all terms
$terms = taxonomy_get_tree($vid, $parent, $max_depth, $load_entities);
//Displaying each term of the vocabulary
if (count($terms)) {
echo '<ul>';
foreach ($terms as $term){
echo "<li>" . l($term->name,"taxonomy/term/$term->tid");
//Disabled: Checking for child elements (==terms too!!!)
//$children = taxonomy_get_children($term->tid, $vid);
//$cnt = count($children);
//if ($cnt) echo " ($cnt)";
//Disabled: Drupal 5,6 only!!
// echo taxonomy_term_count_nodes($term->tid);
// print_r($term);
echo "</li>";
}
echo '</ul>';
}
?>
- Anmelden oder Registrieren um Kommentare zu schreiben
Neue Kommentare
vor 14 Stunden 5 Minuten
vor 1 Tag 13 Stunden
vor 1 Tag 20 Stunden
vor 2 Tagen 7 Stunden
vor 2 Tagen 7 Stunden
vor 2 Tagen 7 Stunden
vor 2 Tagen 7 Stunden
vor 2 Tagen 8 Stunden
vor 2 Tagen 9 Stunden
vor 2 Tagen 10 Stunden