Render tömbök a hetedik Drupal
Rendernyh tömbök építőkövei Drupal oldalt. A hetedik Drupal. Rendernyh tömb - az asszociatív tömb, amely megfelel a szabványoknak és az adatstruktúra használt Drupal megjelenítő rendszer.
Mi teszi?
Ami Drupal, rendering jelentése átalakulás tehetik tömbök a HTML kódot.
Mi teszi a tömb?
Render tömb - klasszikus strukturált tömb Drupal, amely tájékoztatást / adat (esetleg beágyazott) együtt tippeket arról, hogyan ezt az elemet kell mutatni (például #type meghatározza elem típusa).
oldal tömb így néz ki:
Miért történik ez?
Kiadása előtt a Drupal 7, akkor könnyen változtatni az alakját (a hook_form_alter ()), de a többi elem, hogy lehet változtatni modulokban vagy témák, befordult HTML mielőtt át a módosításokat.
elemek szerkesztése
Megjelenése után a hetedik Drupal blokkok és oldalak lehet változtatni, ugyanúgy, mint mielőtt megváltozott az alakja. Sok más funkciók is elérhetővé szerkesztésre. Például, ha a hook_page_alter (), akkor a modul vagy smink megtenni:
Ahogy rendernyh tömbök társított elemek?
A modulok meghatározza az új elemeket, amelyek valóban tömbök rendernyh által rögzített bizonyos szabályokat. Erre a célra hook_element_info (). Element - jelentése rendernyh tömb, amely #type és egyéb tulajdonságait, amelyek meghatározzák a jövőbeni viselkedését. Ha a tömb jön létre rendernyh és kérte #type. valamit töltve az alapértelmezett értékeket ezek az attribútumok, amelyek nincsenek jelen a tömbben, de ezek leírt hook_element_info () ezt az elemet.
Adatbázis létrehozása formájában tömbök rendernyh
A Drupal 7. Eltérően a korábbi verziók, a modul szinte mindig teremt adatok rendernyh tömbök. hívás funkció bármely oldalon egy tömböt ad vissza, amit később tenni (átszámítva HTML). Ez lehetővé teszi a modulok tárolja az adatokat tömbök, ameddig lehetséges a folyamat oldalak létrehozása.
A Drupal 6 kezelhető adatbázis rendering módszer és a gyűjtemény formájában HTML:
Példák a különböző típusú tömbök
Mint korábban, az összes Drupal elemek (lásd. Hook_element_info (). Ami hook_elements () Drupal 6) által leírt adattípus. Nézzük system_element_info (). látunk egy csomó előre meghatározott típus, beleértve az oldal, forma. HTML_TAG. értéket. jelölést. link. mezőkészlet és még sokan mások. Megegyezés alapján, # - használt attribútumok ilyen típusú dokumentálni a megfelelő témát funkciót. Így például, használt attribútumokat az elem típusa #type => „HTML_TAG” megtalálható theme_html_tag () függvény.
Íme három példa a modul Példák (Render példa):
Példák fajta elemek
By rendernyh tömb lehet használni sok meglévő típusok vagy létrehozhat saját. Az alábbiakban a leggyakoribb.
Megjegyezzük, hogy sok ilyen tulajdonságok leírása a Forms API. mert a Forms API API rendernyh mindig használható, hogy jelezze, hogy milyen típusú, de még nem dokumentálták típusú rendernyh API, amellyel minden bizonnyal vannak Drupal 7.
elem típusát. Ha a tömb - elem, az elem tulajdonságai lesz betöltve az alapértelmezett. Ez csökkenéséhez vezet az előre meghatározott tulajdonságokkal, hogy lehet venni a jelen leírás elem hook_element_info ().
Egyszerű tulajdonságokkal rendelkező, egyszerűen létrehoz egy string jelölő #type => „jelölést”. Sőt, akkor könnyen be egy darab HTML'a változtatás nélkül vagy további renderelés.
Használt hozzá egy sor (vagy kód) elején vagy végén az elem, ha szükséges.
Egy sor funkció, amely képes megváltoztatni rendernyh tömb hívás előtt tehetik vele. Ez a tulajdonság lehet változtatni, távolítsa el részei, telepítse #printed = TRUE. hogy megakadályozzák a későbbi megjelenítéshez stb
Egy sor funkció, amely képes kezelni a HTML, ami render elem. Nagyjából ez ugyanaz, mint a #theme_wrappers. kivéve azt, hogy nem használják szerűstílusbanName rendszert.
Egy tömb függvények téma, amely képes felvenni semmit rendernyh tömb után a gyermek elemek válnak, és helyezzük #children.
Gyakran használják hozzá HTML kiolvasztott gyermek elemek körül, különösen akkor, ha a gyermek elemek válnak rekurzív módon a eigenfunctions rendszerezést. Ezt a funkciót csak ritkán használják együtt #theme.
Kifejezés olyan tömb cache, és meghatározza az eltarthatósága. Ha rendernyh tömb sor került, akkor már nem rendirovatsya végéig eltarthatósága a gyorsítótárat. Ha gyorsítótár-használat szabványos funkciók Drupal cache_get () és cache_set ().
Ez az attribútum tartalmazhat egy tömb tömb:
- „Kulcsok” => array kulcsok, amelyek összevonásra kerül, hogy hozzon létre egy cache gombot.
- 'Bin' => gyorsítótár használt nevét (például, 'cache' vagy 'cache_page', stb)
- „Lejárt” => a feljegyzett adatok a Unix-formátum, amely meghatározza a szavatossági ideje a gyorsítótárat.
- „Granularitás” => érték, jelezve a cache típusát. Például, DRUPAL_CACHE_PER_PAGE. DRUPAL_CACHE_PER_ROLE vagy DRUPAL_CACHE_PER_USER.
Felhívjuk figyelmét, hogy jellel jelölt tételeket az attribútum #cache fogja a cache, amíg nem indul koronák, annak ellenére, hogy eltartható.