Joomla.it Forum
Joomla! 1.5.x (versione con supporto terminato) => Joomla! 1.5 => : nellocammar 18 Sep 2008, 20:13:23
-
Salve, come molti impazzisco e sperimento nuove soluzioni per inserire una intro, in flash o non prima dell'apertura del sito.
Sappiamo ormai che la intro deve essere inserita in un file .html, e che questo file viene letto prima dell'index.php, basta poi creare nella intro un tasto che ci porta al sito con il link tuosito.it/index.php e il gioco e' fatto...
Il problema ora e' che: dal sito cliccando sulla voce di menu' "Home" questa ci riporta di nuovo alla intro.
Ho trovato la soluzione (almeno credo ) ma ho bisogno di consigli riguardo alla sicurezza del sito inserendo il codice che lascio di seguito, e il punto esatto di dove va inserito
ecco l'articolo completo che ho trovato:
fare una modifica semplicissima a Joomla, affinchè esegua proprio quello che desideriamo: intro flash solo al caricamento del sito, e template Joomla per tutto il resto.
Passo 1: caricare i file "intro.html" e "intro.swf" nella cartella del nostro template, nella root, oppure dove preferiamo.
Passo 2: editare "index.php" nella root di joomla inserendo le seguenti righe di codice, subito prima del caricamento di globals ecc...
// modifica: checks della pagina intro
if ($_SERVER['REQUEST_URI'] == "/") {
if (file_exists( 'templates/miotemplate/intro.html' )) {
$self = rtrim( dirname( $_SERVER['PHP_SELF'] ), '/\\' ) . '/';
header("Location: http://" . $_SERVER['HTTP_HOST'] . $self . "templates/miotemplate/intro.html" );
exit();
}
}
// fine modifica
perdonate il poema, aspetto i vostri consigli e suggerimenti.
-
Io userei le sessioni.
Nell'intro:
<?php
if(!session_id())
session_start();
if(isSet($_SESSION['intro']) AND $_SESSION['intro']===TRUE)
{
//Redirect alla home
}
else
$_SESSION['intro'] = TRUE;
?>
In index.php:
<?php
if(!session_id())
session_start();
if(empty($_SESSION['intro']) OR $_SESSION['intro']!==TRUE)
{
//Redirect all'intro
}
?>
Dovrebbe essere corretto...
-
due damnde:
1) dove vanno messi di preciso questi codici? cioè a che punto nei file?
2) mi fai un esempio del codice dei 2 redirect? (sono un principiante a riguardo)
grazie mille MIRKOP
-
...la mia intro ha un "play intro" e un "restart intro" quindi una volta caricata mi partirebbe il redirect prima ancora che il visitatore clicchi su play...
Anche se cosi fosse, dal sito cliccando su "home" non mi partirebbe ugualmente la intro?
comunque grazie.... altre idee? ???
-
....ho trovato una sorta di soluzione, piu' difficile a dirsi che a farsi:
-- ho creato un'altra voce di menu' con collegamento url alla home, ma non assegnandola come prima pagina (nel caso non assegnate il col. url: nomesito/index.php, ci metterebbe un paio di secondi in piu' a caricarsi, inserite: index.php?option=com_content&view=frontpage )
-- la vecchia voce di menu' "home" invece l'ho lasciata come predefinita, ma ho cambiato il testo del collegamento in: "torna all'intro" oppure "Rivedi intro".
non e' il massimo, ma mi sta bene...
Altri suggerimenti?
-
dentro al tuo intro scrivi un redirect che porti a index.php se l'URL da cui arrivi è nel tuo server, non è il massimo ma ci si accontenta...
-
Questa volta sei stato poco attento ;D
l'intro e' dotata di un "play Intro" e quindi una volta caricata mi partiva immediatamente il redirect senza dare la possibilita' di visualizzarla. in piu' ha anche un "rivedi intro" , il problema era quando si cliccava su Home, che mi rimandava alla benedetta intro... con l'ultimo post che ho lasciato ho spiegato come "mi sono accontentato"
il sito e' offLine ma puoi vedere l'intro: www.asdesercito-187folgore.it
Grazie comunque!
-
per evitare che cliccando sulla home si ritorni alla intro bisogna modificare le impostazioni del componente sh404SEF, il percorso è:
componenti - sh404SEF - configurazione di sh404SEF - avanzato - nel sotto menù configurazione avanzata del componente inserire in URL della Home Page il percorso completo del sito es: http://www.miosito.it/index.php
-
ERRATA COR.
-
Io userei le sessioni.
Nell'intro:
<?php
if(!session_id())
session_start();
if(isSet($_SESSION['intro']) AND $_SESSION['intro']===TRUE)
{
//Redirect alla home
}
else
$_SESSION['intro'] = TRUE;
?>
In index.php:
<?php
if(!session_id())
session_start();
if(empty($_SESSION['intro']) OR $_SESSION['intro']!==TRUE)
{
//Redirect all'intro
}
?>
Dovrebbe essere corretto...
a me da questo messaggio
Parse error: syntax error, unexpected '<' in /web/htdocs/www.centroavallone.it/home/index.php on line 89
-
potebbe esserti di aiuto anche questo modulo
Skip intro page