Neueste Kommentare
Eingetragen von fabske (185)
am 01.12.2006 - 19:02 Uhr in
am 01.12.2006 - 19:02 Uhr in
Ich hab den Block "neueste Kommentare" auf der rechten Seite aktiviert, vermisse allerdings die Einstellungen dazu. 10 Kommentare sind mir zu viel, ich hätte gerne nur die neuesten 3. Wie mach ich das?
Danke
- Anmelden oder Registrieren um Kommentare zu schreiben
Themeable function
am 02.12.2006 - 16:30 Uhr
Wieder mal ein Problem, welches sich nur durch Überschreiben einer Themeable Function lösen lässt.
In der Funktion theme_comment_block() steht tatsächlich folgendes:
$result = db_query_range(db_rewrite_sql('SELECT c.nid, c.subject, c.cid, c.timestamp FROM {comments} c INNER JOIN {node} n ON n.nid = c.nid WHERE n.status = 1 AND c.status = %d ORDER BY c.timestamp DESC', 'c'), COMMENT_PUBLISHED, 0, 10);
Die Anzahl 10 ist also fest vorgegeben. Aber wie gesagt, dass kann man in einem Template überschreiben. Wie das geht, ist hier schon einige Male erklärt worden. Da ich das auf einer Site von mir auch brauche, poste ich bald mal den Code.
md - drupalcenter
--
http://drupal.mdwp.de
vg
md - DrupalCenter.de
mdwp* Drupal Consulting & Services
Am schnellsten gehts so
am 02.12.2006 - 16:43 Uhr
Schreib folgendes in die template.php deines Themes:
function NAMEDEINESTHEMES_comment_block() {
$result = db_query_range(db_rewrite_sql('SELECT c.nid, c.subject, c.cid, c.timestamp FROM {comments} c INNER JOIN {node} n ON n.nid = c.nid WHERE n.status = 1 AND c.status = %d ORDER BY c.timestamp DESC', 'c'), COMMENT_PUBLISHED, 0, 3);
$items = array();
while ($comment = db_fetch_object($result)) {
$items[] = l($comment->subject, 'node/'. $comment->nid, NULL, NULL, 'comment-'. $comment->cid) .'<br />'. t('%time ago', array('%time' => format_interval(time() - $comment->timestamp)));
}
return theme('item_list', $items);
}
md - drupalcenter
--
http://drupal.mdwp.de
vg
md - DrupalCenter.de
mdwp* Drupal Consulting & Services
Vielen Dank md, aber ich
am 02.12.2006 - 21:55 Uhr
Vielen Dank md, aber ich verstehe leider nicht was ich mit dem Kode machen soll!?
Warum nicht einfach in der Funktion die 10 durch eine 3 ersetzen?
Re: Vielen Dank md, aber ich
am 03.12.2006 - 09:33 Uhr
Vielen Dank md, aber ich verstehe leider nicht was ich mit dem Kode machen soll!?
Warum nicht einfach in der Funktion die 10 durch eine 3 ersetzen?
Weil du sonst Probleme bekommst, wenn du ein Sicherheitsupdate einspielen willst. Das ersetzt nämlich dann deine veränderte Funktion und du musst die Änderung erneut vornehmen.
Re: Vielen Dank md, aber ich
am 03.12.2006 - 16:07 Uhr
Vielen Dank md, aber ich verstehe leider nicht was ich mit dem Kode machen soll!?
Warum nicht einfach in der Funktion die 10 durch eine 3 ersetzen?
Den Code einfach in die template.php Datei deines Themes kopieren. Wenn es da noch keine template.php gibt, erzeugst du sie vorher.
Für den Namen der Funktion kannst du anstelle von NAMEDEINESTHEMES_comment_block() auch phptemplate_comment_block schreiben.
Dann kannst du die template.php auch mal irgendwann für ein anderes Theme nutzen.
md - drupalcenter
vg
md - DrupalCenter.de
mdwp* Drupal Consulting & Services
Mir wurde meine Seite
am 19.07.2007 - 15:28 Uhr
Mir wurde meine Seite zugespammt durch Kommentare. Hab schon alle Viagra-Kommentare gelöscht, aber bei den 10 letzten Kommentaren hab ich sie immer noch drin. Wie kann ich das denn löschen?
Vielleicht den Cache mal
am 19.07.2007 - 15:47 Uhr
Vielleicht den Cache mal leeren, oder auch den Block ab/anschalten.
gruß pebosi
gruß pebosi
--
https://pebosi.net