In meinem SMF habe ich der Übersicht halber auch ein Archiv angelegt, in dem alte Postings in Ruhe vor sich hin vegetieren dürfen (falls doch mal etwas gesucht wird). Dort werden auch die Forum-Spiele abgelegt, welche ich normalerweise bei ca. 150 Beiträgen kappe. Ich möchte allerdings nicht, dass die archivierten Beiträge in den Statistiken geführt werden, sprich unter dem Punkt "[Weitere Statistiken]" auftauchen, will die Sachen aber natürlich auch nicht löschen. Wie kann ich das am Besten bewerkstelligen?
Ich dachte schon darüber nach für die Statistiken evtl. die SQL-Abfrage so zu ändern, dass das Board "Archiv" bei den Ergebnissen einfach ausgeklammert wird, aber vielleicht geht es ja doch etwas einfacher?
Danke, hat sich erledigt. Ich habe es dann doch einfach in den SQL-Abfragen der
/Sources/Stats.php gemacht:
Lainaa
// Board top 10.
$boards_result = db_query("
SELECT ID_BOARD, name, numPosts
FROM {$db_prefix}boards AS b
WHERE $user_info[query_see_board]
AND ID_BOARD != 16
ORDER BY numPosts DESC
LIMIT 10", __FILE__, __LINE__);
..........
// Topic replies top 10.
// !!!SLOW This query is slow, but can it be fixed at all?
$topic_reply_result = db_query("
SELECT m.subject, t.numReplies, t.ID_BOARD, t.ID_TOPIC, b.name
FROM {$db_prefix}topics AS t, {$db_prefix}messages AS m, {$db_prefix}boards AS b
WHERE m.ID_MSG = t.ID_FIRST_MSG
AND $user_info[query_see_board]
AND t.ID_BOARD = b.ID_BOARD
AND t.ID_BOARD != 16
ORDER BY t.numReplies DESC
LIMIT 10", __FILE__, __LINE__);
..........
// Topic views top 10.
$topic_view_result = db_query("
SELECT m.subject, t.numViews, t.ID_BOARD, t.ID_TOPIC, b.name
FROM {$db_prefix}topics AS t, {$db_prefix}messages AS m, {$db_prefix}boards AS b
WHERE m.ID_MSG = t.ID_FIRST_MSG
AND $user_info[query_see_board]
AND t.ID_BOARD = b.ID_BOARD
AND t.ID_BOARD != 16
ORDER BY t.numViews DESC
LIMIT 10", __FILE__, __LINE__);
Die entsprechenden Einträge habe ich mal rot markiert, falls es jemand ebenfalls braucht. Es muss lediglich die korrekte ID des Archiv-Boards gefunden werden und statt der 16 (in meinem Fall die Board-ID des Archivs) eingetragen werden. Viel Spaß! :)
Ist glaube ich keine schlechte Lösung so. P.S. habe noch das [gelöst] Prefix hinzugefügt für Dich. ;)
trotzdem noch ne kleine anmerkung ;)
falls das mal mehrere bretter betreffen sollte, kann man auch so vorgehn:
1. man schreibt die nummern in eine variable zb so: $die_nich = "2,3,4";
2. man setzt die abfrage so um: blabla ... AND ID_BOARD NOT IN ($die_nich)
grüßle pitti
Danke für die Idee. Jetzt müsste man eigentlich das nur noch als flag in der DB einbinden, im Admin-Bereich einbinden und schon kann man gaaanz einfach jedes beliebige Board aus den Statistiken ausblenden! ;D
per myadmin so:
INSERT INTO `smf_settings` ( `variable` , `value` )
VALUES (
'die_nich', ''
);
abruf der variable so: $modsettings[die_nich]
feddisch :)
Gibt es hierfür mittlerweile ein mod?
Ich habe auch einzelne Boards, die ich gerne aus der Statistik werfen möchte.
Sonst würde ich gerne wissen, wie ich mit der Variable arbeiten muss.
Danke im Voraus,
Carino