Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inteve\Latte

Build Status Downloads this Month Latest Stable Version License

Extensions for Latte templates

Donate

Installation

Download a latest package or use Composer:

composer require inteve/latte

Inteve\Latte requires PHP 8.0 or later and Latte 2.

Usage

Installation of extensions

\Inteve\Latte\ExtensionInstaller::install($latte, [
	new FooExtension,
	new BarExtension,
]);

or via Nette DI extension:

extensions:
	inteve.latte: Inteve\Latte\DIExtension

services:
	- FooExtension
	- BarExtension

IconExtension

Creates new Latte tag {icon foo}. Saves icon code directly to compiled template. Requires implementation PHIG's HtmlIcons interface.

\Inteve\Latte\ExtensionInstaller::install($latte, [
	new \Inteve\Latte\IconExtension($phigIcons),
]);
{icon myIcon}

TypographyExtension

Creates new Latte filter |typography.

\Inteve\Latte\ExtensionInstaller::install($latte, [
	new \Inteve\Latte\TypographyExtension,
]);
{='My a text'|typography} {* prints 'My a text' *}

Custom extension

Just extends Inteve\Latte\Extension:

class MyExtension extends \Inteve\Latte\Extension
{
	/**
	 * @return array<callable(\Latte\Compiler):void>
	 */
	public function getTags(): array
	{
		return [
			function (\Latte\Compiler $compiler) {
				$me = new Latte\Macros\MacroSet($compiler);
				$me->addMacro('myTag', ['MyLatteMacros', 'macroMyTag']);
			},
		];
	}


	/**
	 * @return array<string, callable>
	 */
	public function getFilters(): array
	{
		return [
			'myFilter' => function ($value) {
				return $value,
			},
		];
	}


	/**
	 * @return array<string, mixed>
	 */
	public function getProviders(): array
	{
		return [
			'myProvider' => 'foo bar',
		];
	}
}

License: New BSD License
Author: Jan Pecha, https://www.janpecha.cz/

About

Helper classes for Latte.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages