tags ausschließen
am 16.11.2007 - 14:25 Uhr in
hallo,
ich will bestimmte tags ausschließen. nur wie mach ich das?
ich benutze das forum modul. in diesem ist ein forum angelegt welches nur einer bestimmten gruppe von personen zugänglich ist. dies regle ich über taxonomy-access. soweit klappt alles. gleichzeitig benutze ich auch das tagadelic-modul welches mir einen block mit zugehöriger cloud ausgibt einige vocabularien habe ich hier ausgeschlossen, mit: siehe http://drupal.org/project/tagadelic (ganz unten auf der seite).
das vokabular für das forum habe ich nicht ausgeschlossen da es hier mehrere foren gibt. nun wird mir aber in der tag-cloud auch der begriff für dieses eine forum welches nicht frei zugänglich ist angezeigt, was ich nicht haben will, da ja kein zugriff für die allgemeinheit besteht. wie kann ich den einzelnen tag ausschließen?
gruß
roland
- Anmelden oder Registrieren um Kommentare zu schreiben
In der Datei "tagedelic_views.module"
am 16.11.2007 - 14:53 Uhr
In der Datei "tagedelic_views.module" gibt es die "function theme_tagadelic_display()". Damit kann man ein Template erstellen. Im Template wird das nicht anzuzeigende Vocabular entfernt.
Hier ein Codesnipped aus dieser Funktion. Zu sehen die Stelle wo man eingreifen kann um TAgs zu entfernen:
<?php
// execute the tagadelic query and create the tags
$result = db_query_range('SELECT COUNT(*) AS count, d.tid, d.name, d.vid FROM {term_data} d INNER JOIN {term_node} n ON d.tid = n.tid INNER JOIN {node} node ON n.nid=node.nid '. $join .' WHERE d.vid IN ('. substr(str_repeat('%d,', count($vids)), 0, -1) .') '. $where .' GROUP BY d.tid, d.name, d.vid ORDER BY count DESC', $vids, 0, $size);
$tags = tagadelic_build_weighted_tags($result, $steps);
$tags = tagadelic_sort_tags($tags);
?>
$tags = tagadelic_build_weighted_tags($result, $steps);
Ab hier sind die Tags zur Ausgabe ermittelt und man kann eingreifen.
Eventuell funktioniert schon das:
<?php
$tags = preg_replace("/deinvocabular/", "", $tags);
?>
Im Zusammenhang wurde das so aussehen:
<?php
$tags = tagadelic_build_weighted_tags($result, $steps);
$tags = preg_replace("/deinvocabular/", "", $tags);
$tags = tagadelic_sort_tags($tags);
?>
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
das tagadelic view module
am 16.11.2007 - 16:59 Uhr
das tagadelic view module benutzte ich nun gar nicht aber die db abfrage war mir bekannt, die habe ich direkt in meiner template.php.
habe es nun versucht so zu handhaben wie du beschrieben kam aber error wg. func. preg_replace muß ich nochmal versuchen. habe es momentan direkt in der db abfrage verändert, da nur 2 tags.
danke erst mal
roland