Maggio
31
2006

Procedura: creare un sito attraverso un file index.php del controller

Ecco un semplice esempio per dimostrare un modo facilmente mantenibile di impostare caricamento della pagina in base alla URL corrente. Esso contiene tutte le pagine disponibili in un array associativo .. Questo potrebbe facilmente essere estratto da un database.

Ho incluso anche il codice template per generare un semplice menu per voi .. Si potrebbe naturalmente solo costruire l'URL a mano nei template, se ciò non dovesse soddisfare le vostre esigenze.

Per brevità, non ho incluso alcun css o struttura della tabella per il file index.tpl.

index.php

Code:
<? Php
/ **
* Sito web del controller
* @ Author www.ideamesh.com
* /

/ / Include e creare un'istanza di Smarty
include ('Smarty.class.php');
$ Smarty = & new Smarty ();

/ / Imposta la var url che stiamo cercando di controllare la visualizzazione della pagina
$ Page_var = 'page';

/ / Usa il campo di applicazione $ _REQUEST modo che la pagina può essere passato in via $ _POST o $ _GET
Page_request $ = $ _REQUEST [$ page_var];

/ / Questo vettore contiene il rapporto tra la variabile pagina e il modello di caricare .. Questa informazione potrebbe anche essere recuperati da un db
$ Menu = array (
'Casa' => 'home.tpl',
'Chi siamo' => 'aboutus.tpl',
'Il nostro sistema di' => 'system.tpl',
'Prodotti' => 'products.tpl'
);

/ / Controlla se la pagina richiesta è stata trovata nel menu
if (($ array_key_exists page_request, $ menu))
$ Template = $ menu [$ page_request];
/ / Se non è impostata la pagina predefinita
altro
$ Template = 'home.tpl';

/ / Assegna info per Smarty e visualizzare
$ Smarty-> compile_id = $ template;
$ Smarty-> cache = 1;
$ Smarty-> assign ('menu', $ menu);
$ Smarty-> assign ('template', $ template);
$ Smarty-> assign ('page_var', $ page_var);
$ Smarty-> display ('index.tpl');
?>

index.tpl

Code:
{Include file = "menu.tpl"}
{Include file = $ template}

menu.tpl

Code:
{* Noi generiamo l'elenco dei menu dalle pagine disponibili nel menù *}
<ul id="navigation">
{Foreach chiave = item = url_val template_name from = $ menu}
<li>
<a href="{$SCRIPT_NAME}?{$page_var}={$url_val}">
{} $ Url_val <br />
</ A>
</ Li>
{/ Foreach}
</ Ul>

tags: ,
postato in Guide , Programmazione da Owen

Seguire i commenti tramite il RSS Feed | Lascia un commento | Trackback URL

Lascia il tuo commento

 
© 2008 - 2012 - Tutti i diritti riservati - Ideamesh, Inc. 22 queries. 0,212 secondi.