2.3 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			2.3 KiB
		
	
	
	
	
	
	
	
Data
Every template gets an object with the exact same structure - whether it's a template or a widget or a page or a post.
Here we only document Desirae's default behavior, but there are many objects added for compatibility with Ruhoh that are not documented.
desi = {}
desi
- config- literally- config.yml, parsed
- site- literally- site.yml, parsed
- authors- literally the authors from- authors/*.yml, parsed
- author- the primary author of the site
- env- urls and paths for this build (be it production, development, staging, etc)
- content- pre-rendered content (i.e. content rendered into the post layout rendered into the default layout)
- collection- config related to this collection
- entity- the page, post, article, etc that is the focus of the present template process
- themes- all themes
- theme- the default theme
- layout- the selected layout for this theme
- satch- the selected swatch for this theme
- categories- all categories
- tags- all tags
- styles- ??? goes into the final template in the head
- scripts- ?? that goes into the final template just before the body close
desi.entity
stuff
- uuid
- title
- disqus_url
- disqus_identifier
more stuff
- type-- post,- page, etc
- authors- literally the relevant authors from- authors/*.yml, parsed
- author- the primary author of this entity
- theme- null or a non-default theme
- layout- null or a non-default layout for this theme
- swatch- null or a non-default swatch for this theme
- categories: [] // all categories in all collections
- tags: [] // all categories in all collections
- production_canonical_urlthe PRODUCTION canonical_url for this entity
- production_urlthe PRODUCTION url for this entity
- production_paththe PRODUCTION path for this entity
- urlthe full url in the current environment (might be production, development, etc)
- paththe non-host part (i.e.- /compiled_dev/articles/my-first-post.html)
- previousthe previous entity in this collection
- nextthe next entitiy in this collection
NOTE: Plugins, widgets, etc SHOULD NOT modify config, site, authors, author, or env.
desi.posts
  , posts: { collated: desi.collated }