Download the PHP package machinateur/twig-context-tags without Composer

On this page you can find all versions of the php package machinateur/twig-context-tags. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package twig-context-tags

Twig Context Tags

A twig extension that allows the following language construct in twig templates:

This can be used to collect all tags defined when parsing and saving them to a custom Template method at compile-time, which in turn makes it possible to predict which context is required for the respective template at runtime, before rendering the actual contents.

This especially helps in a 1:1 route to template-file kinds of situations.

Requirements

Installation

Use composer to install this twig extension.

Usage

This twig extension allows for defining certain context tags in template code, which will be evaluated at compile-time, but is available at runtime before actually rendering the content.

This mechanic allows for quite creative implementations, especially when combined with a content resolution framework.

The tags accept a wrapped or unwrapped sequence (i.e. with/without []). Use it like this:

Limitations

All tag values have to be constant expressions. This is inherent to how the extension works under the hood.

Example

This will output something like this:

Tags are ordered by count and sequence of occurrence.

Then, after processing, to render the template:

Template inheritance

The extension also supports collecting tags across template inheritance boundaries, similar to how the set tag works. The parent tags will be prepended, if any.

The feature is turned off by default, but by passing true to getContextTags() it can be activated.

Note on potential abstractions

This pairs well with events, for example through Symfony's EventDispatcher component in order to resolve the specific context entries by tag, before passing it to render($context).

In such a setup, the responsibility to define context is shifted to the template designer and domain. At least as long as the underlying PHP application code can handle this kind of "dynamic context" resolution.

Tests

Run tests using the composer script:

License

It's MIT.


All versions of twig-context-tags with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1.0
twig/twig Version ^3.15
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package machinateur/twig-context-tags contains the following files

Sorry, there are no file data to show!