who´s online Darstellung ändern
am 22.04.2007 - 13:48 Uhr in
Hi, ich würde gerne die Darstellung der "Who´s online" Liste ändern.
Momentan sieht die Ausgabe so aus,
<h3>Online users</h3><ul><li><a href="#">Name</a></li></ul>
Ich möchte die Überschrift entfernen, und die User nicht in einer ungeordneten
Liste darstellen, sondern einfach nur mit Kommas getrennt.
Habe schon nach passenden Funktionen gesucht, aber bin leider nicht fündig
geworden. Also, wenn jemand Informationen dazu hat, ein Link zur Doku oder
ein Beispiel wären perfekt.
Vielen Dank schon mal,
Grüße
- Anmelden oder Registrieren um Kommentare zu schreiben

Who's online
am 22.04.2007 - 14:48 Uhr
Die Liste der user kommt aus der Theme Function 'theme_user_list'. Diese kannst du überschreiben. Den Titel kannst du entfernen indem du den Block neu konfigurierst und als Titel
<none>angibts.vg
--
md - DrupalCenter
mdwp
Hi, diese Funktion hatte ich
am 22.04.2007 - 14:57 Uhr
Danke, die Darstellung habe ich jetzt so geändert.
<?php
function MyTheme_user_list($users, $title = NULL) {
if (!empty($users)) {
foreach ($users as $user) {
$items[] = theme('username', $user);
}
}
return theme('user_online', $items, $title);
}
function MyTheme_user_online($items = array(), $title = NULL, $attributes = NULL) {
$output = '<div id="user-list">';
$numb = count($items);
$k = ', ';
if (!empty($items)) {
foreach ($items as $c => $item) {
$attributes = array();
$children = array();
if (is_array($item)) {
foreach ($item as $key => $value) {
if ($key == 'data') {
$data = $value;
}
elseif ($key == 'children') {
$children = $value;
}
else {
$attributes[$key] = $value;
}
}
}
else {
$data = $item;
}
if (count($children) > 0) {
$data .= theme_user_online($children, NULL, $attributes); // Render nested list
}
if($c == $numb-1) {
$k = '';
}
$output .= $data.$k;
}
}
$output .= '</div>';
return $output;
}
?>
Ist das so anständig gelöst?
Und wie kann ich den Satz "There are currently 2 users and 1 guest online."
einfach komplett entfernen? Wo ist der definiert?
Danke