Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.40 veröffentlicht (28.05.26)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Zeitgesteuerte Anzeige von Werbung
#1
Halli Hallo

ich habe mal eine Frage und zwar möchte in meinem MyBB nur zwischen 24 und 6 Uhr Werbung für nicht Registrierte Mitglieder Anzeigen.

Meine Idee war es jetzt in der Template Datei einfach einen Code Ähnlich
PHP-Code:
if(date("H",time())>="0" AND date("H",time())<="6") AND empty($useridvariabele)){ echo"Werbecode"; }

Nun ist es ja leider nicht möglich in den Templates PHP auszuführen. Gibt es eine andere Möglichkeit?
Zitieren
#2
Leg den Code in ein Plugin...?

Ist ja nichts dabei, schnapp dir die hello.php,

anstatt echo machst du global $irgendwas; $irgendwas="werbecode";

im global_start Hook oder so...

Dann kannst du im Template da wo du es haben willst {$irgendwas} einfügen.
Zitieren
#3
(13.08.2010, 15:14)frostschutz schrieb: Leg den Code in ein Plugin...?

Ist ja nichts dabei, schnapp dir die hello.php,

anstatt echo machst du global $irgendwas; $irgendwas="werbecode";

im global_start Hook oder so...

Dann kannst du im Template da wo du es haben willst {$irgendwas} einfügen.

Die Idee ist garnicht mal so schlecht, wenn ich dich Richtig verstanden habe wäre folgender Code ja richtig oder? Weil, warum auch immer, geht es Leider nicht.

PHP-Code:
if(!defined("IN_MYBB")) { die("Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined."); } $plugins->add_hook("global_end", "adfooter"); function adfooter_info() { return array( "name" => "adFooter", "description" => "Zeigt die adFOOTER Werbung an'", "website" => "http://www.DM-Scripts.de", "author" => "DM-Scripts.de", "authorsite" => "http://www.DM-Scripts.de", "version" => "1.0", "guid" => "", "compatibility" => "1600" ); } function adfooter($adfooter){ global $adfooter; $adfooter="Werbecode"; return $adfooter; }
Zitieren
#4
Code:
function adfooter(){ global $adfooter; $adfooter="Werbecode"; }
Reicht aus.
Zitieren
#5
versuchs mit global_start statt global_end, je nachdem in welches Template es soll (der Plugin-Code muss ausgeführt sein bevor das Template evaluiert wird, also im Fall der Header Templates, möglichst früh)

und den funktionsparameter weg wie querschlaeger schon schrieb ...
Zitieren
#6
Supi das global_start war der fehler.

PHP-Code:
if(!defined("IN_MYBB")) { die("Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined."); } $plugins->add_hook("global_start", "adfooter"); function adfooter_info() { return array( "name" => "adFooter", "description" => "Zeigt die adFOOTER Werbung nur zwischen 0 und 6 Uhr an'", "website" => "http://www.DM-Scripts.de", "author" => "DM-Scripts.de", "authorsite" => "http://www.DM-Scripts.de", "version" => "1.0", "guid" => "", "compatibility" => "1600" ); } function adfooter(){ global $adfooter, $mybb; if(date("H",time())>="00" AND date("H",time())<="6" AND empty($mybb->user['uid'])){ $adfooter="Werbecode"; } else{ $adfooter=""; } }

So Funktioniert es glaube ich. Mal heute Nacht testen.
Vielen Dank erstmal euch zwein
Zitieren