A tartalom forrása a modx forradalomban a getresources használatával
Mi a getResources?
A getResources egy MODX forradalom kódrészlet, amely kivonja a mezők tartalmát más erőforrásokból, és kinyomtatja azt bármilyen formában, ami az Ön számára megfelelő. Ha ismeri a MODX Evolution-ot, a getResources a Ditto helyettesítőjeként tekinthető.
Miért érdemes használni a getResources-et?
A getResources nagyszerű azokban az esetekben, amikor egy forrásból és a szükséges formátumból különböző forrásokból származó információkat kell összeállítani és kinyomtatni. A getResources kódrészlet legnyilvánvalóbb használata a webhely fő blogoldalának létrehozása, egyéb lehetséges blokkok használata - csúszkák, portfólió oldal, hírek.
Hogyan használhatod a getResources kódrészletet?
Az alábbiakban felsoroljuk a getResources kódrészlet használatának folyamatát leíró lépéseket. Miután megszokta a használatát, a leírt lépések többsége intuitív lesz, de mivel éppen most kezdődik, jó, ha van valamilyen akcióterv a közelben. Itt van, amit leírtam:
1. Telepítse a getResources fájlt
Már telepítettem a getResources programot, és egy cikkoldal létrehozására fogjuk használni. A blogoldal sablonjának 7-es üzleti siker oldalát a Themeforest 7-es sablont használjuk. A blog oldal (részben) így fog kinézni:
2.Hozzon egy sablont egyetlen cikk megjelenítéséhez:
A getResources kódrészlet telepítése után nézze meg az egyes cikkek oldalainak elrendezését. Ehhez a sablont különálló bejegyzéshez fogom használni, amelyet a single.html fájlból vettem. Már elküldtem ezt a sablont a sablonomra, és ezt "7in1 Single Article" -nek neveztem el. Így néz ki a "7in1 egységes cikkem" sablonom:
Az utolsó pont, amelyre felhívnám a figyelmet, a dátum mező kimenete. A PHP-ben található strtotime használatával közzéteszik a dátumot a kívánt formában (mint témánk sablonjában). Részletesebben a funkciók strtotime és a dátumok formázása - a link ezen a poszt végén.
3. Adjon hozzá cikkeket
A változtatások után a következő képet tartjuk:
Most, amikor új erőforrást hoz létre, alapértelmezés szerint egy különálló cikk sablont veszi fel, és már bejelölte az elrejtést a menükből.
Megjegyzés: Ne feledje, hogy ez a viselkedés akkor jelentkezik, ha a dokumentumot a gyökérkönyvtárban hozza létre. Ha belép bármelyik tárolóba, és kattints a "Dokumentum létrehozása itt" lehetőségre, akkor a konténer sablonja el lesz rejtve, és elrejti a menüből. Ezért ügyeljen az egyes erőforrások beállításaira.
Most a következő lépéshez juthatunk, vagyis létrehozunk egy sablont a fő blogoldalunkra, majd létrehozunk egy hívást a getResources kódrészlethez.
4. Az összesített tartalomlap előkészítése.
Folytassuk a tartalmunk megkötését.
5. Alapértelmezés a getResources kódrészlethez
Mielőtt elkezdenénk egy töredékhívást megfogalmazni és a getResources segítségével dolgozni, fontos, hogy megismerjük azokat a dolgokat, amelyek könnyen félrevezetőek lehetnek, ha korábban nem ismerkedett a getResources-szel és még akkor is, ha ismerős vagy. Én nevezem őket trükköknek getResources!
- A getResources hívás alapértelmezés szerint nem tartalmazza a kimeneti sablont. Szükség van egy sablonra - tpl-chunk, hogy meghatározza az erőforrás (ok) tartalmának kimenetét.
- A getResources alapértelmezés szerint nem jeleníti meg a menükből elrejtett erőforrásokat, ezért be kell állítania showHidden = `1`
- A getResources alapértelmezés szerint nem tartalmazza a források tartalmának mezőit, ezért meg kell adnia includeContent = `1`
- Továbbá, még akkor is, ha az includeContent beállítást választotta, a getResources kivonat alapértelmezés szerint nem tartalmazza a sablonváltozókat, ezért be kell állítania includeTVs = `1` és processTVs = '1`
- Ha beltéri TV-t és processTV-t ad meg, akkor a getResources kivonat azt fogja várni, hogy a tpl sablonban a sablonváltozókat a "tv" előtaggal jelölje meg. Ezt felülírhatja hozzáadással tvPrefix = ``, majd csak a sablonváltozó nevét használja a helyőrzőnek.
- Ha a szükséges erőforrásokat megjeleníti a paraméteren keresztül resources = `1,2,3`, ahol 1,2,3 - kimeneti erőforrások, ne felejtsd el megadni a paramétert szülők = `-1`
Sok más pillanat van, de ezek a legfontosabbak, amelyekben könnyen hibázhat.
Az összes többi kivonathoz hasonlóan a getResources hívása így néz ki:
Az alaphívás lehetővé teszi, hogy győződjön meg róla, hogy a kódrészlet a weboldalunkon működik. Ha ezt a felhívást a cikkek oldalára helyezem, nem kapok semmit. Lehet, hogy úgy gondolja, hogy valami nincs rendben, de erre egyszerű magyarázat van. Emlékszel a találatok listájára? Alapértelmezett getResources elvárja, hogy a források vannak rejtve a menüből, ezért ha azt szeretnénk, hogy mutassa a rejtett forrásokat meg kell adnia a paramétert showHidden és értékét igazra állította. Ezért módosítsa hívását:
Ha újratöltem az oldalt, itt kapok:
Rosszul néz ki, de azt jelenti, hogy a getResources működik és kivonja a tartalmat. Most arra van szükség, hogy nem az, hogy a tartalom a kívánt formára és meghatározza, milyen legyen a paraméterek: például a tartályok használata szülők beállítás, hogy milyen mély a forrás fa mintát a forrásokat, amelyek maguk területén minden erőforrás akarunk kitömöríteni oldalunkat cikkek stb.
6. Hozzon létre egy template tpl chunkot a getResources számára
Ahhoz, hogy megjelenítse az oldalt a szükséges formában, létre kell hoznunk egy darabot az egyes elemek sablonozásához, amelyet a getResources kivonat kinyomtat. Ehhez a kódot a statikus sablonból kiveszem, amely a hozzászólás minden egyes elemét képviseli, és dinamikus kóddal helyettesíti a statikus elemeket.
A tpl-chunk segítségével végzett munka során a helyőrző szintaxisát használjuk # 91; # 91; + mező_neve # 93; # 93; dinamikus darabokra.
Tehát a blogbejegyzés HTML kódját a blog.html sablonfájl statikus kódjában adjuk meg:
Ezt a kódot használhatjuk tpl darabunk alapjaként. A statikus darabokat a töltőanyagokkal helyettesítem. A post rövid tartalmát illetően nem szeretném kitörölni az erőforrás Tartalom mező tartalmát, csak egy rövid részletre van szükségem. Ezért az erőforrás erőforrás mezőjét (Introtext) fogom használni, majd megjelenítem az erőforrással # 91; # 91; + introtext # 93; # 93; Használhatja a Változó sablont is # 91; # 91; + tv.tvname # 93; # 93;. A kimenethez használhatja az erőforrás tartalmát is - a Tartalom mezőt. Például megtehetem az egyes cikkek első 350 karakterét, és visszavonhatok. Ehhez csatolom a kimeneti szűrőt: ellipsis = 350 a tartalmi helyőrzőmhöz.
Ne felejtsük el, hogy pillanatnyilag a statikus elemet elhagyjuk, majd visszajövünk erre.
Most meg tudom menteni ezt a kódot egy darabban, amelyet a cikkcímnek nevezem. Ezután megváltoztatom a getResources hívását, és hozzáadom a tpl-chunkomat.
Ha túlterheljük cikkoldalunkat, azonnal látjuk a különbséget:
A kép fokozatosan életre kel! Megtudjuk, hogy a megjelenített tartalom a megfelelő sablon használatával jelenik meg, és rákattintunk az egyes hozzászólásokhoz vezető fejlécekre. De még mindig sok a teendő.
Kérjük, vegye figyelembe, hogy ha több mint 5 cikk van, csak 5 jelenik meg az oldalon. Ez azért van, mert alapértelmezés szerint a getResources a letöltött oldalak számára korlátozódik, ami 5.
A paraméter hozzáadásával felülírhatja korlátozza és meghatározza a szükséges cikkszámot. A cikkszámot 10-re állítom, hogy megbizonyosodjon arról, hogy minden működik, ahogy kellene.
Emlékezzünk a fent leírt trükkökre, tudjuk, hogy miért nem jelenik meg a tartalomjegyzékek és az okunk, hogy képtöltőink üresek, mivel az includeContent, includeTVs és processTVseket is használnunk kell. Módosítsuk a hívást, és adjunk hozzá a következő elemeket:
Ha most frissítjük oldalunkat, megjelenítjük a képeket és a kibontott tartalom rövid, 350 karakteres megjegyzését, amint azt a sablon tpl-darabjában jeleztem:
Mostantól a tartalmaink kivonatolásra kerülnek, és a szükséges módon továbbadhatók, folytathatjuk tovább, és javíthatjuk a getResources hívását, és további paramétereket adhatunk hozzá, amelyekre szükségünk lehet.
7. Adjon hozzá további paramétereket a getResources híváshoz
Így hozzáadtunk több paramétert a hívásunkhoz, és segítenek a szükséges mezők kitöltésében, és a sablonunknak megfelelően adjuk ki őket. Most folytathatjuk és befejezhetjük hívásunk kialakulását, hozzáadva a szükséges paramétereket. A lehetséges paraméterek teljes listája és alapértelmezett értéke megtalálható a getResources hivatalos dokumentációs oldalán
A paraméterek megválasztása a webhely viselkedésétől függ, amelyet érdemes elérni. Az én esetemben még egy pár paramétert szeretnék hozzáadni.
Ezért megváltoztatom a hívásomat, és hozzáadom a beillesztendő erőforrások alkönyvtáros azonosítóját, és meghatározom az erőforrás-feltérképezés mélységét:
Nos, befejeztük a getResources kódrészlet munkáját. Remélem, valami hasznosat talált magának, és megértheti az itt megnyitott kérdést, és felhasználhatja webhelyeinek építésében.
Itt van egy kis házi feladat, hogy tesztelje a leckében szerzett tudást.