pages:mod:header
Inserimento dell'immagine di testa che cambia
- Prima di tutto bisogna copiare in
style/prosilver/theme/images
tutte le immagini del tipoheader_random_XX.jpg
dove XX è un numero che va da 1 a$hd
(vedi più avanti il testo della pagina). Non ci possono essere numeri mancanti; se c'è unheader_random_8.jpg
ed unheader_random_10.jpg
ci deve essere anche unheader_random_9.jpg
. - Poi bisogna copiare nella stessa directory l'immagine
site_logo.gif
che su uno sfondo trasparente deve contenere le scritte sa sovrapporre alle immagini di sfondo. - Infine bisogna scrivere il file
header1.php
che produce un'immagine jpg unendo lo sfondo scelto a caso e l'intestazione fissa. Da quando ci siamo trasferiti su Aruba in header1.php è stata aggiunta anche la gestione dei contatori. Questo è il testo diheader1.php
.
<?php //header('Content-type: image/jpeg'); ob_start(); session_start(); if(! isset($_GET['scw'])) $schermo=1300; else $schermo=$_GET['scw']; $volte=3; // riga 7 $hd=61; // riga 8 Numero massimo di immagini header inserite $d1=1222; $d2=1226; $d3=1231; $d4="0101"; $d5="0106"; // riga 15 Creazione storico $out= date("d/m/Y\tH:i:s\t"); $fo="../../../../../cntp/cnt".date("Ymd").".txt"; $ip = getenv('HTTP_CLIENT_IP')?: getenv('HTTP_X_FORWARDED_FOR')?: getenv('HTTP_X_FORWARDED')?: getenv('HTTP_FORWARDED_FOR')?: getenv('HTTP_FORWARDED')?: getenv('REMOTE_ADDR'); $out.=$ip."\t"; $out.=($_SERVER['HTTP_REFERER']!="")?$_SERVER['HTTP_REFERER']:"-"; $out.="\t".$_SERVER['HTTP_USER_AGENT']."\t".gethostbyaddr($ip)."\n"; $f=fopen($fo,"a"); fputs($f,$out); fclose($f); // riga 32 fine creazione storico if(isset($_SESSION['imgrndname'])){ if ($_SESSION['imgrndcnt'] % $volte === 0)$imgName="header_random_".mt_rand(1,$hd).".jpg"; else $imgName=$_SESSION['imgrndname']; $_SESSION['imgrndcnt']++; }else { $imgName="header_random_".mt_rand(1,$hd).".jpg"; $_SESSION['imgrndcnt']=1; } $_SESSION['imgrndname']=$imgName; //echo "<br>$imgName"; $img = imagecreatefromJpeg($imgName); $d=date("md"); //$d="1228"; // riga 48 scelta del logo a seconda della data if($d>$d1 && $d <=$d2)$img1= imagecreatefromgif('site_logoNatale.gif'); elseif ($d>$d2 && $d<=$d3) $img1= imagecreatefromgif('site_logoNatale1.gif'); elseif($d>=$d4 && $d <=$d5) $img1= imagecreatefromgif('site_logoNatale2.gif'); else $img1= imagecreatefromgif('site_logo.gif'); // riga 55 fine della scelta del logo seconda della data // $img1= imagecreatefromgif('site_logo.gif'); imagecopymerge($img, $img1, 10, 0, 0, 0, 700, 150, 100); $img2=imagecreatetruecolor($schermo-94,120); //imagecopy($img2,$img,0,0,0,0,$schermo-94,150); $img2=imagescale($img,$schermo -94,100); ImageJpeg($img2); //ImageJpeg($img); ImageDestroy($img2); ImageDestroy($img1); ImageDestroy($img); ?>
- La riga 7
$volte=3;
definisce il numero delle volte che verrà presentata la stessa immagine prima di cambiarla. - La riga 8
$hd=61;
definisce il numero di immagini disponibili nella directory. Devono iniziare tutte conheader_random_
seguito da un numero progressivo e con estensione.jpg
. - Le righe dalla 15 alla 32 gestiscono la scrittura delle informazioni sul file storico.
- Le righe dal 48 al 55 aggiungono all'immagine di sfondo un logo che cambia a seconda della data
- Una volta era necessario ancora modificare
Forum3/styles/prosilver/theme/colours.css
e cambiare, nell'item.site_logo
le voci
background-image: url("./images/header1.php"); background-repeat: no-repeat; background-size: 1124px; //era 800px; per un'immagine più piccola/*.innerwidth();*/ padding-left: 1124px; // era 800px; per un'immagine più piccolasitelogo padding-top: 60px;
ma con l'estensione sitelogo https://www.phpbb.com/community/viewtopic.php?t=2400186 queste modifiche non sono più necessarie.
pages/mod/header.txt · Ultima modifica: 09-03-2024 08:24 da 127.0.0.1