Menu multipli

show_menu2, versione 4.9 x

Show_Menu2 è un frammento di codice per il WebsiteBaker CMS. Dal WebsiteBaker 2.7 è incluso con il CMS.
La precedente funzione show_menu viene completamente sostituita ed estesa con show_menu2. Tutti i dati necessari per creare il menu sono generati da una singola query di database. Con ampie possibilità di regolazione del codice HTML generato tutti i tipi di menu possibili (liste, pangrattato, sitemap, ecc) può essere generato.

  • Installazione
  • Utilizzando Show_Menu2
  • FAQ
  • Funzione
  • Output HTML
  • Parametro
  • Opzioni Avanzate
  • Stringhe di Formato
  • Formattazione Condizionale
  • Formatter

INSTALLATIONup

Dal show_menu2 è di solito presente in WebsiteBaker, non è necessaria nessuna installazione. Se, contrariamente alle aspettative, non esiste, puoi scaricarlo qui.

Usando SHOW_MENU2up

Per usare show_menu2 devi modificare il modello dove vuoi che appaia il menu. Nota: se vengono sostituite le vecchie chiamate di menu, devono essere utilizzati anche i nuovi parametri corrispondenti di cui show_menu2 ha bisogno.

Nella maggior parte dei casi è sufficiente la chiamata standard con almeno 4 parametri di show_menu2. In questo caso vengono utilizzati i valori predefiniti, questo crea un menu che visualizza la pagina corrente e le sottopagine della pagina corrente:

show_menu2(0, SM2_ROOT, SM2_START, SM2_TRIM);

Nota: la chiamata a show_menu2 è PHP e deve normalmente essere racchiusa in caratteri di codice PHP (a meno che la chiamata non sia già all’interno del codice PHP):

 <?php show_menu2(0, SM2_ROOT, SM2_START, SM2_TRIM); ?>

Questo menu predefinito crea già un menu completo su base elenco con diverse classi che consentono una facile formattazione utilizzando i CSS. Ad esempio, la classe “menu-current” viene aggiunta al tag <li> della voce di menu corrente. Inoltre ogni voce di menu delle voci secondarie contiene la classe “menu-expand”. Ciò consente di creare regole CSS molto differenziate per ogni voce di menu.
Per esempio:

li.menu-expand { font-weight: bold; }li.menu-current { background: red; }

La sezione “Output HTML” contiene una descrizione dettagliata di quali classi sono assegnate a quale elemento. Utilizzando diversi parametri nella chiamata di funzione show_menu2, è anche possibile creare strutture di menu piuttosto estese e diverse. Ad esempio, per visualizzare solo le voci di menu dal livello superiore della struttura del menu, è possibile utilizzare la seguente chiamata:

show_menu2(0, SM2_ROOT, SM2_START, SM2_TRIM);

Oppure, ad esempio, per visualizzare fino a due sottolivelli della pagina corrente:

show_menu2(0, SM2_CURR+1, SM2_CURR+2, SM2_TRIM);

Ci sono molte possibilità per creare diverse strutture di menu. Numerosi esempi possono essere trovati sul sito demo: KLICK

FAQup

D: Non sono un programmatore. Non esiste una documentazione più semplice?
A: No, perché questa è già la semplice documentazione.

D: Come posso creare un menu a discesa?
A: Questo non ha nulla a che fare con show_menu2. Per creare un menu a discesa è sufficiente regolare il codice CSS del rispettivo modello. Le regolazioni necessarie possono essere trovate ad esempio nel modello “allcss2” dal repository Addon WebsiteBaker-> https://addon.websitebaker.org/

D: Perché il menu scompare dopo aver utilizzato la funzione di ricerca in una pagina Web multilingue?
A: Mancano le linee necessarie nel modello utilizzato:

1. Nel backend WB Admin: Opzioni – > Mostra opzioni avanzate- > Opzioni di ricerca – > Intestazione-inserisci la seguente riga direttamente dopo l’apertura< modulo > tag:

<input type="hidden" name="referrer" value="" />

2. inserire la seguente riga nell’indice.php del template usato subito dopo l’apertura< form > tag della ricerca:

<input type="hidden" name="referrer" value="<?php echo defined('REFERRER_ID')?REFERRER_ID:PAGE_ID;?>" />

D: Multilingue? Sembra fantastico. Come si fa?
A: https://help.websitebaker.org/en/designerguide/multilingual-websites.php

D: Ogni volta che viene chiamata una pagina, SM2 genera il seguente messaggio di avviso:
“show_menu2 error: a aOptions is invalid. Nessuna bandiera dal gruppo 1 in dotazione!”
A: I valori errati o un numero errato di valori sono stati passati alla funzione.
Vedere la sezione PARAMETRI per i valori corretti del flag da passare al parametro a aOptions.

D: Come si usa una classe/immagine/colore/widget diversa per ogni voce in un menu?
A: Utilizzare la stringa di formato nella stringaIt aItemOpen. Crea una classe o un id univoco per ogni voce di menu, quindi fai riferimento a tale elemento nel tuo CSS o Javascript per fare quello che vuoi.
Per aggiungere una classe unica per ogni voce di menu (o simile):

"<li><a href="" target="" class=" p"></a>"

… creazione di voci di menu come …

<li><a href="/pages/foo/bar.php" target="_top" class="menu-top p45">Top Menu</a>

Fai riferimento a questo nel tuo CSS come:

a.p45 { color: red; }

Per aggiungere un ID univoco per ogni voce di menu (o simile):

"<li><a href="" target="" class=""></a>"

… creazione di voci di menu come …

<li><a href="/pages/foo/bar.php" target="_top" class="menu-top">Top Menu</a>

Fai riferimento a questo nel tuo CSS come:

a#p45 { color: red; }

Si noti che l’ID può essere utilizzato solo se il menu viene generato e visualizzato una sola volta nella pagina (perché gli ID HTML devono essere univoci all’interno di una pagina).

FUNCTIONup

La chiamata completa e i valori dei parametri predefiniti per show_menu2 sono i seguenti:

show_menu2( $aMenu = 0, $aStart = SM2_ROOT, $aMaxLevel = SM2_CURR+1, $aOptions = SM2_TRIM, $aItemOpen = '</a>', $aItemClose = '</li>', $aMenuOpen = '', $aMenuClose = '</ul>', $aTopItemOpen = false, $aTopMenuOpen = false);

La sezione “Parametri” contiene una descrizione dettagliata di ogni singolo parametro.
Ogni parametro deve essere usato in modo assolutamente corretto. Le seguenti regole possono aiutare:

aMen aMenu = 0 è il valore migliore nella maggior parte dei casi.
aSt aStart deve essere un ID di pagina o un valore che inizia con “SM2_”.
aM aMaxLevel può ottenere solo valori che iniziano con “SM2_”.
a aOptions ad eccezione di alcuni casi speciali sono consentiti solo i valori che iniziano con “SM2_”.
Tutti gli altri parametri contengono i tag (HTML) che controllano l’output del menu.
A partire da each aItemOpen ogni parametro può essere passato il valore false per ottenere il rispettivo valore predefinito.

Può essere utilizzato, ad esempio, per creare un elenco numerato, mentre i valori predefiniti vengono ancora utilizzati per le singole voci di menu:

show_menu2(0, SM2_ROOT, SM2_ALL, SM2_ALL, false, false, '<ol>', '</ol>');

Nota: fino a including aOptions inclusi tutti i parametri devono essere passati esplicitamente!

Output HTML

L’output HTML dipende in gran parte dai parametri che vengono passati alla funzione. Indipendentemente da ciò, le classi successive vengono sempre utilizzate per ogni menu, per cui le singole voci di menu possono anche avere diverse classi se necessario.

CLASSE ASSEGNAZIONE
menu-top Solo la prima voce di menu.
menu-parent Qualsiasi voce di menu principale.
menu-current Solo la voce di menu della pagina corrente.
menu-sibling Tutti i “fratelli” della pagina corrente.
menu-child Qualsiasi sottomenu della pagina corrente.
menu-espandi Qualsiasi menu con sottomenu.
menu-first La prima voce di qualsiasi menu o sottomenu.
menu-last L’ultima voce di qualsiasi menu o sottomenu.
Le seguenti classi vengono aggiunte solo se è impostato il flag SM2_NUMCLASS:
menu-N Ogni voce di menu, dove N sta per la profondità ASSOLUTA del menu, a partire da 0, della rispettiva voce di menu.
Quindi il livello superiore è sempre menu-0, il livello successivo è menu-1 e così via.
menu-child-N Ogni sottomenu delle pagine correnti, dove N sta per la profondità RELATIVA del sottomenu, che inizia con 0.

Esempio di output HTML:

<ul class="menu-top menu-0"> <li class="menu-0 menu-first"> ... </li> <li class="menu-0 menu-expand menu-parent"> ... <ul class="menu-1"> <li class="menu-1 menu-expand menu-first"> ... <ul class="menu-2"> <li class="menu-2 menu-first"> ... <li class="menu-2 menu-last"> ... </ul> </li> <li class="menu-1 menu-expand menu-parent"> ... <ul class="menu-2"> <li class="menu-2 menu-expand menu-current menu-first"> ... ** CURRENT PAGE ** <ul class="menu-3"> <li class="menu-3 menu-child menu-child-0 menu-first"> ... <ul class="menu-4"> <li class="menu-4 menu-child menu-child-1 menu-first"> ... </li> <li class="menu-4 menu-child menu-child-1 menu-last"> ... </li> </ul> </li> <li class="menu-3 menu-child menu-child-0 menu-last"> ... </li> </ul> </li> <li class="menu-2 menu-sibling menu-last"> ... </li> </ul> </li> <li class="menu-1"> ... </li> <li class="menu-1 menu-expand menu-last"> ... <ul class="menu-2"> <li class="menu-2 menu-first menu-last"> ... </li> </ul> </li> </ul> </li> <li class="menu-0 menu-last"> ... </li> </ul> 

PARAMETERup

aMen aMenu

Numero del menu. Questo è utile per utilizzare più menu su una pagina. Menu numero 0 è il menu predefinito della pagina corrente, SM2_ALLMENU restituisce tutti i menu utilizzati nel sistema.

aSt aStart

Specifica il livello da cui deve iniziare la creazione del menu. Nella maggior parte dei casi, questo sarà il livello superiore del menu da visualizzare. Uno dei seguenti valori:

SM2_ROOT+N

Inizia a N a livelli inferiori al livello superiore, ad esempio:

SM2_ROOT Inizia al livello superiore
SM2_ROOT+1 Inizia un livello al di sotto del livello più alto
SM2_ROOT+2 Inizia due livelli sotto il livello superiore

SM2_CURR+N

Inizia a N livelli al di sotto del livello corrente, ad esempio:

SM2_CURR Inizia al livello corrente. Tutti i fratelli del livello corrente
SM2_CURR + 1 Avvia un livello sotto il livello corrente con tutti i sottolivelli.

page_id

Utilizza la pagina con l’ID pagina specificato come elemento padre.
Vengono visualizzati tutti i sottomenu di questa pagina. (L’ID della pagina può essere determinato modificando la pagina nel backend dell’amministratore, verrà visualizzato nella barra degli indirizzi del browser: http://SITE/admin/pages/modify.php?page_id=35

$aMaxLevel

Il numero massimo di livelli che possono essere visualizzati. Il display
inizia dal livello specificato in aSt aStart, fino al livello specificato qui.
SM2_ALL

Nessuna restrizione, vengono visualizzati tutti i livelli.

SM2_CURR + N

Mostra sempre la pagina corrente + N livelli.

SM2_CURR Livello corrente(nessun sottolivello)
SM2_CURR+3 Tutti i sottolivelli parent + current + 3

SM2_START+N

Inizia sempre al livello iniziale + N livelli.
I livelli vengono visualizzati indipendentemente dal livello in cui si trova la pagina corrente.

SM2_START Un singolo livello dal livello iniziale.
SM2_START + 1 Livello iniziale + un livello inferiore.

SM2_MAX + N

Visualizza un massimo di N livelli dal livello iniziale.
I livelli al di sotto del livello corrente non vengono visualizzati.

SM2_MAX Solo il piano iniziale (stesso effetto di SM2_START)
SM2_MAX + 1 Il livello iniziale e un livello sotto di esso.

$aOptions

Bandiere speciali per diverse opzioni di generazione di menu. Possono essere combinati tra loro utilizzando un collegamento OR (|).
Ad esempio, per definire sia TRIM che PRETTY, usa : (SM2_TRIM | SM2_PRETTY).

GRUPPO 1
——-
Un flag deve sempre essere specificato da questo gruppo. Questi flag determinano il modo in cui gli elementi fratelli nell’albero dei menu vengono soppressi nell’output.

SM2_ALL

Mostra tutti i rami dell’albero dei menu

 A-1 -> B-1 -> B-2 -> C-1 -> C-2 (CURRENT) -> D-1 -> D-2 -> C-3 A-2 -> B-3 -> B-4

SM2_TRIM

Mostra tutti i menu di pari livello della pagina nel percorso corrente.
Tutti i sottomenu di elementi che non sono nel percorso.
vengono rimossi.

 A-1 -> B-1 -> B-2 -> C-1 -> C-2 (CURRENT) -> D-1 -> D-2 -> C-3 A-2 

SM2_CRUMB

Visualizza il percorso breadcrumb del menu, ovvero la voce di menu corrente
e tutte le voci di menu che vi conducono.

A-1 -> B-2 -> C-2 (CURRENT)

SM2_SIBLING

Come SM2_TRIM, ma vengono visualizzati solo i menu di pari livello della pagina corrente. Tutti gli altri elementi sono soppressi.

 A-1 -> B-2 -> C-1 -> C-2 (CURRENT) -> D-1 -> D-2 -> C-3 

GRUPPO 2
——-
Questi flag sono opzionali, possono essere combinati in qualsiasi numero.

SM2_NUMCLASS

Aggiunge le classi di menu numerate ” menu-N “e”menu-child-N”.

SM2_ALLINFO

Carica tutti i campi dalla tabella delle pagine del database.
Questo provoca un consumo di memoria abbastanza elevato e dovrebbe essere
dovrebbe quindi essere usato con cautela.
Ciò significa, ad esempio, che le parole chiave, la descrizione della pagina e
tutte le altre informazioni disponibili che normalmente non sono
possono essere caricate.
Si prega di notare: questo flag deve essere impostato alla PRIMA chiamata di schow_menu2
può essere utilizzato per il rispettivo ID menu, o in combinazione con il
con SM2_NOCACHE, altrimenti non ha alcun effetto.

SM2_NOCACHE

I dati letti dal database non vengono riutilizzati quando show_menu2 viene richiamato, ma vengono letti nuovamente dal database.

SM2_PRETTY

Porta l’output HTML del menu con spazi vuoti e
Interruzioni di riga in una forma leggibile. Ciò è particolarmente utile quando si esegue il debug dell’output del menu.

SM2_BUFFER

Non emette direttamente il codice HTML, ma lo salva internamente e lo emette come stringa completa.

SM2_CURRTREE

Esclude dalla visualizzazione tutti gli altri menu di primo livello.
Vengono visualizzate solo le voci di menu del ramo di menu corrente.
Se necessario, questo flag può essere combinato con qualsiasi flag del gruppo 1.

SM2_ESCAPE

Applica htmlspecialchars alla stringa del menu.
Questo può essere richiesto per le vecchie installazioni di WebsiteBaker.
per generare un output HTML valido.

SM2_SHOWHIDDEN

Le pagine nascoste sono solitamente nascoste tutto il tempo, anche quando sono attive (ad esempio la pagina corrente o una pagina padre).
Usa pagine private per il tempo in cui vuoi che le pagine siano nascoste tranne quando sono attive. Tuttavia, per la compatibilità con la versione 4.8, fornire questo flag per consentire alle pagine nascoste di diventare visibili quando sono attive.

SM2_XHTML_STRICT

Garantisce la compatibilità XHTML dei collegamenti rimuovendo la specifica di destinazione nei collegamenti formattati con or e inserendo l’argomento title=””. Per i collegamenti compilati manualmente, il progettista è responsabile della conformità XHTML.

SM2_NO_TITLE

Sopprime l’output del contenuto dell’attributo Title per i collegamenti formattati.
Per questo parametro esiste anche una modalità estesa in cui le opzioni vengono passate come array associativo. Vedere la sezione OPZIONI AVANZATE per i dettagli. Per la maggior parte delle applicazioni, tuttavia, questo NON è richiesto.

$aItemOpen

Definisce la stringa di formato con cui viene avviata ogni singola voce di menu. Una stringa di formato diversa può essere definita per la prima voce di menu usando aT aTopItemOpen.
Se questo parametro è impostato su false, la stringa di formato predefinito
‘</a> ‘ per garantire la compatibilità con la funzione standard WebsiteBaker show_menu().
Poiché la formattazione utilizzando le classi CSS è spesso più semplice quando applicata al tag < a>, si consiglia di utilizzare la seguente stringa di formato: ‘<li></a>’.
Questo parametro può essere utilizzato anche come istanza di una classe di formattazione per il menu. Una descrizione più dettagliata può essere trovata nella sezione FORMATTATORE. Se qui viene specificato un formattatore, tutti gli argomenti dopo $aItemOpen vengono ignorati.

a aItemClose

Questa stringa completa ogni voce di menu. Nota: questa non è una stringa di formato e nessuna parola chiave verrà sostituita!
Se questo parametro è impostato su false, viene utilizzato il valore predefinito ‘</li>’.

aMen aMenuOpen

Questa stringa di formato apre un elenco di voci di menu. Una stringa di formato diversa può essere definita per il primo menu usando aT aTopMenuOpen.
Se questo parametro è impostato su false, viene utilizzato il valore predefinito”.

aMen aMenuClose

Questa stringa completa ogni menu. Nota: questa non è una stringa di formato e nessuna parola chiave verrà sostituita!
Se questo parametro è impostato su false, viene utilizzato il valore predefinito ‘</ul >’.

aT aTopItemOpen

La stringa di formato per la prima voce di menu. Se questo parametro è impostato su false, viene utilizzata la stessa stringa di formato di $aItemOpen.

aT aTopMenuOpen

La stringa di formato per il primo menu. Se questo parametro è impostato su false, viene utilizzata la stessa stringa di formato di aMen aMenuOpen.

ADVANCED OPTIONSup

Il parametro a aoptions può essere utilizzato in due modi. In primo luogo, come descritto sopra nella sezione PARAMETRI, questo tipo dovrebbe essere sufficiente per la stragrande maggioranza dei casi d’uso. Tuttavia, per poter affrontare le opzioni speciali in casi speciali, i valori richiesti devono essere forniti come array associativo.
Nota: anche i flag SM2_ * sono obbligatori qui e devono essere passati come ‘flag’.

‘flags’

**CONCELARY REQUIRED** Questi sono i flag descritti sopra nella sezione PARAMETRI sotto $aOptions.

‘notrim’

Definisce un numero di livelli che vengono sempre visualizzati rispetto al livello di menu definito in aSt aStart. Questo fa sì che il flag SM2_TRIM venga ignorato per questi livelli.

Per utilizzare questo array si consiglia di crearlo prima e quindi fornire il parametro $aOptions con l’array creato:

$options = array('flags' => (SM2_TRIM|...), 'notrim' => 1); show_menu2(0, SM2_ROOT, SM2_CURR+1, $options);

FORMAT STRINGSup

I seguenti tag possono essere utilizzati nelle stringhe di formato per $aItemOpen e aMen aMenuOpen e devono essere sostituiti dal testo corrispondente.

<un> tag senza classe:

'<a href="" target="">'
<un> tag con classe:

'<a href="" target="" class="">'
<li> tag con classe:

'<li class="">'
<ul> tag con classe:

'<ul class="">'
Elenco delle classi per questa pagina
il Testo del titolo del menu
(entità HTML sfuggito a meno che il SM2_NOESCAPE flag è impostato)
L’URL di un file immagine con normale rappresentazione
L’URL di un file di immagine con l’/hover display
titolo della Pagina di testo
(entità HTML sfuggito a meno che il SM2_NOESCAPE flag è impostato)
L’URL di una pagina relativi file di immagine
L’URL delle pagine per il tag< a >
La destinazione della pagina per il tag <a>
L’ID della pagina della voce di menu corrente.
L’ID della pagina della voce di menu principale.
A livello di pagina, questo è lo stesso numero utilizzato nel tag CSS “menu-N”.
Numero di fratelli della voce di menu corrente.
Numero di tutti i fratelli in questo menu.
Condizione (vedere la sezione “Formattazione condizionale” per i dettagli)

I seguenti tag sono disponibili SOLO se è impostato il flag SM2_ALLINFO.

descrizione della pagina
parole chiave della pagina

Formattazione Condizionale up

L’istruzione di formattazione condizionale può assumere una delle seguenti forme:


Un

La condizione. Vedi sotto per i dettagli.

B

L’espressione utilizzata quando la condizione è soddisfatta.
Può essere qualsiasi stringa che non contenga il carattere ‘}’.
può contenere. Può contenere qualsiasi stringa di formato dalla sezione
Stringhe di formato’, ma nessun ulteriore test di condizione (perché il carattere’} ‘ non è consentito).

C

L’espressione utilizzata quando la condizione non è soddisfatta.
Può essere qualsiasi stringa che non contenga il carattere ‘}’.
può contenere. Può contenere qualsiasi stringa di formato dalla sezione
Stringhe di formato’, ma nessun ulteriore test di condizione (perché il carattere’} ‘ non è consentito).

La condizione è una combinazione di uno o più confronti booleani.
Se è richiesto più di un confronto, deve essere combinato con gli altri confronti
può essere collegato usando || (booleano or – OR) o && (booleano and – AND).

Un singolo confronto è costituito dall’operando sinistro, dall’operatore e dall’operando destro.
ad esempio X == Y – dove X è l’operando sinistro, == l’operatore e Y l’operando destro.

Operando sinistro. Deve essere una delle seguenti parole chiave:
classe Controlla se questa classe esiste. Solo il ” = = “e”!= “gli operatori sono ammessi. In questo caso gli operatori hanno il significato “contiene ” o” non contiene “invece di” è uguale “o”non è uguale”.
livello Controllo del livello della pagina.
sib Controlla il numero di fratelli nella pagina corrente.
sibCount Controllare il numero totale di fratelli nel menu corrente.
id Controlla l’ID della pagina.
target Verifica della specifica target.
Centralino. Deve essere uno dei seguenti:
< a Meno di
<= Inferiore o uguale a
== Uguale
!= Non è uguale
>= Maggiore o uguale a
> Maggiore
operando di Destra. Il tipo di questo operando dipende dalla parola chiave utilizzata per l’operando sinistro.
classe Uno dei nomi di classe ” menu – * “come specificato nella sezione” Output”.
livello Controllare il livello di pagina con i seguenti valori:

  • <numero> assoluto a livello di pagina
  • root è il livello superiore della pagina
  • granny una pagina di livello Sopra il genitore a livello di pagina
  • genitore genitore a livello di pagina
  • corrente a livello di pagina
  • bambino subordinato a livello di pagina
id Controllare l’id della pagina contro i seguenti valori:

  • <numero > l’id pagina assoluta
  • genitore l’id pagina genitore
  • corrente l’ID pagina corrente
sib Un numero intero positivo, o “sibCount” per controllare il numero di fratelli in questo menu.
sibCount Un numero intero positivo
target Una stringa che rappresenta una possibile specifica di destinazione.
Gli esempi seguenti danno come risultato “true” e l’espressione {exp} viene eseguita se true:
Ha un sottomenu
Se la prima voce in un menu
NON È la prima voce in un menu
Se l’ultima voce del menu è
Situato al livello più alto
NON È al livello superiore
Se la seconda voce in un menu
Se in un menu con più di una voce
È in un menu che non sono esattamente 2 elementi
È in un fratello menu o sottomenu di un fratello menu
È il genitore punto di corrente id
La stringa ‘_self’ è contenuta nell’attributo di destinazione.

Se viene aggiunta una clausola else, verrà eseguita in tutti gli altri casi.
Ad esempio, ” foo ” viene sempre eseguito quando il controllo if è errato, quindi:

NON È la seconda voce del menu
NON è in un menu con più di due voci
In più, per confronto, l’espressione “exp” è eseguito solo se:
è la prima voce O è la quarta o superiore voce nel menu
Se la voce corrente E ha sottomenu

si Prega di notare:
Tutti i controlli saranno eseguiti nell’ordine in cui sono indicati, perché:

  • Non c’è alcun controllo per i possibili loop (tutti i controlli vengono sempre eseguiti).
  • I controlli non sono raggruppati (le parentesi dei controlli non sono supportate)
  • Entrambe queste cose hanno lo stesso valore.

FORMATTERup

Attenzione: questa è una funzionalità avanzata e raramente utilizzata!

Con una vasta conoscenza della programmazione PHP è possibile utilizzare la formattazione
predefinita di show_menu2 con il proprio.
Nella include.php di show_menu2 puoi vedere come scrivere il formattatore.
L’API che deve essere utilizzata è simile a questa:

class SM2_Formatter{ // called once before any menu is processed to allow object initialization function initialize() { } // called to open the menu list function startList($aPage, $aUrl) { } // called to open the menu item function startItem($aPage, $aUrl, $aCurrSib, $aSibCount) { } // called to close the menu item function finishItem() { } // called to close the menu list function finishList() { } // called once after all menu has been processed to allow object finalization function finalize() { } // called once after finalize() if the SM2_NOOUTPUT flag is used function getOutput() { }};

Websitebakerè rilasciato sotto la GNU General Public License

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.