| 
									
										
										
										
											2015-01-13 03:41:14 -07:00
										 |  |  | 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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-14 05:12:12 -05:00
										 |  |  | config.yml vs site.yml | 
					
						
							|  |  |  | ------ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | site.yml is for anything that changes the content of the site (navigation, title, analytic and ad ids, default author, etc) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config.yml is for anything that doesn't change the site (from where to read directories, which order to load plugins) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-13 03:41:14 -07:00
										 |  |  | ``` | 
					
						
							|  |  |  | 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_url` the PRODUCTION canonical_url for this entity | 
					
						
							|  |  |  | * `production_url` the PRODUCTION url for this entity | 
					
						
							|  |  |  | * `production_path` the PRODUCTION path for this entity | 
					
						
							|  |  |  | * `url` the full url in the current environment (might be production, development, etc) | 
					
						
							|  |  |  | * `path` the non-host part (i.e. `/compiled_dev/articles/my-first-post.html`) | 
					
						
							|  |  |  | * `previous` the previous entity in this collection | 
					
						
							|  |  |  | * `next` the next entitiy in this collection | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | NOTE: Plugins, widgets, etc SHOULD NOT modify config, site, authors, author, or env. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | desi.posts | 
					
						
							|  |  |  | ========== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       , posts: { collated: desi.collated } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | desi.config | 
					
						
							|  |  |  | =========== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | desi.site | 
					
						
							|  |  |  | =========== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | desi.env | 
					
						
							|  |  |  | =========== |