meniuri Multiple

show_menu2, versiunea 4.9 x

Show_Menu2 este un fragment de cod pentru WebsiteBaker CMS. Deoarece WebsiteBaker 2.7 este inclus cu CMS.
fosta funcție show_menu este complet înlocuită și extinsă cu show_menu2. Toate datele necesare pentru a crea meniul este generat de o singură interogare bază de date. Prin posibilități extinse de ajustare a codului HTML generat toate tipurile de meniu posibile (liste, pesmet, sitemap-uri, etc.) pot fi generate.

  • instalare
  • folosind Show_Menu2
  • Întrebări frecvente
  • funcție
  • ieșire HTML
  • parametru
  • Opțiuni avansate
  • șiruri de Format
  • formatare condiționată
  • Formatter

installationup

deoarece show_menu2 este de obicei prezent în WebsiteBaker, nu este necesară instalarea. Dacă, contrar așteptărilor, nu există, îl puteți descărca aici.

utilizarea SHOW_MENU2up

pentru a utiliza show_menu2 trebuie să modificați șablonul în care doriți să apară meniul. Vă rugăm să rețineți: dacă apelurile de meniu vechi sunt înlocuite, trebuie folosiți și parametrii noi corespunzători de care are nevoie show_menu2.

în majoritatea cazurilor, apelul standard cu cel puțin 4 parametri ai show_menu2 este suficient. În acest caz sunt utilizate valorile implicite, aceasta creează un meniu care afișează pagina curentă și subpaginile paginii curente:

show_menu2(0, SM2_ROOT, SM2_START, SM2_TRIM);

vă rugăm să rețineți: apelul la show_menu2 este PHP și trebuie să fie în mod normal închise în caractere de cod PHP (cu excepția cazului în apelul este deja în interiorul cod PHP):

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

acest meniu implicit creează deja un meniu complet pe bază de listă cu mai multe clase care permit formatarea ușoară folosind CSS. De exemplu, clasa „meniu-curent” este adăugată la eticheta <li> a elementului de meniu curent. În plus, fiecare element de meniu al subitemelor conține clasa „meniu-extindere”. Acest lucru permite crearea unor reguli CSS foarte diferențiate pentru fiecare element de meniu.
de exemplu:

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

secțiunea” ieșire HTML ” conține o descriere detaliată a claselor care sunt atribuite elementului. Folosind diferiți parametri în apelul funcției show_menu2, este de asemenea posibil să creați structuri de meniu destul de extinse și diferite. De exemplu, pentru a afișa numai elementele de meniu de la nivelul superior al structurii meniului, puteți utiliza următorul apel:

show_menu2(0, SM2_ROOT, SM2_START, SM2_TRIM);

sau, de exemplu, pentru a afișa până la două subniveluri ale paginii curente:

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

există o mulțime de posibilități de a crea diferite structuri de meniu. Numeroase exemple pot fi găsite pe site-ul demo: KLICK

FAQup

Î: nu sunt programator. Nu există o documentație mai simplă?
A: Nu, pentru că aceasta este deja documentația simplă.

Î: Cum pot crea un meniu derulant?
A: Acest lucru nu are nimic de-a face cu show_menu2. Pentru a crea un meniu derulant, trebuie doar să ajustați codul CSS al șablonului respectiv. Ajustările necesare pot fi găsite, de exemplu, în șablonul „allcss2” din magazia Addon WebsiteBaker-> https://addon.websitebaker.org/

Î: De ce dispare meniul după ce am folosit funcția de căutare într-o pagină WebsiteBaker multilingvă?
A: liniile necesare lipsesc în șablonul utilizat:

1. În backend-ul administratorului WB: Opțiuni – > Afișați opțiuni avansate – > Opțiuni de căutare – > antet-introduceți următoarea linie imediat după deschiderea< formular > etichetă:

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

2. introduceți următoarea linie în index.php a șablonului utilizat imediat după deschiderea < forma > tag-ul de căutare:

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

Î: multilingv? Sună grozav. Cum o faci?
A: https://help.websitebaker.org/en/designerguide/multilingual-websites.php

Î: de fiecare dată când o pagină este apelată, SM2 generează următorul mesaj de avertizare:
„show_menu2 eroare: $aoptions este nevalid. Nu există steaguri din grupa 1 furnizate!”
A: Valorile greșite sau un număr greșit de valori au fost transmise funcției.
consultați secțiunea Parametri pentru ca valorile corecte ale steagului să treacă la parametrul $aoptions.

Î: Cum folosesc o clasă/imagine/culoare/widget diferită pentru fiecare intrare dintr-un meniu?
A: utilizați șirul de format din șirul $aitemopen. Creați o clasă sau un id unic pentru fiecare element de meniu, apoi faceți referire la acel element din CSS sau Javascript pentru a face orice doriți.
pentru a adăuga o clasă unică pentru fiecare element de meniu (sau similar):

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

… crearea elementelor de meniu cum ar fi …

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

referință acest lucru în CSS ca:

a.p45 { color: red; }

pentru a adăuga un ID unic pentru fiecare element de meniu (sau similar):

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

… crearea elementelor de meniu cum ar fi …

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

referință acest lucru în CSS ca:

a#p45 { color: red; }

rețineți că ID – ul poate fi utilizat numai dacă acel meniu este generat și afișat o singură dată pe pagină (deoarece ID-ul HTML trebuie să fie unic într-o pagină).

FUNCTIONup

apelul complet și valorile implicite ale parametrilor pentru show_menu2 sunt după cum urmează:

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);

secțiunea „Parametri” conține o descriere detaliată a fiecărui parametru individual.
fiecare parametru trebuie utilizat absolut corect. Următoarele reguli vă pot ajuta:

$aMenu = 0 este cea mai bună valoare în majoritatea cazurilor.
$aStart trebuie să fie fie un ID de pagină, fie o valoare care începe cu „SM2_”.
$amaxlevel poate obține numai valori începând cu”SM2_”.
$ aOptions cu excepția câtorva cazuri speciale sunt permise numai valori care încep cu „SM2_”.
toți ceilalți parametri conțin etichetele (HTML)care controlează ieșirea meniului.
pornind de la $aitemopen fiecare parametru poate fi trecut valoarea false pentru a obține valoarea implicită respectivă.

aceasta poate fi utilizată, de exemplu, pentru a crea o listă numerotată, în timp ce valorile implicite sunt încă utilizate pentru elementele de meniu individuale:

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

vă rugăm să rețineți: până la și inclusiv $aOptions toți parametrii trebuie să fie transmise în mod explicit!

ieșire HTML

ieșirea HTML depinde în mare măsură de parametrii care sunt transmiși funcției. Indiferent de aceasta, clasele ulterioare sunt întotdeauna utilizate pentru fiecare meniu, prin care elementele de meniu individuale pot avea, de asemenea, mai multe clase, dacă este necesar.

clasa atribuire
meniu-top numai primul element de meniu.
meniu-părinte orice element din meniul principal.
meniu-curent numai elementul de meniu al paginii curente.
meniu-frate toate „frații” din pagina curentă.
meniu-copil orice submeniu al paginii curente.
meniu-extindeți orice meniu care are submeniuri.
meniu-primul primul element al oricărui meniu sau submeniu.
meniu-ultimul ultimul element al oricărui meniu sau submeniu.
următoarele clase sunt adăugate numai dacă este setat steagul SM2_NUMCLASS:
meniu-N fiecare element de meniu, unde N reprezintă adâncimea absolută a meniului, începând cu 0, a elementului de meniu respectiv.
deci, nivelul superior este întotdeauna meniu-0, următorul nivel este meniu-1 și așa mai departe.
meniu-copil-N fiecare submeniu al paginilor curente, unde N reprezintă adâncimea relativă a submeniului, începând cu 0.

exemplu de ieșire 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

$aMenu

Numărul de meniu. Acest lucru este util pentru a utiliza mai multe meniuri pe o singură pagină. Numărul de meniu 0 este meniul implicit al paginii curente, SM2_ALLMENU returnează toate meniurile utilizate în sistem.

$aStart

Specifică nivelul de la care va începe crearea meniului. În majoritatea cazurilor, acesta va fi nivelul superior al meniului care va fi afișat. Se poate utiliza una dintre următoarele valori:

SM2_ROOT+N

pornește n niveluri sub nivelul superior, de exemplu:

SM2_ROOT pornește de la nivelul superior
SM2_ROOT+1 pornește un strat sub stratul superior
SM2_ROOT+2 pornește două niveluri sub nivelul superior

SM2_CURR+N

începe n niveluri sub nivelul curent, de exemplu:

SM2_CURR pornește de la stratul curent. Toți frații nivelului curent
SM2_CURR + 1 Începe un strat sub stratul curent cu toate subnivelurile.

page_id

utilizează pagina cu ID-ul paginii specificat ca element părinte.
sunt afișate toate submeniurile acestei pagini. (ID-ul paginii poate fi determinat prin editarea paginii în backend-ul administratorului, acesta va fi afișat în bara de adrese a browserului: http://SITE/admin/pages/modify.php?page_id=35

$aMaxLevel

numărul maxim de niveluri care pot fi afișate. Afișajul
pornește de la nivelul specificat în $aStart, până la nivelul specificat aici.
SM2_ALL

nici o restricție, toate nivelurile sunt afișate.

SM2_CURR + n

afișează întotdeauna pagina curentă + n niveluri.

SM2_CURR curent strat (nici un substrat)
SM2_CURR+3 toate părinte + curent + 3 subnivele

SM2_START+N

începe întotdeauna la nivelul de pornire + n niveluri.
nivelurile sunt afișate indiferent de nivelul pe care se află pagina curentă.

SM2_START un singur nivel de la nivelul de pornire.
SM2_START + 1 Nivel de pornire + un nivel mai jos.

SM2_MAX+n

afișează un maxim de n niveluri de la nivelul de pornire.
straturile sub nivelul curent nu sunt afișate.

SM2_MAX numai planul de pornire (același efect ca SM2_START)
SM2_MAX+1 Nivelul de pornire și un nivel sub acesta.

$aoptions

steaguri speciale pentru diferite opțiuni de generare meniu. Ele pot fi combinate între ele folosind o legătură OR ( / ).
de exemplu, pentru a defini atât TRIM cât și PRETTY, utilizați : (SM2_TRIM | SM2_PRETTY).

grup 1
——-
un steag trebuie să fie întotdeauna specificat din acest grup. Aceste steaguri determină modul în care elementele frate din arborele de meniu sunt suprimate în ieșire.

SM2_ALL

Afișează toate ramurile arborelui de meniu

 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

Afișează toate meniurile frate ale paginii în calea curentă.
toate submeniurile de elemente care nu sunt în cale.
sunt eliminate.

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

SM2_CRUMB

afișează calea breadcrumb a meniului, adică elementul de meniu
curent și toate elementele de meniu care duc la acesta.

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

SM2_SIBLING

ca SM2_TRIM, dar sunt afișate numai meniurile frate ale paginii curente. Toate celelalte elemente sunt suprimate.

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

grup 2
——-
aceste steaguri sunt opționale, ele pot fi combinate în orice număr.

SM2_NUMCLASS

adaugă clasele de meniu numerotate „meniu-N” și „meniu-copil-N”.

SM2_ALLINFO

încarcă toate câmpurile din tabelul de pagini al bazei de date.
acest lucru determină un consum de memorie destul de mare și ar trebui să fie
ar trebui, prin urmare, utilizat cu precauție.
aceasta înseamnă, de exemplu, că cuvintele cheie, descrierea paginii și
toate celelalte informații disponibile care în mod normal nu sunt
pot fi încărcate.
vă rugăm să rețineți: acest pavilion trebuie să fie setat la primul apel de schow_menu2
poate fi utilizat pentru ID-ul de meniu respectiv, sau în combinație cu
cu SM2_NOCACHE, altfel nu are nici un efect.

SM2_NOCACHE

datele citite din Baza de date nu sunt reutilizate atunci când show_menu2 este apelat din nou, dar este citit din nou din Baza de date.

SM2_PRETTY

aduce ieșirea HTML a meniului cu spații libere și
pauze de linie într-o formă lizibilă. Acest lucru este util mai ales atunci când depanați ieșirea din meniu.

SM2_BUFFER

nu emite codul HTML direct, ci îl salvează intern și îl scoate ca un șir complet.

SM2_CURRTREE

exclude toate celelalte meniuri de nivel superior de la vizualizare.
sunt afișate numai elementele de meniu din ramura de meniu curentă.
dacă este necesar, acest steag poate fi combinat cu orice steag din grupa 1.

SM2_ESCAPE

aplică htmlspecialchars la șirul de meniu.
acest lucru poate fi necesar pentru instalările WebsiteBaker mai vechi.
pentru a genera o ieșire HTML validă.

SM2_SHOWHIDDEN

paginile ascunse sunt de obicei ascunse tot timpul, inclusiv atunci când sunt active (adică pagina curentă sau o pagină părinte).
utilizați pagini private pentru perioada în care doriți ca paginile să fie ascunse, cu excepția cazului în care sunt active. Cu toate acestea, pentru compatibilitate cu versiunea 4.8, furnizați acest steag pentru a permite paginilor ascunse să devină vizibile atunci când sunt active.

SM2_XHTML_STRICT

asigură compatibilitatea XHTML a legăturilor prin eliminarea specificației țintă în link-uri formatate cu sau și inserarea argumentului title=””. Pentru legăturile compilate manual, proiectantul este responsabil pentru conformitatea XHTML.

SM2_NO_TITLE

suprimă ieșirea conținutului atributului titlu pentru sau link-uri formatate.
pentru acest parametru există și un mod extins în care opțiunile sunt transmise ca matrice asociativă. Consultați secțiunea Opțiuni avansate pentru detalii. Cu toate acestea, pentru majoritatea aplicațiilor, acest lucru nu este necesar.

$aItemOpen

aceasta definește șirul de format cu care este pornit fiecare element de meniu individual. Un șir de format diferit poate fi definit pentru primul element de meniu folosind $aTopItemOpen.
dacă acest parametru este setat la false, șirul de format implicit
‘</a> ‘ pentru a asigura compatibilitatea cu funcția standard WebsiteBaker show_menu().
deoarece formatarea folosind clasele CSS este adesea mai ușoară atunci când este aplicată etichetei < A>, se recomandă utilizarea următorului șir de format: ‘<li></A>’.
acest parametru poate fi folosit și ca instanță a unei clase de formatare pentru meniu. O descriere mai detaliată poate fi găsită în secțiunea FORMATTER. Dacă un formator este specificat aici, toate argumentele după $aitemopen sunt ignorate.

$aitemclose

acest șir completează fiecare element de meniu. Vă rugăm să rețineți: Acesta nu este un șir de format și nu vor fi înlocuite cuvinte cheie!
dacă acest parametru este setat la false, se utilizează valoarea implicită ‘</li>’.

$aMenuOpen

acest șir de format deschide o listă de elemente de meniu. Un șir de format diferit poate fi definit pentru primul meniu folosind $aTopMenuOpen.
dacă acest parametru este setat la false, se utilizează valoarea implicită”.

$aMenuClose

acest șir completează fiecare meniu. Vă rugăm să rețineți: Acesta nu este un șir de format și nu vor fi înlocuite cuvinte cheie!
dacă acest parametru este setat la false, se utilizează valoarea implicită ‘</ul>’.

$aTopItemOpen

șirul de format pentru primul element de meniu. Dacă acest parametru este setat la fals, se utilizează același șir de format ca și pentru $aitemopen.

$aTopMenuOpen

șirul de format pentru primul meniu. Dacă acest parametru este setat la false, se utilizează același șir de format ca $aMenuOpen.

ADVANCED OPTIONSup

parametrul $aoptions poate fi utilizat în două moduri. În primul rând, așa cum este descris mai sus în secțiunea Parametri, acest tip ar trebui să fie suficient pentru marea majoritate a cazurilor de utilizare. Cu toate acestea, pentru a putea aborda opțiunile speciale în cazuri speciale, valorile necesare trebuie furnizate ca o matrice asociativă.
vă rugăm să rețineți: steagurile SM2_ * sunt, de asemenea, necesare aici și trebuie transmise ca ‘steaguri’.

‘steaguri’

**CONCELAR obligatoriu** acestea sunt steagurile descrise mai sus în secțiunea Parametri sub $aOptions.

‘notrim’

aceasta definește un număr de niveluri care sunt întotdeauna afișate în raport cu nivelul de meniu definit în $aStart. Acest lucru face ca steagul SM2_TRIM să fie ignorat pentru aceste niveluri.

pentru a utiliza această matrice, este recomandat să o creați mai întâi și apoi să furnizați parametrul $aoptions cu matricea creată:

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

FORMAT STRINGSup

următoarele etichete pot fi utilizate în șirurile de format pentru $aitemopen și $aMenuOpen și ar trebui înlocuite cu textul corespunzător.

<o etichetă> fără clasă:

'<a href="" target="">'
<A > etichetă cu clasă:

'<a href="" target="" class="">'
<li > etichetă cu clasă:

'<li class="">'
<ul > etichetă cu clasă:

'<ul class="">'
lista claselor pentru această pagină
textul titlului meniului
(entitatea HTML a scăpat, cu excepția cazului în care este setat steagul SM2_NOESCAPE)
URL-ul la un fișier imagine cu normal-reprezentare
adresa URL a unui fișier imagine cu afișaj activ / hover
textul titlului paginii
(entitatea HTML a scăpat, cu excepția cazului în care este setat steagul SM2_NOESCAPE)
adresa URL a unui fișier imagine legat de pagină
URL-ul paginilor pentru eticheta <a>
pagina țintă pentru< A > tag
ID-ul paginii elementului de meniu curent.
ID-ul paginii elementului de meniu părinte.
nivel de pagină, acesta este același număr utilizat în eticheta CSS „menu-N”.
Numărul de frați ai elementului de meniu curent.
numărul tuturor fraților din acest meniu.
condiție (consultați secțiunea „Formatare condiționată” pentru detalii)

următoarele etichete sunt disponibile numai dacă este setat steagul SM2_ALLINFO.

descrierea paginii
cuvinte cheie ale paginii

Formatare condiționată

instrucțiunea de formatare condiționată poate lua una dintre următoarele forme:


A

condiția. A se vedea mai jos pentru detalii.

B

expresia utilizată atunci când condiția este îndeplinită.
acesta poate fi orice șir care nu conține caracterul ‘}’.
poate conține. Poate conține orice șir de format din secțiunea
șiruri de Format’ , dar nici un test de condiție suplimentară (deoarece caracterul ‘}’ nu este permis).

C

expresia utilizată atunci când condiția nu este îndeplinită.
acesta poate fi orice șir care nu conține caracterul ‘}’.
poate conține. Poate conține orice șir de format din secțiunea
șiruri de Format’ , dar nici un test de condiție suplimentară (deoarece caracterul ‘}’ nu este permis).

condiția este o combinație a uneia sau mai multor comparații booleene.
dacă este necesară mai mult de o comparație, aceasta trebuie combinată cu celelalte comparații
pot fi legate folosind || (boolean sau – sau) sau && (boolean și – și).

o singură comparație constă din operandul stâng, operatorul și operandul drept.
de ex.X == Y – unde X este operandul stâng, == operatorul și Y operandul drept.

operand stânga. Trebuie să fie unul dintre următoarele cuvinte cheie:
clasa verificați dacă această clasă există. Numai „= = „și”!= „operatorii sunt permise. În acest caz, operatorii au sensul „conține” sau „nu conține” în loc de „este egal” sau „nu este egal”.
nivel Verificarea nivelului paginii.
sib verificați numărul de frați pe pagina curentă.
sibCount verificați numărul total de frați din meniul curent.
id verificați ID-ul paginii.
țintă verificarea specificației țintă.
centrala. Trebuie să fie una dintre următoarele:
< Mai Puțin De
<= mai mică sau egală cu
== egal
!= nu este egal
>= mai mare sau egal cu
> mai mare decât
operand dreapta. Tipul acestui operand depinde de cuvântul cheie utilizat pentru operandul stâng.
clasa unul dintre numele clasei „meniu -*”, așa cum se specifică în secțiunea „ieșire”.
nivel verificați nivelul paginii în raport cu următoarele valori:

  • <număr> nivelul paginii absolute
  • root este nivelul superior al paginii
  • granny un nivel de pagină deasupra nivelului paginii părinte
  • părinte nivelul paginii părinte
  • curent nivelul paginii curente
  • copil nivelul paginii subordonate
id verificați ID-ul paginii cu următoarele valori:

  • < număr> ID-ul paginii absolute
  • părinte ID-ul paginii părinte
  • curent ID-ul paginii curente
sib un număr întreg pozitiv sau „sibCount” pentru a verifica numărul de frați din acest meniu.
sibCount un număr întreg pozitiv
țintă un șir care reprezintă o posibilă specificație țintă.
următoarele exemple au ca rezultat „adevărat” și expresia {exp} este executată dacă este adevărat:
are un submeniu
dacă prima intrare într-un meniu este
nu este primul element dintr-un meniu
dacă ultima intrare dintr-un meniu este
Situat la cel mai înalt nivel
nu este la nivelul superior
dacă a doua intrare într-un meniu este
dacă într-un meniu cu mai multe intrări
este într-un meniu asta nu are exact 2 elemente
se află într-un meniu frate sau în submeniul unui meniu frate
este punctul părinte al id-ului curent
șirul ‘_self’ este conținut în atributul țintă.

dacă se adaugă o clauză else, aceasta va fi executată în toate celelalte cazuri.
de exemplu, ” foo ” este întotdeauna executat atunci când verificarea if este greșită, deci:

nu este al doilea element din meniu
nu se află într-un meniu cu mai mult de două intrări
în comparații multiple, expresia „exp” este executată numai dacă:
este prima intrare sau este a patra sau mai mare intrare din meniu
dacă intrarea curentă este și are submeniuri

vă rugăm să rețineți:
toate verificările vor fi efectuate în ordinea în care sunt notate, deoarece:

  • nu există nicio verificare pentru bucle posibile (toate verificările sunt întotdeauna executate).
  • controalele nu sunt grupate (paranteze de controale nu sunt acceptate)
  • ambele aceste lucruri au aceeași valoare.

FORMATTERup

atenție: aceasta este o caracteristică avansată și rar utilizată!

cu cunoștințe extinse în programarea PHP, este posibil să utilizați formatarea predefinită
a show_menu2 cu propria dvs.
În include.php de show_menu2 puteți vedea cum să scrie formatatorul.
API-ul care trebuie utilizat arată astfel:

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() { }};

site-ul Webbakereste lansat sub Licența Publică Generală GNU

Lasă un răspuns

Adresa ta de email nu va fi publicată.