ecco la spiegazione
io ci sono riuscito
segui bene e funziona
Simple Template System (STS)
Autore contributo: Brian Gallagher @ DiamondSea.com
Email Autore contributo: [email][email protected][/email]
Se vi piace questo contributo, fate una donazione al team di osCommerce su
http://www.oscommerce.com/about/team
Senza il loro incredibile lavoro, non avrei potuto costruire questo. Grazie!
Questo software è pubblicato sotto la licenza Gnu Public, che è incorporata quì
per riferimento:
COSA FA:
Permette di creare semplici templates HTML per personalizzare il layout di OSC.
Basta semplicemente creare una pagina HTML come la desiderate ed inserire le ancòre
per i vari elementi proprio dove li volete vedere.
Per esempio, inserite "$cartbox" dove volete che appaia il blocco del negozio.
Inserite "$categorybox" dove volete che appaiano i blocchi delle categorie.
Inserite "$content" dove volete che appaia il contenuto della pagina principale
(la parte centrale dove compare tutto...), ecc.
Il template fa tutto ciò modificando solo alcuni files in /catalog/includes/,
lasciando inalterati tutti gli altri files, e rendendo così più semplice
l'aggiunta successiva di altri contributi.
CARATTERISTICHE BONUS: Integrazione di un semplice HEADER TAG CONTROLLER
Questo contributo permette anche l'uso del contributo WebMakers.com's
Header Tag Controller senza dover modificare nessun file del sistema.
Basta copiare i file inclusi in Header Tag Controller al loro posto e
STS li aggiungerà automaticamente in tutte le pagine senza dover modificare
ogni script PHP nella cartella /catalog/.
STS controllerà automaticamente se Header Tag Controller è presente nel sistema
e in tal caso lo userà.
COME INSTALLARE (Modo semplice):
Installare una versione pulita di OSC 2.2MS2, eseguire il programma di installazione
e verificare che tutto funzioni. (se avete aggiunto altri contributi, potrebbe non
funzionare il Metodo Semplice, e dovrete usare il Metodo Avanzato).
Copiare i seguenti files nella cartella /catalog/includes.
application_top.php
header.php
column_left.php
column_right.php
footer.php
application_bottom.php
sts_start_capture.php
sts_stop_capture.php
sts_restart_capture.php
sts_display_output.php
sts_user_code.php
sts_template.html
NOTARE: se usate configure-SAMPLE.php che è incluso nel file ZIP, dovrete reinserire
tutte le vostre impostazioni di configurazione. E' più semplice aggiungere
le seguenti righe di codice in fondo al vostro file
/catalog/includes/configure.php:
Aggiungere le seguenti righe in /catalog/includes/configure.php. Inserirle prima
della riga finale con i caratteri di chiusura ?> dello script.
// STS: ADD: Define Simple Template System files
define('STS_START_CAPTURE', DIR_WS_INCLUDES . 'sts_start_capture.php');
define('STS_STOP_CAPTURE', DIR_WS_INCLUDES . 'sts_stop_capture.php');
define('STS_RESTART_CAPTURE', DIR_WS_INCLUDES . 'sts_restart_capture.php');
define('STS_TEMPLATE', DIR_WS_INCLUDES . 'sts_template.html');
define('STS_DISPLAY_OUTPUT', DIR_WS_INCLUDES . 'sts_display_output.php');
define('STS_USER_CODE', DIR_WS_INCLUDES . 'sts_user_code.php');
// STS: EOADD
NOTARE: Non mettere i files nelle cartelle di /admin/. Il contributo funziona solo
per la sezione /catalog/.
COME INSTALLARE (METODO AVANZATO):
In ognuno dei seguenti files della cartella /catalog/includes/:
application_top.php
header.php
column_left.php
column_right.php
footer.php
application_bottom.php
dovrete copiare il codice dai files STS nei vostri file originari.
Le modifiche sono precedute da:
// STS: ADD:
e finiscono con:
// STS: EOADD
Il modo più semplice per fare le modifiche è sicuramente usando strumenti ad hoc
disponibili in rete per confrontare e sostituire codice, come il tool grafico che
potete trovare quì:
http://www.compareandmerge.com/
E' shareware ($35), cioè a pagamento, ma ha una demo pienamente funzionante per 30 giorni.
E' molto comodo se si usa spesso, ma potete anche farne a meno, se lo usereste solo
occasionalmente
Dopo aver fatto le modifiche, copiate i seguenti files:
sts_start_capture.php
sts_stop_capture.php
sts_display_output.php
sts_template.html
dentro la cartella /catalog/includes/ e controllate se tutto funzioni.
COME USARE:
Modificate il file
/catalog/includes/sts_template.html
come volete. Usate le impostazioni degli stylesheeets oppure direttamente l'HTML
per personalizzare il sito e disponete gli elementi come preferite.
Se si vogliono aggiungere ulteriori blocchi nuovi o variabili di template, aggiungerle
anche nel file sts_user_code.php.
CONSIGLI & TRUCCHI:
Un trucco per rendere più semplice il debug (correzione degli errori) dei templates
più semplice, è mettere i link delle immagini e degli stylesheets come percorsi assoluti:
(tipo con http://....) invece che lasciarli relativi.
Questo trucco permette anche di visualizzare la pagina del template direttamente nel
browser esattamente come apparirà anche sul sito, invece di avere quell'odioso
rettangolo bianco al posto dell'immagine mancante già in fase di prova o di dover
successivamente modificare il percorso delle immagini.
Per vedere la pagina template digitare l'indirizzo:
http://www.tuosito.com/PercorsoCatalogo/includes/sts_template.html
Per visualizzare il tempalte con gli stylesheets, entrate tramite riga di comando
nella cartella /catalog/ e digitate
ln -s includes/sts_template.html sts_template.html
Verrà creato un link simbolico al file template file nella cartella contenente
il foglio di stile (css). Poi, utilizzate l'indirizzo
http://www.tuosito.com/PercorsoCatalogo/sts_template.html
per visualizzare insieme al template anche il foglio di stile.
TAG SUPPORTATI:
Ecco un primo elenco dei Tag supportati (altri verranno inclusi nelle prossime versioni):
$headcontent: Inserite questa variabile all'interno della sezione <head> per includere
il contenuto dinamico dell'intestazione compreso il javascript nelle pagine che lo
richiederanno. Dovrete purtroppo inserire la variabile $headcontent anche negli <head>
del codice sorgente delle pagine. Scusate, ma è l'unico modo che siamo riusciti a farlo
funzionare.....
<!--$headcontent--> : Si può utilizzare questo formato commentato di $headcontent per
evitare di far apparire la parola "$headcontent" nel web editor preferito.
DA NOTARE: non inserite i tags <title>...</title> all'interno dell'header. Sarà aggiunto
in automatico come contenuto della variabile $headcontent, insieme ai metatags della
Descrizione e le Keywords se avete installato anche il contributo WebMakers.com's Header
Tag Controller.
$cataloglogo: il logo di OSC compreso il link
$urlcataloglogo: URL usato dal logo di $catalog.
$myaccountlogo: L'immagine del mio Account con link
$urlmyaccountlogo: URL usato dalla funzione Mio Account
$cartlogo: L'immagine del negozio e link
$urlcartlogo: URL usato dalla funzione del Cart
$checkoutlogo: Immagine Checkout e link
$urlcheckoutlogo: URL usato dalla funzione Acquista
$breadcrumbs: I toplink "Top > Catalogo > ecc..."
$myaccount: La versione testuale di "Mio Account" e link. Cambia in "Logoff" se si è connessi.
$urlmyaccount: URL usata dalla funzione Mio Account.
$cartcontents: Versione testuale della funzione "Contenuto negozio".
$urlcartcontents: URL usato da quest'ultima funzione.
$checkout: Versione testuale della funzione "Acquista".
$urlcheckout: URL usato dalla funzione "Acquista".
$categorybox: Il box Categorie
$manufacturerbox: Il box Produttori
$whatsnewbox: Il box Novità
$searchbox: Il box Cerca
$informationbox: Il box Informazioni
$cartbox: Il box Negozio
$maninfobox: Il box Informazioni produttori (blank se non usato nella pagina)
$orderhistorybox: Il box Cronologia ordini (blank se non usato, p.es. se non connessi)
$bestsellersbox: Box i più venduti
$specialfriendbox: Either the Specials box or the Tell A Friend box (depending on page viewed)
$reviewsbox: Il box Recensioni
$languagebox: Il box Lingue
$currenciesbox: Il box Valute
$content: Il contenuto principale della pagina (al centro della pagina)
$date: La data corrente
$numrequests: The "XXX requests Since DATE" text
$counter: Il contatore delle pagine viste
$footer: Il footer dal file footer.php
$banner: Il banner dal file footer.php
$sid: La stringa della sessione nel formato "SessionIdVarName=WhateverTheSessionIdIs"
$urlcat_Category_Name: The URL to link to the category name. Spaces in the category name must
be replaced with underscores. For example, for a link the category "Video Cards" you would
user the template variable
$urlcat_Video_cards
The variable names are case insensitive, so you can use upper and lower case however you like.
$urlcat_x_y_z: The URL to link to the category by cPath string. You can use this to link to a
category by the numeric values of the categories as shown by the "cPath" variable in the URL.
The benefit of this is that it will still work if you change the names of the categories, which
would break the $urlcat_Category_Name format.
$cat_Category_Name: Same as $urlcat_Category_Name
$cat_x_y_z: Same as $urlcat_x_y_z
DEBUGGING: CONTROLLO ERRORI
Nel file /catalog/includes/sts_display_output.php you can see the
following settings (near the top of the file):
$display_template_output = 1;
$display_normal_output = 0;
$display_debugging_output = 0;
Display_Template_Output (the default setting) will cause it to display the
template versions of the pages.
Display_Normal_Output will cause it to display the non-template version of
the pages.
Display_Debugging_Output will cause it to display debugging information
showing all of the blocks of data that it is using and how it translates
them into template variables.
You can use any or all of the settings in any combination. If you have both
Normal and Template output, the Template output will be displayed first.
DEBUGGING IN REMOTO:
You can toggle the debugging options via URL options. You can use the
following parameters in your URL to turn on/off options from your browser
sts_template=1 Turns on the Template display
sts_template=0 Turns off the Template display
sts_normal=1 Turns on the Normal display
sts_normal=0 Turns off the Normal display
sts_debug=1 Turns on the Debugging display
sts_debug=0 Turns off the Debugging display
sts_version=1 Turns on Version Number display
sts_version=0 Turns off Version Number display
SUPPORT:
For support, please post to the Simple Template System thread here:
http://forums.oscommerce.com/index.php?showtopic=58541