Pagina 1 di 1
TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 11:53
da Sir Xiradorn
La mia domanda è questa. Ho una navbar come in questo forum e da come si evince ci sono dei bottoni per chiamarli così che ci permettono di accedere alle aree di interesse come la HOME o il FORUM o gli STILI.... Questo lo si imposta proprio in questo modo
Codice: Seleziona tutto
<li<!-- IF FORUM_ID == numeroforum --> id="active"<!-- ENDIF -->>
<a href="link">testo</a>
</li>
E questo ho capito che in effetti è l'ID del forum che sto considerando. Ora però io mi chiedo come faccio ad impostare condizioni di verifica differenti da queste? Che variabili devo guardare e o prendere in esame per il confronto? Ad esempio se volessi mettere un tasto Staff che si collega proprio al link dello staff e si illumina quando siamo in quella pagina? Cioè devo fare:
Codice: Seleziona tutto
<li<!-- IF condizione --> id="active"<!-- ENDIF -->>
<a href="http://www.miodominio.dom/forum/memberlist.php?mode=leaders">Staff</a>
</li>
Ma poi nella condizione non so cosa usare
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:02
da Carlo
Non trovo nessuna variabile che viene impostata unicamente in quella pagina.
Prova così. Apri il file
memberlist.php, trova:
Codice: Seleziona tutto
// What do you want to do today? ... oops, I think that line is taken ...
switch ($mode)
{
case 'leaders':
e aggiungi dopo:
Codice: Seleziona tutto
$template->assign_vars(array(
'PAGINA_STAFF' => 1,
));
Così nel template puoi usare questa condizione:
Codice: Seleziona tutto
<!-- IF PAGINA_STAFF == 1 -->quello che vuoi<!-- ENDIF -->
Non l'ho provato, ma forse funziona anche così, applicando queste modifiche:
Codice: Seleziona tutto
$template->assign_vars(array(
'PAGINA_STAFF' => true,
));
Così nel template puoi usare questa condizione:
Codice: Seleziona tutto
<!-- IF PAGINA_STAFF === TRUE -->quello che vuoi<!-- ENDIF -->
attenzione ai 3 uguali al posto di 2.
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:05
da Sir Xiradorn
Quindi in teoria questo tipo di raggionamento lo potrei fare per le altre pagine giusto? Aprendo e inserendo dei $template->assign_vars(array( al posto giusto?
Per fare dei confronti tipo testo invece? tipo questo?
Codice: Seleziona tutto
$template->assign_vars(array(
'PAGINA_STAFF' => 'provola',
));
E per il profilo anche devo impostare qualcosa o in teoria protrei fare il confrondo usando il {U_PROFILE}?
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:13
da Carlo
Sì, è sempre fattibile, usando i due uguali (==). Però non so se dovresti usare le virgolette come nel php, cioè:
Codice: Seleziona tutto
<!-- IF PAGINA_STAFF == 'provola' -->quello che vuoi<!-- ENDIF -->
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:33
da Sir Xiradorn
Si funziona perfettamente.....basta solo individuare le aree di interesse e settarle in maniera adeguata. Funziona anche con le parole...solo che in effetti non mi fa il controllo sullo id="active". Come faccio a fare si che ci sia che la il controllo?
Ad esempio ho definito in ucp.php questo
Codice: Seleziona tutto
default:
/* $default = true; */
$default = true;
$template->assign_vars(array(
'PROFILE_PAGE' => 1,)
);
break;
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:35
da Carlo
Scusa, non ho capito...
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 12:45
da Sir Xiradorn
Ho fatto così. Aperto lo ucp.php ho modificato
Codice: Seleziona tutto
default:
/* $default = true; */
$default = true;
$template->assign_vars(array(
'PROFILE_PAGE' => 1,)
);
break;
Poi ho impostato una cosa del genere nel template
Codice: Seleziona tutto
<li<!-- IF PAGE_PROFILE == 1 --> id="active"<!-- ENDIF -->>
<a href="http://dominio.dom/forum/ucp.php">Profilo</a>
</li>
Ora pero quando ci clicco sopra il link a cui mi porta è giusto ma il bottone sulla barra che mi resta attivo è quello dell'indice contando il fatto che ho impostato anche la parte di negazione in questo modo
Codice: Seleziona tutto
<li<!-- IF not PAGE_PROFILE --> id="active"<!-- ENDIF -->>
<a href="{U_INDEX}">{L_INDEX}</a>
</li>
e avevo provato anche con
Codice: Seleziona tutto
<li<!-- IF PAGE_PROFILE != 1 --> id="active"<!-- ENDIF -->>
<a href="{U_INDEX}">{L_INDEX}</a>
</li>
mantre vorrei si attivasse proprio il tasto profilo quando sono nella pagina da esso puntata
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 13:07
da Carlo
Vedi che nel template hai usato PAGE_PROFILE, mentre nel file ucp.php hai usato PROFILE_PAGE.
Re: TEMPLATE: Impostare condizioni IF
Inviato: 29/08/2009, 13:45
da Sir Xiradorn

Grazie della correzione...mo fungisce!!!