PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : array für geschlossene Foren definieren



Onkel_Tom
05.01.2004, 01:56
Hallo zusammen,

Ich habe den vb_archive Hack in meinem vB und habe folgendes Problem.
Es müssen in der Datei archive die geschlossenen Foren über einen array string definiert werden damit diese von der Ansicht ausgeschlossen werden.
Der Code lautet wie folgt:


if ( $forumperms['canview'] and !in_array( $forum['forumid'] , array( 34 , 49 , 59 , 80 , 89 ) ) )


Es ist etwas umständlich jedesmal die Datei zu öffnen und nach dem array zu suchen um dort neue, geschlossene Foren einzutragen.
Gibt es eine Möglichkeit am Anfang der Datei einen Parameter zu definieren der dann die gewünschten Foren an die array variable übergibt ?
Also im Prinzip:


$Foren = '34 , 49 , 59 , 80 , 89';
...
...
...
if ( $forumperms['canview'] and !in_array( $forum['forumid'] , array( $Foren ) ) )

Ich habe schon mehrer Versuche unternommen um das auf diese Art und Weise hinzubekommen aber nie hat es funktioniert.

Noch besser wäre eine Version wo diese Foren in der MySQL db in einer Tabelle hinterlegt wären und dann von den entsprechenden Hacks dort ausgelesen werden.
Das ich die Tabelle mit phpmyadmin editieren muss sobald ein neues, geschlossenes Forum angelegt wird, wäre kein Problem und akzeptabel.

Vielleicht kann mir ja einer helfen.

Mystics
05.01.2004, 02:14
Müsste theoretisch über ein neues Feld bei den vBulletin Einstellungen funktionieren.

Query:
INSERT INTO setting (settingid, settinggroupid, title, varname, value, description, optioncode, displayorder)
VALUES ('', '17', 'Für das Archiv geschlossene Foren', 'noarchiveforums', '', 'Mehrere Foren müssen durch ein Komma voneinander getrennt werden.', '', '5');Dann bei den vBulletin Einstellungen unter "Zugriffsbeschränkungen" (wusste keine bessere Gruppe) die Foren einstellen und diesen Code in deiner Archivdatei verwenden:
if ($forumperms['canview'] and !in_array( $forum['forumid'], explode(',', $noarchiveforums)))

Onkel_Tom
05.01.2004, 02:49
Hi Mystics,
habe es gerade probiert, doch leider werden nun wieder alle Foren im Archiv angezeigt.

funzt also ned :(

Mystics
05.01.2004, 03:02
Ich kenne den Hack nicht. Link?

Greift die PHP-Datei des Hacks überhaupt auf die global.php des Forums zu? Baue eine Zeile vor dem Code mal das ein und rufe dann diese Datei auf:
echo $noarchiveforums;

Um zu sehen, ob diese Variable überhaupt einen Wert enthält (falls ja, sollte ganz oben die Zeichenfolge mit den Foren sichtbar sein).

Im Admin Kontrollzentrum hast du die Foren eingetragen und gespeichert?

Onkel_Tom
05.01.2004, 03:09
Hier der Link zum Hack vbArchive - Search Engine Indexer for vBulletin (http://www.vbulletin.org/forum/showthread.php?t=47667)

Im oberen Bereich der Datei steht
require_once( './global.php' );

Aber wenn ich echo $noarchiveforums; eine Zeile vor dem Code eintrage sehe ich davon nichts auf der Archiv Seite.

Ich habe die gewünschten Foren im ACP mit 1,2,3,4,5 usw. eingetragen und gespeichert.

Onkel_Tom
07.01.2004, 01:14
Vielen Dank für Deine Hilfe Mystics.
Es funktioniert jetzt alles hervorragend !

Der Thread kann geschlossen werden.