Werbung nach X Beiträgen ausschalten

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Domitz
Mitglied
Beiträge: 209
Registriert: 18.11.2006 17:29

Werbung nach X Beiträgen ausschalten

Beitrag von Domitz »

Hallo, ich habe den Beitragszahl von heute Mod, der angibt wie viele Beiträge am heutigen tag geschrieben wurden.

Jetzt würd ichs gerne einrichten, dass nach 100 beiträgen die Werbung für den aktuellen tag abgeschaltet wird.

Gibts da ne simple Lösung mit php?
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

für phpBB2 kannst Du Dir ja Infos aus der Knowledge-Base holen (Thema: Templates).
Dann fragst Du mit php den aktuellen Stand des Beitragszählers ab (das ist ja schon mittels MOD passiert) und schaltest dementsprechend die Anzeige im Template an oder aus. Beachte bitte dabei das Thema Verschachtelung dert Switches.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Domitz
Mitglied
Beiträge: 209
Registriert: 18.11.2006 17:29

Beitrag von Domitz »

Hallo, dort finde ich leider nichts.
Habe bei google etwas von einer if weisung gelesen.
Daraufhin habe ich mal etwas zusammengebastelt, was leider noch nicht so recht klappt :(

Code: Alles auswählen

<?php

//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

if($posts_today>100)
   {
echo (Keine Werbung)
   }
else
   {
echo (Werbung)
   }
?>
Der erste Block sollte die Datenbankeinstellungen bereitstellen.
Dannach soll der Wert aus der Datenbank ausgelesen werden und überprüft werden, ist dieser grösser als 100 soll der Text "Keine Werbung" ausgelesen werden, ist der Wert kleiner als 100 soll der Text"Keine Werbung" ausgelesen werden.

Diese Datei würde ich dann noch so einbauen, dass ich sie mit {werbungprüfer} oder so bei dem Style auslesen kann.

Ich hoffe mein Ansatz ist nicht allzu verkert.
Über Antworten freue ich mich.
LG Dominik
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Das hast Du gelesen? KB:template_syntax
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Domitz
Mitglied
Beiträge: 209
Registriert: 18.11.2006 17:29

Beitrag von Domitz »

Ok, also folgendes:

Code: Alles auswählen

if($posts_today<100 == true) {
    $template->assign_block_vars('switch_irgendwas', array());
}
und dann müsste ich noch in index_body.tpl folgendes schreiben:

Code: Alles auswählen

<!-- BEGIN switch_irgendwas -->
werbung
<!-- END switch_irgendwas -->
Nur jetzt versteh ich nicht ganz wo ich den ersten Teil reinsetzen muss.

Edit: Habs mal bei includes/page_header.php eingebunden, der text wurde dann auch bei index_body.tpl angezeigt, aber wenn ich die Grenze mal auf 10 runterschraubte (heute wurden schon mehr als 10 gepostet) wurd der text leider immer noch angezeigt.
Deswegen vermute ich mal, dass irgendwas mit der if funktion nicht richtig ist :(
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Das könnte sein. Es könnte aber auch an $post_today oder an der Art Deiner Umsetzung für das Template liegen.

Probier mal es in die index_body.tpl einzusetzen und nochmal: Beachte bitte die Verschachtelung von Switches im Template.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Domitz
Mitglied
Beiträge: 209
Registriert: 18.11.2006 17:29

Beitrag von Domitz »

Habs mal in der index_body.tpl probiert, klappt aber leider auch nicht :(

Also könnte das problem auch an den

Code: Alles auswählen

<!-- BEGIN switch_irgendwas -->
werbung
<!-- END switch_irgendwas --> 
liegen?

mit

Code: Alles auswählen

if({DAY_POSTS}<100 == true) {
    $template->assign_block_vars('switch_irgendwas', array());
}
klappts auch nicht, bei {DAY_POSTS} hab ichs eingestellt, dass nur die Zahl ausgelesen wird.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Das mit {DAY_POSTS} klappt so nicht. Da war der erste Ansatz besser.

Hast Du Dich denn schon mal mit der Verschachtelung der switches etwas befasst?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Domitz
Mitglied
Beiträge: 209
Registriert: 18.11.2006 17:29

Beitrag von Domitz »

Nein, leider ka, was du damit meinst.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Für Ahnung, bitte die Suche benutzen und dort evtl. folgende Suchbegriffe: Verschachtelung von switches
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“