Quick-search for anything
⌘F

@config

The @config property provides access to global data properties, which are available anywhere in your theme.

Specifically @config will pass through the special theme config that is added in the theme’s package.json so that it can be used anywhere in handlebars.

At the moment, there is only one property which will be passed through, as all other properties are accessed with their own helpers.

  • {{@config.posts_per_page}} – the number of posts per page

Example Code

Standard usage:

<a href="{{page_url "next"}}">Show next {{@config.posts_per_page}} posts</a>

In the get helper limit field:

{{#get "posts" filter="featured:true" limit=@config.posts_per_page}}
  {{#foreach posts}}
      <h1>{{title}}</h1>
	{{/foreach}}
{{/get}}

Providing config

Config values can be provided by adding a config block to package.json

{
  "name": "my-theme",
  "version": 1.0.0,
  "author": {
    "email": "[email protected]"
  }
  "config": {
  }
}

There are currently four properties supported:

  • config.posts_per_page — the default number of posts per page is 5
  • config.image_sizes — see the assets guide for more details on responsive images
  • config.card_assets — configure the card CSS and JS that Ghost automatically includes
  • config.custom - add custom settings to your theme