Forums breadcrumb
Eingetragen von darkix (24)
am 12.10.2009 - 18:19 Uhr in
am 12.10.2009 - 18:19 Uhr in
moin moin,
ich habe auf meiner drupal installation das coremodule "forum" installiart und arbeite auch mit breadcrumbs.
Dank dem module "menuebreadcrumb" funktionieren auch meine breadcrumbs soweit, aber wen ich den menüpunkt "forum" klicke,
wird zwar das Forum geladen aber der breadcrumb steht noch bei "Startseite", erst wen ich auf ein menüpunkt im Forum klicke,
ändert sich der breadcrum auf "Startseite | Forum | Allgemein"
ist es iwie möglich auf "Startseite -> Forum" zu kommen?
Gruß
- Anmelden oder Registrieren um Kommentare zu schreiben
drupal_set_breadcrumb()
am 12.10.2009 - 22:31 Uhr
Es gibt sicherlich verschiedene Moeglichkeiten.
Eine davon ist, im Template fuer die genannte Seite die Funktion drupal_set_breadcrumb() aufzurufen. Damit kannst Du den gewuenschten Breadcrumb definieren.
<?php
if (arg(0) == 'forum' && arg(1) == '') {
drupal_set_breadcrumb(array(
l(t('Home'), 'home'),
l(t('Forums'), 'forum'),
));
}
?>
Den Link zur Startseite 'home' musst Du auf Deine Standard-Startseite anpassen.
Edit
Da das Template die Liste nur bei der URL forum anzeigt kann man die if Bedingung auch weglassen.
------------------------
Quiptime Group
Da geht noch was.
mhhhhhhhh ich gehe mal davon
am 12.10.2009 - 22:09 Uhr
mhhhhhhhh ich gehe mal davon aus das ich den code in die template.php einfügen muss?
jedenfalls hab ich es nun so probiert ;-) aber ohne erfolg... in welche datei muss der code rein ?
Search for forum_list
am 12.10.2009 - 22:32 Uhr
im Template fuer die genannte Seite
Module stellen fuer die Ausgabe von Inhalten Funktionen bereit die mittels eines auf diese Funktion zugeschnittenen Templates die Ausgabe des Inhaltes dieser Funktion beeinflussbar machen.
Ich bin mir 99.99 % sicher das das Forum Modul den Inhalt der Uebersichtsseite der Foren ueber solch eine themable function anzeigt. Um also diese Funtionalitaet verwerten zu koennen muss man als Erstes wissen welche Funktion im Forum Modul diese Forumliste ausgibt.
Wie findet man nun so etwas?
Es geht um forum und list.
Also machen wir daraus forum_list (ueblicher Drupal coding style wenn zwei Begriffe innerhalb einer Bezeichnung verwendet werden) und gehen damit zur Drupal API.
Und was finden wir damit?
Search for forum_list
PS
100%
Edit
Siehe mein Edit am Post mit dem Code von drupal_set_breadcrumb().
------------------------
Quiptime Group
Da geht noch was.
Guten Morgen, füge ich aber
am 13.10.2009 - 06:39 Uhr
Guten Morgen,
füge ich aber den code in forum.module ein, bekomm ich ne dicke fehler meldung und nix geht mehr...ist egal in welcher zeile ich den code einfüge ?
gruß
hab jez schon einiges
am 13.10.2009 - 15:22 Uhr
hab jez schon einiges versucht, bin aber iwie immer zu nem fehler gekommen...
kannst du mir genauere infos geben ?
dankööö :-)
... forum-list.tpl.php in den Ordner Deines verwendeten Theme
am 13.10.2009 - 16:55 Uhr
Kopiere modules/forum/forum-list.tpl.php in den Ordner Deines verwendeten Theme.
Das Template enthaelt folgende Zeilen:
<?php
* @see template_preprocess_forum_list()
* @see theme_forum_list()
*/
?>
<table id="forum-<?php print $forum_id; ?>">
?>
Den PHP Code fuer den Breadcrumb in das Template einfuegen:
<?php
* @see template_preprocess_forum_list()
* @see theme_forum_list()
*/
// Set extra breadcrumb.
//if (arg(0) == 'forum' && arg(1) == '') {
drupal_set_breadcrumb(array(
l(t('Home'), 'home'),
l(t('Forums'), 'forum'),
));
//}
?>
<table id="forum-<?php print $forum_id; ?>">
?>
Nachdem Du die Templatedatei in den Themeordner kopiert hast musst Du unter admin/settings/performance den Cache leeren! Das ist ein Button unten auf dieser Seite.
Nun solltest Du eigentlich den extra Breadcrumb sehen.
Wird der Breadcrumb nur auf der Startseite der Foren gezeigt und auf den anderen Forumseiten nicht dann kannst Du im Template die beiden kommentierten Zeilen der if Bedingung entfernen.
Wird er aber auch auf anderen Forumseiten gezeigt dann entferne die beiden Kommentierungen an der if Bedingung.
------------------------
Quiptime Group
Da geht noch was.
hallo,ich habe jez alles
am 13.10.2009 - 21:38 Uhr
hallo,
ich habe jez alles nach deiner anleitung gemacht, aber ich bekomm es einfach nich hin , wen ich den menüpunkt "forum" anklicke
wird das forum mit dem breadceumb "startseite" anstatt "startseite->forum" geladen :-(
hab auch den cache vom browser geleert ....
ahoi, fürs protokol ;-) ich
am 14.10.2009 - 15:15 Uhr
ahoi,
fürs protokol ;-)
ich hab jez die forum-list.tpl.php aus modules/forum/ in
/sites/all/themes/mytheme kopiert, dan den code eingefügt :
*
* @see template_preprocess_forum_list()
* @see theme_forum_list()
*/
if (arg(0) == 'forum' && arg(1) == '') {
drupal_set_breadcrumb(array(
l(t('Home'), 'home'),
l(t('Forums'), 'forum'),
));
}
?>
<table id="forum-<?php print $forum_id; ?>">
und den cache von drupal und meines opera browsers geleert ...
wen ich jez auf den menüpunkt "forum" klicke is alles beim alten, breadcrumb steht bei "startseite"
erst wen ich im forum selbst rumklicke änder sich der breadcrumb in "startseite->forum->..."