Forum: "Anmelden, um in dem Forum einen neuen Beitrag zu schreiben." ausblenden
am 24.06.2009 - 05:35 Uhr in
Moin, moin,
ich bin Drupalneuling.
Für ein Forum, in dem Gäste frei antworten sollen und nur drei festgelegte Admins Themen einstellen sollen, soll der Hinweis "Anmelden, um in dem Forum einen neuen Beitrag zu schreiben." komplett ausgeblendet werden, um Irritationen zu vermeiden.
Wenn ich unter modules/forum/forum.module in Zeile 686 den Eintrag:
$forum_types['login'] = array('title' => t('<a href="@login">Login</a> to post new content in forum.', array('@login' => url('user/login', array('query' => drupal_get_destination())))), 'html' => TRUE);
komplett verkürze:
forum_types['login'] = array('title' => t(''));
bekomme ich ärger mit der includes/common.inc und im Backend (weiße Seite nach Benutzung von Schaltflächen), als auch mit dem Backend
(LOG: Cannot modify header information - headers already sent by (output started at /shlink/httpd/www.cdu-sh.net/htdocs/service/modules/forum/forum.module:1) in /shlink/httpd/www.cdu-sh.net/htdocs/service/includes/common.inc in Zeile 141.)
Wenn ich in der forum.modules der Ausgabe eine ID zuweise und dann entweder über die style.css (garland) oder forum.css {display:none;}
definiere, erhalte ich die gleichen Fehlermeldungen, obwohl die ID nicht vergeben sein dürfte.
Liegt es an einem PHP-Fehler meinerseits, aber wieso gibt es das Problem dann auch mit einem CSS-Eintrag?
Vielen Dank schonmal!
- Anmelden oder Registrieren um Kommentare zu schreiben
Link ausblenden
am 24.06.2009 - 08:14 Uhr
Moin.
Schonmal vorweg: Finger weg vom Drupal-Kern. Solange Du keinen Fehler im Drupal-Kern beheben und daraufhin einen Patch erstellen möchtest, sollte der Drupal-Kern frei jedweder Änderungen bleiben. Mal abgesehen davon, dass man möglicherweise einen Fehler einbaut, sind die Änderungen beim nächsten Update einfach weg.
Jetzt zum Problem:
Dank der grossartigen Fähigkeit, bei Drupal ziemlich viele Ausgaben anzupassen, kannst Du den Link auch über einfachere Wege (und vor allem: richtigTM!) ausblenden.
Die Funktion, die Du da gerade ändern wolltest, heisst
template_preprocess_forums(&$variables)
. Durch das Präfix "template" ist ersichtlich, dass man diese Funktion überschreiben kann.Also erstellst Du in der template.php Deines Themes eine Funktion namens
THEMENAME_preprocess_forums(&$variables)
und entfernst in dieser Funktion einfach den gewünschten Eintrag aus$variables['links']
.hth,
Stefan
PS: Don't hack core!
--
sei nett zu Deinem Themer
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Teste ich noch
am 24.06.2009 - 18:50 Uhr
Moin, vielen Dank schonmal dafür! Ich werde morgen genau testen, ob ich das richtig zum laufen kriege.
Mach ich das mit der Anzeige bei einem Gasteintrag "Gast (nicht überprüft)", wenn ich das "(nicht überprüft)" ebenfalls ausblenden will genauso?
Kann ich den value bei Gast genauso ändern (Gast muss Name eingeben, vorgegeben steht bereits "gast" in dem Feld, vorgabe soll entfallen)?
Wo finde ich die möglichen Variabeln mit evtl. Beschreibung, ist die in D6 integriert oder über ein Handbuch zugänglich?
Vielen Dank!!