Fejlesztési Beatrix alkatrész cm (a cikk a magazin május 2018) - 1C-Bitrix
De szeretnék beszélni a stílus programozás Bitrix. Bármilyen furcsán hangzik, de a „programozás Bitrix” - nem csak egy php-programozás: ez magában foglalja a tanfolyam és php-kód, de a legtöbb még mindig bizonyos korlátozások és fogalmak legtöbb Bitrix platform, mint a keret. És ez alapkoncepció „tégla” platform - Bitriks komponenst.
Az ókorban, körülbelül 5 évvel ezelőtt, csak egyszerű komponenseket Bitrix - az úgynevezett Web 1.0 (a legújabb verzió Bitrix nem láttak). Ezek a komponensek lényegében struktúrák voltak csatlakoztatva kódlapján kimeneti fájlként. Mi érdekli őket, nem - nem fogjuk felkavarják a múltban. Mi érdekli összetevőinek WEB 2.0 és megpróbálunk együtt van, hogy egy ilyen komponenst.
A WEB 2.0 alkatrészek, amelyeket jelenleg használnak Bitrix, akkor könnyen osztani logikáját és annak bemutatását, hogy ugyanaz a logika, hogy a különböző nézetek. Minden alkatrész kódot, beleértve a sablonok, nyelvi fájlt ugyanabban a könyvtárban, ami természetesen megkönnyíti az életet, amikor át olyan alkatrészek projektek között.
Szerkezet komponens Bitriks
Hogy mi az az összetevő Bitrix? Bitrix alkatrész - a mappa egy bizonyos szerkezete fájlokat és almappákat. Itt van egy:
Ez a mappa tartalmazza a fájlokat, hogy segítséget nyújtson alkatrész
Tárolhatók telepítés scriptek / deistallyatsiii alkatrész (install.php / uninstall.php)
Need for többnyelvű támogatás komponensben
Folder komponens kimenettel sablonok
Ez tartalmazza alkatrész kód
Ez tartalmaz egy leírást a komponens bemeneti paraméterek
Ahogy talán már észre a szükséges fájlokat egy komponense 2 - component.php és .description.php
Azt mondjuk, néhány szó, ahol a komponenseket fizikailag a rendszert, és egy ilyen koncepció, mint a komponens neve terek. Fizikai komponensek kell elhelyezni a mappa / bitrix / components / vagy egy almappát a mappa. Az alkatrészek, hogy jön a CMS Bitrix kiemelt almappa bitrix (/ bitrix / components / bitrix /) - az alkatrészek cseréjére van vagy írásban van nem éri meg. A legjobb, hogy hozzon létre egy almappát. Mindegyik al-mappát a mappa / bitrix / components / képez a névtérben.
Példa létrehozása komponens
előkészíti php-kód alkatrész
Mint például, hogy olyan összetevő, amely megjeleníti az aktuális dátumot és időt. A dátum és idő formátum opcióban meghatározott tulajdonságok. Vette a példában kizárólag oktatási célokra, a tényleges, mint a komponens valószínűleg érdektelen. De ebben a példában leírjuk, hogyan kell elvégezni a komponens fejlesztését. Bonyolultabb esetekben az összes végrehajtott hasonló módon.
Így kezdjük. És nézzük csak írni a php-kód, amely végrehajtja azt, amit leírt.
Igaz a kódot egyszerűen megjeleníti a dátumot és nem választhat más formátumban. Jobb helyzetben a változó formátumú dátum.
És az utolsó érintés - meg kell osztani a logikát és a prezentáció:
Azt, hogy egy mappa struktúra és alkatrész fájlokat
Php-kód, az általunk készített - most meg kell, hogy saját névtér. Például dv - Nem tudom, miért szeretem ezt a kombinációt karaktereket. Ehhez hozzon létre egy mappát / bitrix / components / DV. Úgy csinál alkatrész mappa - date.current. És ez viszont létrehozásához szükséges 2 fájl és mappa tárolására sablonok sablonok. A tempates.php mappa .DEFAULT mappát kell létrehozni, és ez template.php.
Kapunk egy ilyen szerkezet /bitrix/components/dv/date.current mappában:
component.php
.description.php
sablonok / .DEFAULT / template.php
Tisztában vagyunk azzal, alkatrész nélküli bemeneti paraméterek
Mégis, hogy egy komponens nélkül a lehetőségét a bemeneti paraméter - a dátum formátumát.
sablonok / .DEFAULT / template.php
Az aktuális dátum
description.php
GetMessage ( «Aktuális dátum»)
«Leírás» => GetMessage ( «megjeleníti az aktuális dátumot"),
);
?>
Mint látható, az egyes összetevő fájlt az írásbeli vonal, ha (a meghatározás ( «B_PROLOG_INCLUDED») || B_PROLOG_INCLUDED == true !!) Die (); szükség van annak érdekében, hogy ezeket a fájlokat nem nevezhető közvetlenül a böngésző ablakot.
A legegyszerűbb formájában, kész alkatrész - okozhat kódot oldalak szerkezete:
IncludeComponent (
«Dv: date.current»,
«.DEFAULT»,
Array (
)
hamis
);?>
Tisztában vagyunk vele, egy komponens bemeneti paraméterek
description.php
GetMessage ( «Aktuális dátum»)
«Leírás» => GetMessage ( «megjeleníti az aktuális dátumot"),
«PATH» => array (
«ID» => «dv_components»,
«CHILD» => array (
«ID» => «curdate»,
«NÉV» => «Aktuális dátum»
)
)
«ICON» => «/images/icon.gif»,
);
?>
array (),
«PARAMÉTEREK» => array (
«TEMPLATE_FOR_DATE» => array (
«SZÜLŐ» => «BASE»,
«NÉV» => «A sablon a dátum”
«Típust» => «STRING»,
«TÖBB» => «N»,
«DEFAULT» => «Y-m-d»,
«REFRESH» => «Y»,
)
)
);
?>
És szerkesztése fájlok komponens logika, hogy tudta használni a lehetőséget, azt kérdezzük:
Mit tettünk?
Létrehoztunk egy komponens, a legegyszerűbb formában. Nem veszi figyelembe a többnyelvűség, nem vette figyelembe annak lehetőségét, hogy a támogatás komponens és varázsa cache-alkatrészeket.
A legtöbb egyéni alkatrészek Bitrix által létrehozott változó összetevőinek séta a kínálat Bitrix. Ezért szükséges, hogy megismerjék a szabványos elemeket, mielőtt az új programot. Legvalószínűbb a problémát szeretné megoldani - már döntött Bitrix fejlesztők.