You can set your own locations for your twig files with...
Timber::$locations = '/Users/jared/Sandbox/templates';
Use the full file path to make sure Timber knows what you're trying to draw from. You can also send an array for multiple locations:
Timber::$locations = array(
You only need to do this once in your project (in
functions.php of your theme). When you call one of the render or compile functions from a PHP file (say
single.php), Timber will look for Twig files in these locations before it checks the child or parent theme.
Changing the default folder for Twig files #
By default, Timber looks in your child and parent theme’s
views directory to pull
.twig files. If you don't like the default
views directory (which by default resides in your theme folder), you can change that.
Example: If I want to use
/wp-content/themes/my-theme/twigs as my default folder, I can either configure it with a string or use an array with fallbacks.
Configure with a string #
Timber::$dirname = 'twigs';
Use an array with fallbacks #
This is an alternative to configuring
$dirnames with a string.
Timber::$dirname = array( 'templates', 'templates/shared/mods', 'twigs', 'views' );
You can always reference subdirectories in your template folders relatively. For example:
Timber::render( 'shared/headers/header-home.twig' );
... might correspond to a file in