Podrobnosti o * .TPL súbory dle šablóny ich účel. Použitie TPL Files TPL PHP šablóny, ako používať

Ihneď poviem, že som už napísal o tejto téme :. Avšak, nie každý pochopil tento materiál, a ja som sa rozhodol vrátiť sa k nemu a napísať všetko trochu inak. Nie je žiadnym tajomstvom, že žiadny vážny motor nebude nikdy zmiešaný vo vašom kóde. Html a Php.. Ale, Html a Php. Kódy sú veľmi úzko prepojené, takže aby neporušili pravidlá "dobrého tónu", boli vynájdené tPL súbory. Tieto súbory sú uložené HTML kód so zložkami šablónktorí sú nahradení Php kód. Pozrime sa viac podrobnejšie použitie súborov TPL S príkladom.

Vezmeme si s vami Najzákladnejší príklad je užívateľský panel, kde je jeho avatar a pozdrav podľa mena. V prvom rade vytvorte súbor TPL.a nechajte ho volať userpanel.tpl. Pripomínam vám, že je to len kúsok HTML kód so zložkami šablón:

Dobrý deň,% Názov%!




Nič zložité, je to len obyčajné HTML kód. Iba namiesto určitých hodnôt stojí za to % Prvky_sablon%.

Teraz to vymyslíme Spracovanie PHP. Všetko bude viac ako abstraktné, ale, bohužiaľ, akýmkoľvek spôsobom. Hlavnou vecou je pochopiť princíp práce. Tak Php kód Na vytvorenie spracovania súbor TPL.:

/ * Táto funkcia, aj keď používa pufre, ale podstata základného: vráti obsah súboru * /
Funkcia GetTemplate ($ name)
Ob_start (); // Začnite šetriť výstup do vyrovnávacej pamäte
Zahrnúť ($ name. "TPL"); // Pošlite obsah súboru do vyrovnávacej pamäte
$ Text \u003d ob_get_clean (); // Vyčistite vyrovnávaciu pamäť a vráťte obsah
Návrat $ text; // textový návrat zo súboru
}
$ Name \u003d "Nikolai"; // odstránené zo základne
$ avatar \u003d "avatars / user_15.jpg"; // odstránené zo základne
/ * Začína nahradiť prvky šablóny pre skutočné údaje * /
$ Userpantel \u003d str_replace (
Pole (
"% Názov%",
"% avatar%"
),
Pole (
Menom
$ avatar
),
Gettemplate ("userpanel")
);
Echo $ userpanel; // zobraziť konečný výsledok
?>

Toto je najjednoduchšia možnosť. Všetko komentované, takže by nemali byť žiadne otázky pre tento príklad. A v skutočnosti, každá stránka pozostáva z takýchto blokov. Vaša úloha Urobte správne bloky (funkcia gettemplate ()), Vymeňte potrebné údaje (funkciu Str_replace () a získané údaje, napríklad z základne) a potom jednoducho pripojte všetky bloky ako bežné riadky a výstup na stránku.

Určite bez Oop Bude tu veľmi problematické. Zvýšte si taký počet podmienok (veľa stránok), čo sa rýchlo zamieša. Ale princíp používania tPL súboryDúfam, že ste si uvedomili. Ďalej premýšľať o tom, ako zabaliť OopTakže všetko je čo najjednoduchšie, pokiaľ ide o pochopenie kódu a jeho údržby v budúcnosti.

Po vytvorení info.- V zásade je táto téma už definovaná. To znamená, že môžete prejsť do časti správy v teréne. http://mysite.ru/admin/build/themes. A uveďte svoju tému. Samozrejme, po zapnutí neho žiadny dizajn nevidíte - stránka získa štýl "Black on White" - na bielom pozadí čierny text.

Chcem si však poznamenať, že napriek tomu, že v našej téme neexistujú žiadne súbory mytheme.info. neklamní, stránka bude fungovať tak, ako predtým - stiahnuť všetok obsah, pridať bloky do regiónov ( http://mysite.ru/admin/build/block) atď. To je vysvetlené skutočnosťou, že jadro Drupal povinné modulyAj s úplnou absenciou všetkých súborov vo vašej téme (s výnimkou informačného súboru) vám umožní pokračovať v práci s Drupal.

V zásade, všetky vytvorenie šablóny zostupuje na prekročenie súborov šablón (majú rozšírenie .tpl.php.) Štandardné moduly nášho Cms..

Najdôležitejší súbor TPL (TPL je zníženie Šablóny., šablóna) page.TPL.PHP.. Je zodpovedný za vybudovanie každej stránky stránky. Poďme sa zaoberať tým, čo je súbor šablón:

  • hTML kód
  • php kód
  • kód JavaScript (nie je potrebné)

V každej šablóne súboru, Drupal prenáša údaje o lokalite vo forme štandardných premenných. Pre každý súbor šablón existujú 2 typy premenných:

  • premenné, ktoré sa prenášajú len do tohto súboru.
  • premenné, ktoré sa prenášajú do všetkých súborov

Tu je zoznam všetkých premenných pre page.TPL.PHP.:

Všeobecné premenné (pre všetky súbory):

  • $ Base_path - základná cesta, kde bol nainštalovaný Drupal
  • $ CSS. - Array CSS súborov pripojených k aktuálnemu súboru šablón
  • $ Adresár. - cesta do priečinka, v ktorej je táto téma nainštalovaná
  • $ is_front - vráti hodnotu pravdy, ak ste na hlavnej stránke
  • $ Logged_in. - vráti hodnotu pravdy, ak ste prihlásený
  • $ is_admin. - vráti hodnotu pravdy, ak máte prístup k administrácii

Stránky metaúdajov

  • Jazyk $. - (objekt) Aktuálny jazykktorý sa zobrazí na stránke
  • $ Jazyka-\u003e Jazyk - obsahuje svoje zastúpenie textu
  • $ Jazyka-\u003e dir - obsahuje smer jazyka. Alebo bude "LTR" (vľavo-vpravo) alebo "RTL" (vpravo doľava)
  • $ Head_title - Upravená verzia názvu stránky pre použitie medzi značkami
  • $ Hlavu. - vložené medzi tagy . Obsahuje meta tagy, kľúčové slová atď.
  • $ štýly. - používa sa na stiahnutie všetkých cSS.-Predajne na aktuálnu stránku
  • $ skripty. - používa sa na stiahnutie všetkých javascript "OV na aktuálnu stránku
  • $ body_classes - súbor tried cSS. Pre tag . Obsahuje informácie o aktuálnom usporiadaní stĺpcov na mieste, ich číslo, aktuálnu adresu URL "E atď.

Informácie o stránke

  • $ Front_page. - Adresa hlavnej stránky stránky. Je lepšie použiť túto premennú na účely odkazu na hlavná stránkapretože Zahŕňa jazyk domény a prefix
  • $ logo - cesta k logu lokality, ak je súčasťou stránky
  • $ Stránky_name. - Názov siete. Môže byť prázdny, ak ho vypnete v funkciách v informačnom súbore. Nakonfigurovaný v Mysite.ru/admin/settings/site-information
  • $ SEQUE_SLOGAN. - Slogan stránky. Môže byť prázdny, ak ho vypnete v funkciách v informačnom súbore. Nakonfigurovaný v Mysite.ru/admin/settings/site-information
  • $ Misie - Stránka misie. Môže byť prázdny, ak ho vypnete v funkciách v informačnom súbore. Nakonfigurovaný v Mysite.ru/admin/settings/site-information

Navigácia

  • $ search_box - Obsahuje kód HTML, ktorý zobrazuje vyhľadávací reťazec. Môže byť prázdny, ak ho vypnete v informačnom súbore
  • $ primary_links.
  • $ Sekundárne. - Pole, ktorá obsahuje navigačné odkazy pre stránku, ak sú povolené v funkciách informačného súboru

Predvolený obsah stránky

  • $ Doľava. - región. Obsahuje HTML kód pre ľavý stĺpec. Ak v informačnom súbore nastavíte všetky regióny, potom zmizne
  • $ Strúhadlo. - "chlieb"Pre aktuálna stránka
  • $ title - Názov stránky
  • $ Pomoc. - Dynamické tipy, zobrazené hlavne v admin
  • $ Správy. - Zobrazuje chyby a upozornenia na stránke
  • $ Kartu. - Odkazy (karty) Pripojenie aktuálnej stránky so svojimi poddradami (napríklad pre výrobok - s jeho editáciou)
  • Obsah $ - Aktuálna stránka obsahu
  • právo $ - región. Obsahuje HTML kód pre pravý stĺpec. Ak v informačnom súbore nastavíte všetky regióny, potom zmizne

Dolné územie / uzávierkové údaje

  • $ Feed_icon. - reťazec so všetkými ikonami spätná väzba Pre aktuálnu stránku
  • $ Footer_Message. - Správa v dolnej časti stránky. Nakonfigurovaný v Mysite.ru/admin/settings/site-information
  • $ Päty. - región. Obsahuje HTML kód pre spodnú časť stránky. Ak v informačnom súbore nastavíte všetky regióny, potom zmizne
  • $ uzáver. - Zatvorenie štítku pre všetky moduly, ktoré ste zmenili stránku. Táto premenná sa musí zobraziť po všetkom dynamickom obsahu. Najlepšie pred zatvorením tagového tela

Všetky sú tu uvedené Štandardné premenné. Ale tu môžete pridať svoje premenné buď ako regióny info.- Alebo v akejkoľvek inej úlohe prostredníctvom súboru template.php. (o ňom o ňom o niečo neskôr).

Teraz ukážem, aký kód by mal byť v page.TPL.PHP. A v akomkoľvek kóde je potom interpretovaný prehliadačmi. Pred vami page.TPL.PHP.:

V prvom riadku sa nachádza kontrola, či je na aktuálnej stránke titulok. Ak to nie je - potom debugger jednoducho chýba tento kód, a nebude k nemu prísť na koniec. Ak existuje hlavička, kód stránky sa pridá do HTML

, Potom, čo bude vytlačený názov stránky, a to všetko bude zatvorené značkou

. Ak sa pozriete na kód tejto stránky v prehliadači, potom by to vyzeralo:

Lekcia 4. Potrebné súbory na vytvorenie šablóny. Page.TPL.PHP.

Takto sú takmer všetky premenné stránok otočené. Toto sa robí tak, že môžeme predpísať štýly pre obsah, nevedieť, čo sa stane.

Týmto spôsobom vyzerá Štandardný súbor. page.TPL.PHP.Kto ide spolu s Drupal. Zmeňte názov tried, usporiadajte premenné na niektorých miestach - a zistite, čo sa ukáže. Je potrebné, aby "napučali", ako to funguje a čo je výsledkom.

"- // W3C // DTD XHTML 1.0 Strict // EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> "http://www.w3.org/1999/XHTML" XML: Lang \u003d "jazyk?\u003e " lang \u003d. "jazyk?\u003e " dir \u003d. "dIR?\u003e "> <?php print $head_title ; ?> "" >

Drahí priatelia,

pokračujeme v publikácii série užitočných tipov, ktoré uľahčujú pochopenie niektorých akcií a funkcií skriptu. Nedávno, otázky často prichádzajú k nám s požiadavkou, aby sa modifikácia skriptu tak, že môžete použiť rôzne šablóny pre rôzne časti miesta. Napríklad hlavná stránka s novinkami by mala mať jednu štruktúru rozloženia, a napríklad stránka spätnej väzby je úplne iná. Zároveň, motivujúce nám, že je možné meniť vzory v paneli administrátora len pre kategórie nových správ. V skutočnosti to všetko môže byť implementované štandardnými prostriedkami, ktoré tento malý článok pôjde.

Takže prvá vec, ktorú musíme obrátiť na skriptovú dokumentáciu, ktorá znie, že šablóna main.tpl Podporuje nasledujúce značky:

Text, ktorý zobrazuje text uzavretý v značkách, ak je vyhľadávaná časť stránky.


aj táto tag má opak

Text, ktorý zobrazuje text uzavretý v značkách, ak ste navyše zobrazený oddiel okrem uvedeného


Príklad úlohy: Uistite sa, že stránka používa jeden dizajn šablóny a spätná väzba na stránke použila druhú. Na základe toho musíme otvoriť šablónu. main.tpl a zadajte nasledovné:

Tu je celý text šablóny zobrazený pri prezeraní spätnej väzby
Tu je celý text šablóny, ktorý sa zobrazí všade okrem spätnej väzby


Ale má jeden veľký mínus, váš hlavný súbor šablóny main.tpl Bude to príliš veľké, pretože V podstate budú existovať dva rôzne návrhy, a tu opäť apelovať na dokumentáciu a skript a dozviete sa o existencii krásnej značky: (Zahrnúť súbor \u003d "my_block.tpl")ktorý pripája zadaný súbor My_Block.tpl do šablóny.

Na základe všetkých vyššie uvedených je konečná implementácia: \\ t


V súbore šablón spätná väzba_main.tpl Urobíme dizajn spätnej väzby a v súbore all_main.tpl robíme dizajn zvyšku stránky. To je vlastne, všetko je jednoduché a ľahko implementovať, nie je potrebné vyrábať žiadne úpravy skriptu. Môžete tiež umiestniť návrh akejkoľvek oblasti, môžete kombinovať niekoľko sekcií atď. Čítajte viac a opatrnejšie, prečítajte si dokumentáciu pre skript, existuje pomerne veľa užitočných na zdôraznenie pre seba.

Tvoje verne,


Separácia dátovej logiky z logiky ich displeja je veľmi dôležitou súčasťou vývoja webového vývoja.
Každý programátor, ktorý vzrástol o niečo vyššie ako úroveň "Hello World", začína cítiť potrebu takéhoto rozdelenia. Ale nie každý príde na správne závery a riešenia.
Preto tu uvediem najdôležitejšie pravidlá:
1. Prijímanie kódu a kód dát musí byť rozdelený.
2. Akýkoľvek záver by mal začať až po tom, ako sú všetky údaje pripravené na to.
3. Výsledkom je, že akýkoľvek skript by sa mal zaoberať iba spracovaním údajov. Potom môže poslať niektoré NTTR nadpisu alebo zavolať šablónu, ktorá sa na neho prenesie pripravené údaje, alebo oboje.
4. Čo presne použiť desatinu je prípad. Najjednoduchšie a najdostupnejšie - samotné RNR, takže príklady sa na ňu dostanú.

Nesprávna predstava
Nie, pravdepodobne, v programovom webe, je téma taká zrejmá, as nepochopiteľná ako šablóny. Každý, skôr alebo neskôr, dôjde k uzavretiu potreby používať šablóny. Ale z nejakého dôvodu, cez niektoré z najdivokejších mylných predstáv a fantázie.

Najjednoduchšia a zjavná mylná predstava je, že nováčikovia sa nazývajú šablóna vyrobená v samostatnom "dizajne" súbor - zdieľaný HTML pre všetky stránky stránky. A upokojiť. DYNAMICKÉ INFORMÁCIE, NIE KRÁTKA, ZRUŠENIE STARÝCH ROZHODNUTÝCH ECHO :-)
V skutočnosti sa templátor zaoberá hlavne na výstup meniaceho obsahu stránok stránok. A záver "dizajnu" je menšia úloha.

Fantazie sú hlavné dve:
1. Šablóny sú potrebné na "dizajnér", aby ich mohol upravovať bez porozumenia PHP.
2. V dôsledku toho šablóny slúžia na oddelenie PHP z HTML.

Pokúsme sa premýšľať o prvom vyhlásení. Kto je dizajnér? Toto je osoba, ktorá pracuje vo Photoshope. HTML Najčastejšie nevie vôbec. A nad šablónou je buď špeciálna vrstva alebo - najčastejšie ... Programátor sám! Funny, nie?
Teraz dôsledok, o oddelení PHP z HTML. Vynikajúce. Predtým je to Svätý gól oddeliť. Preto prichádzame s inteligentným a napíšte:
(Foreach Key \u003d CID položka \u003d con z \u003d $ kontakty)
($ con. meno) - ($ con.nick)

(/ pre každý)

Viac zábavnejšie.
"Designer", pre ktorý sa všetko stálo, omdlení zo šťastia.

Teória
Ukazuje sa, že naše dôvody, pre ktoré sme sa rozhodli používať šablóny, nestojí za penny. A čo teraz - nie je potrebné, ukáže sa, že vôbec? Potrebujú. Ale najprv musíte odpovedať na otázku - "Prečo?" Prečo Potrebujeme vzory. A skontrolujte postup odozvy. Spýtal som sa mnohokrát túto otázku. Ale takmer nikto nemôže odpovedať. Prečo potrebuje šablóny. Ukazuje sa, že ľudia niečo robia, nevedia prečo.
Toto je zábavná vec.

Počas ich aktivít, ako webový programátor, som formuloval tri dôvody pre seba, pre ktoré šablóny potrebujú osobne. V podstate sú dvaja z nich. A ísť dole, nakoniec, na jednu:

Jeden kód - niekoľko zobrazení.

Často sa to stane, že namiesto jedného informácií, ktoré potrebujete na zobrazenie iného. Napríklad pracovný kód s databázou dostane chybové hlásenie namiesto textu. V tomto prípade namiesto spravodajskej stránky musíte ukázať úplne inú - s ospravedlnením a požiadavkou, aby ste prišli neskôr. Používanie šablón sa to robí elementárnym.

Často by sa mali uviesť jeden a tie isté informácie v niekoľkých druhoch. Napríklad pravidelná stránka a tlačová stránka. Informácie sú rovnaké, kód pre jeho prípravu je rovnaký a výstupný kód je iný. Tvárou v tvár tejto situácii, veľmi rýchlo rozdeliť kód na dve časti, z ktorých jeden je zodpovedný za výstup, a druhá nereaguje. Ďalší príklad: Povedzme, že sme chceli získať informácie nie sú priamo do HTML, ale prostredníctvom požiadavky AJAX, v JSON formáte. Ak by sme boli použité templatizer, potom sa zmeníme v našom kóde, presne jeden riadok - Zavolajte Templatelizátor na volanie json_encode (). A ak bol náš záver zmiešaný s kódom akvizície údajov, potom kód by musel prepísať celý!

V podobnej situácii: povedzme, náš skript je na dvoch stránkach. Plus kópiu nás doma. A doma sme našli veľkú chybu. Vytrievať. Teraz musíte aktualizovať kód na stránkach. A tak je to okamih pravdy: Ak sa šablóny boli použité správne, potom jednoducho naliať kódu na oboch lokalitách a všetko pokračuje v práci, akoby sa nič nestalo! Takáto situácia, ako si myslím, je ideálna kontrola vybraného prístupu k šablóne.

Ďalší dôležitý bod, ktorý mnohí chýbajú (v ich teoretickom odôvodnení, pričom ho neustále čelia v praxi!) - postup vykonávania skriptu nie je vždy zhodný s poradím výstupu v šablóne. Príklad učebnice je výstup hlavičky článku v značke . Ak by sme získali informácie, keď prídete, jednoducho to nemôžeme urobiť - klobúk <i>už</i> Vydané, v čase, keď sme začali prijímanie textových správ.</p><p>Treba tiež pripomenúť, že okrem textu RNR, skripty tiež výstup HTTP titulky. Ktoré sú potrebné na zobrazenie pred akýmkoľvek textom, alebo dokonca namiesto textu vo všeobecnosti (ak napríklad chceme presmerovať používateľa na inú stránku). Ak najprv implementujeme logiku aplikácie, bez toho, aby sme vám dali čokoľvek, potom nám neposkytujete potrebný NTTR, ktorý nám pre nás pre nás.</p><p>Môžete mať svoje vlastné dôvody na používanie šablón. Ale len s jednou podmienkou - tieto dôvody musia byť spôsobené skutočnou, životne dôležitou nevyhnutnosťou, a nie "najvyššie úvahy" a starostlivosť o niektorých neznámych ľudí.</p><p><b><a name="example">Prax</a> </b><br> Teraz z teórie sa obraciame na prax. <br> V najjednoduchšom prípade sa v zobrazení akejkoľvek stránky vždy zúčastní dva šablóny: spoločná šablóna webových stránok a betónový šablóny obsahu stránky. <br> Predpokladajme, že chceme vytvoriť stránku s odkazmi na stránky priateľov. <br> V tomto prípade bude kód zjednodušený kód bude vyzerať takto:</p><p>Samotný odkaz .php. Nič sa nezobrazí. Práve pripravuje údaje a potom spôsobí šablónu. <br><span><?<br><span>// vrátane nastavení. <br></span>zahŕňajú "settings.php";</p><p>// Dostávajte údaje z základne, určujte premenné <br></span>$ Pagetitle \u003d "(! Lang: Odkazy" ;!} <br>$ Data \u003d $ db -\u003e getall ("Select * z odkazov");</p><p>// Nastavte šablónu stránky a zavolajte na šablónu všeobecnej webovej stránky. <br></span>$ TPL \u003d "TPL_LINKS.PHP"; <br>zahŕňajú "tpl_main.php"; <br> </p><p>Všeobecná šablóna (TPL_MAIN.PHP):</p><p><html xmlns="http://www.w3.org/1999/xhtml"><br> <head><br> <title>Moje stránky.<?=$pagetitle?>






Na správnom mieste sa zapne na PAN_LINKS.PHP (TPL_LINKS.PHP):





  • "TARGET \u003d" _ BLOKT "\u003e


    • Ahojte všetci. Chcem predstaviť ďalší bicykel napísaný v PHP pomocou modelu objektu dokumentu. Aký je jeho rozdiel od ostatných troch-kolesových zástupcov toho istého druhu? V skutočnosti, rozdiely nie sú toľko, kombinuje to najlepšie z mnohých. Napríklad:

      1. Úplný oddiel HTML a PHP.
      2. Žiadne ďalšie štítky v typových vzoroch


      3. Schopnosť vložiť do obsahu iných súborov šablón, a to tak z PHP aj pomocou špeciálnej značky v rozložení.
      4. Schopnosť vytvoriť ľubovoľnú html-tag na lietať.
      5. Schopnosť uložiť do htmlového súboru, ktorá bola vytvorená a zozbieraná.
      6. Pred vytvorením šablóny overte existenciu súboru HTML požadovanej strany.

      Takže, že každý okamžite sa objasnil, ako pohodlné je pohodlné a ľahko sa odvolať, poviem a ukážem, ako som ho použil na vytvorenie jedného z mojich projektov (mám podozrenie, že budem vyjadriť všetky moje projekty pod ním).

      Prvá vec, ktorú zvyčajne robím, je dostať všetky informácie z databázy o stránke (Kľúčové slová, popis stránky, názov šablóny a súbory CSS a JS). Udržujem to všetko v rade $ hlavy. Ďalej mám obsah z databázy a udržujte pole $ stránky. A pokračovať v práci s triedou.

      Takže najprv zavolám triedny konštruktér a prenášam všetky potrebné parametre:

      $ TPL \u003d Nová šablóna; $ TPL -\u003e ext \u003d tpl_extension; # Rozšírenie súborov v katalógu šablón $ TPL -\u003e HTM \u003d cache_extension; # Expanzia pre už generované stránky $ TPL -\u003e Skin_DIR \u003d DIR_TEMPLATES; # Adresár, v ktorom všetky šablóny lokality ležia (napríklad šablóny) $ TPL -\u003e JS_DIR \u003d DIR_JS; # Directory, kde potrebujete vyhľadávať súbory JS $ TPL -\u003e CSS_DIR \u003d DIR_CSS; # Adresár, kde sú CSS $ TPL -\u003e IMG_DIR \u003d DIR_IMG; # Adresár, kde $ tpl -\u003e koža \u003d $ _session ["koža"]; # Názov šablóny, ktorý chcem používať $ TPL -\u003e cache \u003d dir_cache; # Kam na úsporu hotovej HTML $ TPL -\u003e LOG \u003d FILE_T_LOGS; # Kam napísať protokoly $ TPL -\u003e Tag_start \u003d symbol_start_tag; # Znak, z ktorej premenné začínajú v šablóne $ TPL -\u003e tag_end \u003d symbol_end_tag; # Symbol, ktorý ukončí premenné v šablóne $ TPL -\u003e DIR_DELIMETER \u003d DIGORY_SEPARATOR; $ TPL -\u003e Space \u003d symbol_space; # Symbol nahradenie priestoru.
      FUF, zdá sa, že všetky premenné prešli, choď ďalej.
      Aby nedošlo k nútiť triedu, aby sa extra práca, najprv skontrolujeme, zrazu už máme pripravený HTML súbor požadovanej strany.
      ak ($ \u200b\u200bTPL -\u003e Testpagestatus () \u003d\u003d\u003d TRUE) (Vyžadovať $ TPL -\u003e CACHEFILENAME;) inak ($ \u200b\u200bTPL -\u003e Stránka ("index"); # Prejdeme názov šablóny súbor môže prejsť niekoľko, cez čiarku $ tpt -\u003e priradiť ("hlava", $ hlava); $ TPL -\u003e Assign ("Content", $ stránky); $ TPL -\u003e Build (); # Dávame tím Zbierať šablónu $ TPL -\u003e Showpage (); # Zoberte.)
      Tu je vlastne všetky metódy, ktoré je potrebné použiť na odstránenie stránky.

      Teraz budeme analyzovať pár užitočných metód tejto triedy. Predpokladajme, že sme už prešli do triedy Všetko, čo potrebujete, ale nedávali mu tím na záver, pretože náhle si pamätali, že musíme vytvoriť niekoľko značiek HTML v šablóne. To sa tiež robí veľmi jednoduché. Najprv musíte nájsť blok, v ktorom chceme niečo pridať. Môžete nájsť 2 spôsoby:

      $ TPL -\u003e WEELBYID ("FindMe"); $ TPL -\u003e HEADBYTAGNAGE ("DIV");
      Metóda WearByiD logicky znamená, že v šablóne sú všetky značky jedinečné v šablóne. A metóda Findbytagnem vráti prvý vhodný.
      Výsledkom, ktorý sme dostali hľadanie, musíme prejsť na metódu $ TPL -\u003e CreateChild (), aby ste mohli vytvoriť v nájdenom prvku, detské tagy. Metóda CreateChild Mimochodom, po vytvorení novej položky, ho vracia nám, aby sme mohli používať iba prvok vytvorený niekde inde.

      Zbieranie a experimentovanie som našiel 3 spôsoby, ako vytvoriť tagy v šablóne, takže budem ukázať 3 príklady naraz. Príklad 1:

      Musíme vytvoriť

      vnútri

      $ rodič \u003d $ TPL -\u003e WEARTBYID ("RODISTER"); $ TPL -\u003e CreateChild ($ rodič, "DIV", "ID \u003d dieťa, trieda \u003d test");
      Dostaneme:


      Príklad 2:

      Musíme vytvoriť

      Nejaký text
      vnútri

      $ rodič \u003d $ TPL -\u003e WEARTBYID ("RODISTER"); $ TPL -\u003e CreateChild ($ Rodič, "DIV", "ID \u003d dieťa, trieda \u003d test", "nejaký text");
      Dostaneme:

      Nejaký text

      Príklad 3:
      Musíme vytvoriť

      Nový prvok
      V prvom prvku rozpätia

      $ rodič \u003d $ TPL -\u003e FindbyTagname ("Span"); # (1) $ TPL -\u003e CreateChild ($ Rodič, "DIV", "Nový prvok"); # (2)
      (1) Hľadanie rodiča nie je ID a v značke nájde prvý vhodný
      (2) Ak nepotrebujeme atribúty, ale iba hodnota novej položky, nemôžete ich prenášať

      Dostaneme:

      Nový prvok

      A po týchto manipuláciách som už volal showpage. A tu sme hladko oslovili ďalších 2 zaujímavých momentov.
      Predstavte si, že situácia, ktorú máme šablónu, predpokladajme, že je to zoznam List.TPL so zoznamom, napríklad mobilné telefóny:

      (Content.Brand)

      (Content.Model)

      (Content.info)

      Ak by sme absolvovali iba 1 telefónne informácie, bude jednoducho nahradená premennými na ich hodnotách, a ak sme okamžite odovzdali informácie o niekoľkých telefónoch, potom trieda skopíruje túto stránku toľkokrát, koľko možnosti hodnôt prišli . A to bude sám, naproti tomu, napríklad z triedy XTemplate, ktorý predstavoval každú hodnotovú volania priradiť a analyzovať
      Je pravda, že nie je to veľmi pohodlný moment, ak je tento blok ešte viac, napríklad:

      (Content.Brand)

      (Content.Model)

      (Content.info)
      Stále nejaký blok

      Potom v takejto situácii budeme musieť aplikovať malý trik, balenie nášho mobilného telefónu

      (Content.Brand)

      (Content.Model)

      (Content.info)
      Stále nejaký blok

      V tomto prípade sa všetky mobilné telefóny budú zobrazovať po sebe
      a "niektoré iné jednotky" zostane nižšie.

      A ak som nič nezabudol, potom posledný moment pridáva obsah iných šablón do aktuálnej šablóny.
      Zavolám znova na vašu fantáziu.

      Predstavte si, že meradlo chce obsah stránky.html, ktorý sa má pridať do zoznamu List.html File Block, na to je v požadovanom umiestnení súboru List.html pridáva strana A keď trieda vidí túto značku, nahradí ho obsahom stránky.html súboru

      Počet takýchto vložiek nie je obmedzený a ich umiestnenie nie je absolútne nie je kritické, takže ich môžete vložiť niečo a v akomkoľvek množstve.

      To je pravdepodobne všetko, ak si niečo pamätám, budem navyše nahlásiť. Ďakujeme, že ste nakoniec prečítali.

      Tagy: php, trieda, šablóna, tajomník, parser