Létrehozása oldalak umi cms
Ezért annak érdekében, hogy tanácsot adjon, fel kell készülnünk, hogy jótáll 100%. És tudjuk magabiztosan ajánlani UMI mint egy tartalomkezelő rendszer, sőt, részben, mint a keret. Ajánlása kivétel nélkül és fenntartások mint apró oldalak, névjegykártyák, és megaportals és az online áruházak.
Jól ismeri a hatalmas mennyiségű egyéb CMS tudjuk megmagyarázni, mi az alapja a mi véleményünk.
Melyik licencet válasszam?
A sokoldalúság az adatstruktúra
Jellemzően, a fejlesztők megszokta, hogy a cikk helyén az adatbázisban a tábla, sor: id külön cikket - a címet - a bejelentés - szöveget.
Az adatbázis UMI.CMS adatok tárolása egy szerkezet: id absztrakt elem - szöveges mező - számmező. Itt egy kicsit nehezebb megtalálni egy címet és szöveget, de az API segítségével - néhány sornyi kódot - és kapsz, amit akarsz. Nos, ha ez a „kellemetlen” - sajnos, programozás egy olyan terület, ahol a legjobb díjat megy csak a további mentális stressz. Ha még mindig van egy vágy, hogy emelkedik a magasabb szintű adatszerkezet, vannak új és izgalmas lehetőségeket.
Például, egy internetes áruház gránit, ahol egy tipikus tétel „Padlólap ezüst, 1 négyzetméter. méter. " Minden jó, de a cserép öt különböző méretben. Minden méret fényes és matt, és több, Anticsuszó (a utca), és egyes dekorok (szélek, stb) lehet csatolni minden. Kitüntetések megéri a plusz pénzt, de ezek nem külön, és amellett, hogy egy méter nekik megfelelő csempe, és csak neki.
Egy példa tűnhet ritka, de a valóságban az ilyen áruk tétel: autók (az ár függ a konfiguráció), összeállított alkatrészeket számítógépek, jelentkezési űrlapok vízumot (igen, a program szempontjából, az is jó), légkondicionáló (split rendszer), stb . d.
A modulban „adat sablont” kiegészítik a típusú „termék” további mezőket:
Méret 1, Tip1 sora látható;
Méret 2, Tip2 sora látható;
és így tovább, egészen 15-ig (öt lehetséges cserép méretben, szorozva három felületek, hogy 15 lehetséges opció).
Hasonlóképpen, létrehozunk egy numerikus mező az ár:
Az ár négyzetméterenként. 1 méter méretű, PR1, számok látható;
Az ár négyzetméterenként. meter2 méret, pr2 a számok láthatók;
és r. d. és 15.
Továbbra is, hogy módosítsa a kosárba, így ő próbált másik lehetőség - méretét. Festék, hogy nincs értelme, mert a modern változata a UMI választható termékeket is van. Most már csak szemléltetik az elvet.
Tehát, ha megcsináltuk a motor, lineáris adattároló elvileg a Joomla, Netcat, Bitrix és mások. Azt kell hozzá egy oszlopot az adatbázis tábla. És ha nem vagyunk az egyetlen komplex típusú objektumok, akkor meg kell tennie, hogy hozzon létre egy külön másik tábla Ezeknek a kiegészítő tulajdonságokat és építeni valamit a globális az egész motort.
Itt egyszerűen új sor egy meglévő táblához. A nagyon szerkezete a táblázat van tárolva. Azaz, ha a korábbi kérését tételazonosítóra elem visszatér hozzánk a neve, ára és a kép, most visszatér nekünk több és méretben az áruk és az árak. Ebben az esetben más elemek, mint például a cikkek, maradt a név és a tartalom - új funkciók csak akkor tért vissza az elem, amelyben vannak.
Nyilvánvaló, hogy egy egyszerű weboldal, ahol csak egy típusú adatok - cikkek - asztal lineáris tároló fog tartalmak gyorsabb. Ugyanakkor, ha van egy csomó bonyolult objektumok különböző tulajdonságokkal - UMI megvalósított adattároló módszer a legjobb, ha nem az ötletes megoldás. A kompromisszum rugalmasság bizonyos esetekben ez lehet a sebességet, de az alkotók úgy döntöttek, hogy UMI tökéletes ez a probléma. De erről később, de most a nagy kérdés: hogyan, hogy az adatokat megjeleníteni a weboldalon?
Közvetlen a kérelmeket az adatbázisban nincs szükség, mert a munka számunkra, hogy az API és sablonrendszer.
Az élet - ez a változékony és kiszámíthatatlan. És nem receptek gyűjteménye ad választ minden helyzetben. API nem felel meg az irányítást a világegyetem, meg kell egyszerűsíteni a tipikus rutin dolgokat. És csak azok, akik valóban egyszerűsíteni kell. Csak nagyon bonyolult dolog, de nem mindent.
Két sablonozó, XSLT és a régi, TPL. Jobb, persze, hogy kezdődik XSLT, ugrani, mint egy lépést, de most az érthetőség kedvéért vegyünk példát TPL-sablonozó.
Elég csak erre:
Hasonlóképpen, tudjuk kimenet bármely adatmező egy objektum egy makró nem tudni, php. És ez tényleg egy nagy előrelépést jelent, hogy a szebb jövő, ha minden épeszű ember programozói tudás nélkül is képes legyen folytatni a komoly vállalati oldalon.
A makrók egyetemes és kevesen vannak. Ők lehet illeszteni a sablont, és a szöveg a cikk. Tehát UMI tartalom kezelő kezelheti az oldalon teljesen függetlenül, míg más CMS elvégzésére egy ilyen feladat lenne részvétele szükséges a programozó.
Egy egyszerű szerkesztési sablonok és makró beszúrása már lehet építeni egy csomó. Ha van egy régebbi kiadás számos modul van beszerelve, akár egy speciális online áruház tehet anélkül, hogy a tudás a webmester php.
A makró funkció nem elég, hogy a támogatás API. Hogy jön a többi motor néha nem egyértelmű módszer annak használata a UMI. Például, hogy tisztában vannak a lényege egy API hívás, így a mező tartalmát „telefon” a cikket id egyenlő 5:
De mit kezd majd fordult az életük egy rémálom, és küldje átkok UMI. Mert járni a motor kódot, keres, ahol a funkció, amely megjeleníti a tartalmat az oldalon, és segítségével a különböző hack próbál csavar ez, erősen elvonatkoztatott és az objektum-orientált kódot formájában annak végrehajtását a fenti kódot. Ezek oka: ez jobb, mert használja az API. De nem. Mászni a motor maga csak akkor van értelme, ha az egy pont módosítását, ha kell valami, hogy alapvető változás. A fejlesztés UMI beavatkozás a motor kód valóban ritka.
Egyszerűen add /classes/modules/custom.php új funkció:
A fejlesztők megszokta, hogy erős keret, mint CodeIgniter, megpróbálja megtalálni az API függvény, amely adatokat produkál egy szép lemez. Például, az áru az online áruház. Nincs olyan, az API UMI - ez a híd az adatok és sablonrendszer. Ez azt jelenti, az asztal lesz, hogy dolgozzon ki egy sablont a programot, amelyet adott neki TPL (mappa / tpls /) vagy XSLT sablont (/ xsltTpls /). Néha segít neki. Tegyük fel kell hívnunk az árut asztal három oszlopban. A moduláris felépítés - ez egy nagy dolog, de amikor a hangszórók, akkor gyakran a legjobb megoldás az asztalon. És nem csak az XSLT, de TPL sablon is építeni:
- abból áruk makró # 037; katalógusban getObjectsList (3_col_template ') # 037; - Copy minta / tpls / katalógus / alapértelmezett / tpls / katalógus / 3_col_template és szerkesztése az új sablont a tábla beiktatásával címkéket. - új sablont, hogy a végén a töredék makró objects_block_line . # 037; egyéni elosztót (207 # 037;. Id paraméter átvitele szükséges, hogy kb cache-makro - Add hozzá a /modules/classes/custom.php funkció:
Ez a funkció az elválasztó táblázat sorait minden harmadik (vagy más meghatározott változó $ oszlop) hívás, és az árut jelennek három oszlopban.
Ha tényleg van értelme, hogy módosítsa a motor maga
Ez nem az nginx caching eszközök állnak rendelkezésre a WordPress és néhány egyéb motorok - amikor a forró lapok kerülnek a kis cache memória és a kiadott onnan. Sokkal jobb. Nem csak a meleg, de általában minden oldal alakítjuk statikus és adott nginx. Futtatása nélkül php, mysql nélkül. Abszolút gyorsulás. Nem semmi a fordítás a weboldal statikus nginx a legjobb eszköz a DDOS.
A kézikönyv nem azt mondják, hogy kivételt tenni a cache néhány oldalt, de ez egyszerű.
Szintén UMI CMS tudja verni az összes rekordot, és anélkül, gyorsítótár dinamikus adatokat, ha az oldalak számát egy kis hely. Kapcsolja be a memcached, ha szükséges, növelje a puffer a szerveren, és mi van, hogy több millió látogató egy nap, még az alacsony vas.
biztonság
A antivirus-alarm.ru (antivírus program Kraftwork) folyamatosan keresik távolság oldalakon. És az a néhány éves működése során gyűjtött statisztikai adatok. Tehát a helyek az UMI nincs ott. Az első helyet yukoz - ez érthető, ott van az iskolások vedd fel a honlapon a „csoda JavaScript.” A második - a DLE. A UMI CMS egyáltalán ez a lista nem teljes lyukak. Sem a tulajdonos a helyszínen a odnin nem foglalkozott UMI a tisztításhoz.
UMI lehetővé teszi, hogy akár automatikusan újra összekapcsolni oldalaira kijelölt ezek az oldalak címkéket. Míg hívei többi motor dobja fel a kezét, és nem hajlandók megtenni, az UMI fejlesztők egyszerűen hozzáadjuk custom.php funkciót, amely kiszűri a kimenetet a tartalmi oldalon, hozzátéve újracsatolása.
hiányosságokat
Lehet egy nagyon hosszú ideje festeni méltóságát UMI CMS, mert Umisoft sok időt rá, és van ideje ezúttal egy hatalmas összeg, hogy nem minden jó. De a méltányosság azt kell találni byaku.
Nehéz kérdés, mert tényleg felfedi súlyos hiányosságokat UMI CMS rendszer nem lehetséges. Egyes fejlesztők arra panaszkodnak, hogy a UMI nem tájékoztassák őket ismerte szintaktikai hiba, hanem egyszerűen lóg egy fehér képernyő, amikor a készülék nincs ott egy vessző (a biztonság jó, hogy nem jelenik meg a hibát, és a hibakeresés van szükség -, hogy a error_reporting (55)). Vagy panaszkodnak az API hiba. Ez nem komoly: CMS nem egy távirányító a világegyetem, ő más funkciókat.
Egy másik nagyon ritka, de még mindig a valós helyzetnek - amikor az ügyfél telephelyén használják, hogy érdekli az adatokat közvetlenül a mysql, export Excel és vissza keresztül phpMyAdmin. Itt UMI használt adattároló áramkör magas fokú absztrakció egy akadály. Ha az alacsony költségvetésű hely - itt UMI nyilvánvalóan nem ez a legjobb megoldás. De ha egy nagy projekt - nincs különbség, mivel az adatokat tárolják. Tesszük a vevő tábla formátumban kényelmes, és rendszeresen adatokat exportálni az UMI ebben a „kísérleti” táblázatban. Ugyanakkor megszabadulunk a problémát a „nehéz” kéréseket, amelyek elkerülhetetlenek a fel- és lerakodás Excel hatalmas adatbázisokat - mert most az ügyfél nem gyötri erősen mysql tábla élő oldalon, és „páros”. Mentése recept, ha az ügyfél szereti lekérdezések hasonlók, valamint több gigabyte-os asztalnál.