hallo allemaal
ik ben pas begonnen met CMS MS en nou vroeg ik mij af welke smarty tags ik kan gebruiken?? kan ik alle smarty tags gebruiken die ik op http://www.smarty.net/ kan vinden??
ps. is het geen idee om een apart topic aan te maken voor smarty??
Mvg andré
[opgelost] smarty tags
Moderator: velden
-
- Forum Members
- Posts: 233
- Joined: Sat Apr 10, 2010 4:26 am
- Location: Gorinchem
[opgelost] smarty tags
Last edited by andre_designer on Sat Apr 10, 2010 7:08 pm, edited 1 time in total.
automatiseren gaat niet automatisch |
problemen zijn er om opgelost te worden al is de oplossing vinden soms problematisch!!
problemen zijn er om opgelost te worden al is de oplossing vinden soms problematisch!!
Re: smarty tags
Hallo André, welkom hier 8)
Met Smarty kun je ontzettend veel doen. Je verwijst zelf al naar www.smarty.net. Daar vind je de documentatie van wat allemaal mogelijk is. Alles wat je daar leest kun je hier toepassen.
CMSms heeft daarnaast zelf ook een aantal tags. Je vindt ze (met uitleg) via het admin menu: Uitbreidingen > Tags
Elke module moet je ook aanroepen met een tag. Dat is in ieder geval {cms_module module='ModuleNaam'} en soms kan het ook met een verkorte aanroep. Hoe en wat vind je in de uitleg van de betreffende module, evenals welke parameters je kunt gebruiken.
Al die tags kunnen smarty variabelen definiëren. Bijvoorbeeld {news} maakt een variabele {$itemcount} aan, waarin het aantal nieuwsitems is opgeslagen. Maar ook een array $items, waarin de informatie van de afzonderlijke nieuwsitems zijn opgeslagen.
De variabelen die je kunt gebruiken vind je veelal in de voorbeeldsjablonen (In het geval van News in bijv de samenvattingssjablonen).
De inhoud van variabelen kun je bewerken met smarty modifiers. Zie http://www.smarty.net/manual/en/language.modifiers.php
Maar je kunt ook (vrijwel?) elke php functie gebruiken! Dat maakt smarty bijzonder krachtig.
Soms zijn er meer variabelen beschikbaar dan je in de voorbeeldsjablonen terugvindt. Bij Gallery heb ik een info-button in de template editor gezet waarmee je uitleg krijgt over alle beschikbare variabelen. Maar dat is bij andere modules niet of nauwelijks zo.
Je kunt dan de volgende tag gebruiken:
{get_template_vars} om alle variabelen te tonen
Als je dieper op objecten en arrays wil inzoomen, gebruik je
{var_dump var=$entry}, {dump item=$entry}, {$entry|debug_display}, {$entry|print_r} (met dank aan het onderschrift van Peciura)
In dit geval wordt de variabele $entry dus nader bekeken. Merk op dat deze variabele in News pas bestaat binnen of na de statement:
{foreach from=$items item=entry}
....
{/foreach}
Hopelijk kun je hiermee verder aan de slag. Het is zeker raadzaam om de smarty documentatie door te lezen.
Met Smarty kun je ontzettend veel doen. Je verwijst zelf al naar www.smarty.net. Daar vind je de documentatie van wat allemaal mogelijk is. Alles wat je daar leest kun je hier toepassen.
CMSms heeft daarnaast zelf ook een aantal tags. Je vindt ze (met uitleg) via het admin menu: Uitbreidingen > Tags
Elke module moet je ook aanroepen met een tag. Dat is in ieder geval {cms_module module='ModuleNaam'} en soms kan het ook met een verkorte aanroep. Hoe en wat vind je in de uitleg van de betreffende module, evenals welke parameters je kunt gebruiken.
Al die tags kunnen smarty variabelen definiëren. Bijvoorbeeld {news} maakt een variabele {$itemcount} aan, waarin het aantal nieuwsitems is opgeslagen. Maar ook een array $items, waarin de informatie van de afzonderlijke nieuwsitems zijn opgeslagen.
De variabelen die je kunt gebruiken vind je veelal in de voorbeeldsjablonen (In het geval van News in bijv de samenvattingssjablonen).
De inhoud van variabelen kun je bewerken met smarty modifiers. Zie http://www.smarty.net/manual/en/language.modifiers.php
Maar je kunt ook (vrijwel?) elke php functie gebruiken! Dat maakt smarty bijzonder krachtig.
Soms zijn er meer variabelen beschikbaar dan je in de voorbeeldsjablonen terugvindt. Bij Gallery heb ik een info-button in de template editor gezet waarmee je uitleg krijgt over alle beschikbare variabelen. Maar dat is bij andere modules niet of nauwelijks zo.
Je kunt dan de volgende tag gebruiken:
{get_template_vars} om alle variabelen te tonen
Als je dieper op objecten en arrays wil inzoomen, gebruik je
{var_dump var=$entry}, {dump item=$entry}, {$entry|debug_display}, {$entry|print_r} (met dank aan het onderschrift van Peciura)
In dit geval wordt de variabele $entry dus nader bekeken. Merk op dat deze variabele in News pas bestaat binnen of na de statement:
{foreach from=$items item=entry}
....
{/foreach}
Hopelijk kun je hiermee verder aan de slag. Het is zeker raadzaam om de smarty documentatie door te lezen.
Last edited by Jos on Sat Apr 10, 2010 7:49 am, edited 1 time in total.
-
- Forum Members
- Posts: 233
- Joined: Sat Apr 10, 2010 4:26 am
- Location: Gorinchem
Re: smarty tags
duh, oké dan 
dan is er veel mogelijk binnen CMS MS als je alle smarty tags kan gebruiken. zeker helemaal als je bijna alle php functions kan gebruiken. Kan je ook php scripts in de database opslaan en uitvoeren? als dat kan dan is er helemaal veel mogelijk. Niet dat dat ik gelijk gaat doen maar het zou leuk zijn. De rest van uitleg duizelt me het (nog) een beetje.

dan is er veel mogelijk binnen CMS MS als je alle smarty tags kan gebruiken. zeker helemaal als je bijna alle php functions kan gebruiken. Kan je ook php scripts in de database opslaan en uitvoeren? als dat kan dan is er helemaal veel mogelijk. Niet dat dat ik gelijk gaat doen maar het zou leuk zijn. De rest van uitleg duizelt me het (nog) een beetje.
automatiseren gaat niet automatisch |
problemen zijn er om opgelost te worden al is de oplossing vinden soms problematisch!!
problemen zijn er om opgelost te worden al is de oplossing vinden soms problematisch!!
Re: smarty tags
Yep, dat kan ook 
Daar worden "Gebruikergedefinieerde tags" voor gebruikt, ook wel UDT (User Defined Tags) genoemd. Ook dit vind je onder menupunt Uitbreidingen.

Daar worden "Gebruikergedefinieerde tags" voor gebruikt, ook wel UDT (User Defined Tags) genoemd. Ook dit vind je onder menupunt Uitbreidingen.