Keine Gästeanzeige bei Wer ist Online in Drupal 7
Eingetragen von ThomasK (11)
am 26.09.2013 - 10:58 Uhr in
am 26.09.2013 - 10:58 Uhr in
Hallo,
kann mir jemand weiter helfen?
Warum wird in der Blockanzeige Wer ist Online keine Gäste angezeigt?
Wäre dankbar für eine Antwort
vielen Dank
Thomas
- Anmelden oder Registrieren um Kommentare zu schreiben
Ist im Core nicht
am 26.09.2013 - 15:53 Uhr
Ist im Core nicht berücksichtigt. Kannst Du dir aber auch selber als Block bauen:
http://www.phpcodester.com/2011/04/drupal-7-block-for-whos-online-with-g...
sense-design | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.
Wer ist Online
am 27.09.2013 - 17:26 Uhr
Danke Dir für die Antwort
gruß Thomas
Danke nochmal
am 27.09.2013 - 17:37 Uhr
aber gibt es auch eins nur mit Anzahl Gäste?
gruß Thomas
Musst Du die Abfrage nur
am 27.09.2013 - 17:43 Uhr
Musst Du die Abfrage nur anpassen, dass er Dir die Anzahl zurück gibt
sense-design | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.
Hallo Sense
am 28.09.2013 - 18:32 Uhr
Hallo,
und Danke für Deine Antwort.
Sorry, habe keine Ahnung wie man dieses Script umschreiben muss.
Danke !
Thomas
Wer ist Online Block Besucheranzeige
am 29.09.2013 - 11:40 Uhr
Hallo Drupaler,
ich bin ja nicht ungeduldig, aber gibt es hier im Forum jemand, der mir eine richtige Antwort auf meine Fragen gibt.
Ich denke wenn man schon umsteigt von D6 auf D7 sollten wenigsten die Grundfunktionen von D7 genauso funktionieren wie bei D6.
warum ist das user.modul nicht genauso wie bei D6 mit Besucheranzeige.
liebe Grüße Thomas
Wenn Dir nicht gefällt, wie
am 29.09.2013 - 14:07 Uhr
Wenn Dir nicht gefällt, wie das User-Modul in Drupal 7 arbeitet, mach einen Issue bei Drupal.org auf und mosere hier nicht herum.
Es gibt ein grundsätzliches Problem bei Drupal 7: Es wird keine Session für den Gast angelegt und von daher ist da auch nichts zu zählen. Man muß also tiefer einsteigen:
In die Funktion MYTHEME_preprocess_html in der template.php des eigenen Themes (falls nicht vorhanden anlegen) folgende Zeile einfügen:
$_SESSION["anonymous-tracker"]=time();
Damit wird jetzt immer eine Session angelegt, auch für einen Gast.
Danach den PHP-Filter im Core bei den Modulen aktivieren und einen Block wie diesen erzeugen (Textformat = PHP Code)
<?php
$interval = time() - 900;
$guest_count = db_query("SELECT COUNT(s.uid) FROM {sessions} s WHERE s.timestamp >= :timestamp AND s.uid = 0", array(':timestamp' => $interval))->fetchField();
$authenticated_count = db_query("SELECT COUNT(DISTINCT s.uid) FROM {sessions} s WHERE s.timestamp >= :timestamp AND s.uid > 0", array(':timestamp' => $interval))->fetchField();
$output = '<p>' . format_plural($guest_count, 'There is currently 1 guest online.', 'There are currently @count guests online.') . '</p>';
$output .= '<p>' . format_plural($authenticated_count, 'There is currently 1 user online.', 'There are currently @count users online.') . '</p>';
return $output; ?>
Diese kleine Untersuchung hat jetzt eine gute Stunde Zeit gekostet und wenn ich diese Zeit nicht habe oder mich das Thema nicht interessiert, gebe ich keine Antwort. Ich denke anderen geht es genau so. Also schimpfe nicht, wenn es auf spezielle Fragen keine Antwort gibt.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *