Integrare un banner di terze parti in PHP-Nuke

Venerdì 24 Ottobre 2003 00:00 amministratore 5269 Visite
Stampa
Valutazione attuale: / 2
ScarsoOttimo 
Ecco come ho inserito il banner di bbanner.it all'interno di PHP-Nuke per un amico, un semplice patch che permette l'inserimento di un banner di terze parti all'interno del vostro sito PHP-Nuke.
Il patch é stato realizzato su PHP-Nuke 6.9, ma con piccole modifiche é inseribile ovunque, o quasi.

Partiamo subito con le spiegazioni, che sono la cosa che interessa, il perché l'ho fatto non credo vi interessi piu di tanto... o sbaglio? :-)

Dunque la prima cosa da capire é che per fare questa cosa dovete patchare il file del tema che usate, in modo particolare il file theme.php. Ora questo significa che se poi fate un update perderete questo patch e dovrete riapplicarlo. Ricordatevelo bene questo concetto, se usate piu temi la cosa puo essere uno sbattimento non indifferente.

Per spiegare il tutto uso come tema di riferimento zoneCopper. Procediamo ora al patch, ma prima fate un bel backup del vostro theme.php; e poi iniziamo ad editarlo, quello che andremo a fare é aggiungere la possibilita di caricare da un file esterno il codice del nostro banner.

In PHP-Nuke i banner vengono gestiti da un IF all'inizio del file theme.php:


    if ($banner==1) {
    GESTIONE BANNER NUKE
    }


Noi a questo IF principale aggiungeremo un semplice ELSE dove inseriremo il nostro codice in modo che il tutto diventi:


    if ($banner==1) {
    GESTIONE BANNER NUKE
    } else {
    GESTIONE NOSTRO BANNER
    }


Chiaramente dovete avere un po di dimestichezza nel seguire il codice PHP e trovare dove finisce l'IF di cui parliamo in quanto all'interno di questo IF c'é un bel po di codice per gestire i banner. Una volta trovato le cose sono semplici, aggiungeremo semplicemente questo pezzo di codice:


    if ($banner==1) {
    GESTIONE BANNER NUKE
    } else {
    # From here it's a patch by aenigma
    # http://www.thekey.it
    if (file_exists("themes/zoneCopper/mybanner.html")) {
    $filehnd = @fopen("themes/zoneCopper/mybanner.html","rb",0);
    if ($filehnd) {
    while (!feof($filehnd)) $showbanners .= fread($filehnd, 1024);
    fclose($filehnd);
    }
    }
    }


Fatta questa modifica basta creare il file mybanner.html nella giusta posizione (nell'esempio : themes/zoneCopper/mybanner.html), ed il contenuto dello stesso verrà posizionato al posto del banner di PHP-Nuke.

N.B.
1 - Da notare che visto il tipo di patch creato, nel momento in cui attivate il sistema dei banner di PHP-Nuke, il banner esterno verrà disabilitato e non visualizzato.
2 - Se volete disabilitare temporaneamente l'inserimenot del banner basta che rinominiate il file mybanner.html, in quanto il patch automaticamente controlla l'esistenza del file e solo in tal caso inserisce il codice.
3 - Potete anche cambiare la posizione del file mybanner.html, nell'esempio si trova in themes/zoneCopper/mybanner.html ma nulla vieta che voi lo poniate piu in alto nell'albero delle directory in modo che sia accessibile a più temi contemporaneante.
Tags: