Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Plates Laravel Package

league/plates

View on GitHub
Deep Wiki
Context7
v3.6.0

What's Changed

New Contributors

Full Changelog: https://github.com/thephpleague/plates/compare/v3.5.0...v3.6.0

v3.5.0

What's Changed

New Contributors

Full Changelog: https://github.com/thephpleague/plates/compare/v3.4.0...v3.5.0

v3.4.0

Added

  • Added new unshift method in templates to support prepending content to sections (thanks @kozubsky)
  • Added support for PHP8 (thanks @roxblnfk)

Changed

  • Dropped explicit support for php 5. PHP 7/8 is allowed in composer, and only php 7.3-8.0 are tested in CI pipeline.

Internal Changes

  • Minor modifications to repo workflow for CI with GitHub Actions instead of Travis
  • Migrated docs from Jekyll to Hugo
v4.0.0-alpha

EDIT (12/24/2020): This release has been abandoned. Some of this work will be merged into the v3 branch, but most of it has been scrapped. This tag will still be available, but a version 4 will not be based off of this alpha release.

v4 has been a complete rewrite in the plates system. It's fairly backwards compatible, but a lot of the internals have changed, and we still have a decent amount of features and work to do for v4.

Significant Changes

  • Templates are Immutable VO's
  • Rendering is handled via RenderTemplate interfaces
  • Extensions are first class citizens
  • The Engine is now a small wrapper for an IoC Container

New Features

  • RenderContext API for defining composable functions and more
  • Components
  • Powerful and customizable naming strategies for dynamic base paths
  • Multi folder fallbacks
  • Relative and Absolute Path templates
  • Better Error Handling
  • Default Layouts
  • Deep Sections #169
  • Template Composers
  • Static File Rendering
  • Image/Base64Encoding Rendering
  • And probably a few more ;p

Documentation is lacking for many of these features. Contributions are welcome! The best way to learn about the features it to look at the tests and examples.

3.3.0
  • Added the ability to append content to sections using the new push() function.
  • Added an end() function as an alias to stop().
3.2.0
  • Fixed an issue where template functions were not accessible from extensions.
  • Fixed an issued with the URI extension throwing errors when it shouldn't.
  • Added the ability to get all template data by calling $template->data().
  • Added the ability to render a template via the toString() magic method.
  • Added the ability to run the tests using composer test.
  • Improvements to error handling when rendering templates.
  • Various coding style, CI and documentation improvements.
3.1.1
  • Fix bug related to output buffering and exceptions (#78).
  • Improvements to escaping (#56).
  • Various CI and packaging improvements.
3.1.0
  • Added batch functionality to the escaping functions.
3.0.3
  • Added ability to define the default content of a section.
  • Various code improvements (cleanup DocBlocks, class simplification, add Composer keywords, etc).
3.0.2
  • Added all missing tests.
  • Improved custom function name validation.
  • Fixed bug with fallback folders, where the file extension wasn't being applied.
  • Improved error handling in Template class.
3.0.1
  • Updated extension interface to ensure that an instance of the Engine class be passed to the register() method.
  • Minor code cleanup.
3.0.0
  • Added ability to share data across templates.
  • Added ability to preassign data to specific templates.
  • Added ability to create one-off template functions, without using an extension.
  • Added new folder "fall backs", where missing folder templates will fall back to the default folder.
  • Added new render() method to Engine class, improving the use of the Engine as the primary API.
  • Templates variables are now accessed without the $this pseudo-variable.
  • Total overhaul to how extensions are registered. Replaced getFunctions() method with new register() method.
  • Section content is no longer assigned to template variables. Use the the section() function instead.
  • Renamed section end() function to stop(). This fits more appropriately with the start() function.
  • Renamed get() function to fetch().
  • Renamed pathExists() method in the Engine class to exists().
  • Renamed getTemplatePath() method in the Engine class to path().
  • Renamed makeTemplate() method in the Engine class to make().
  • Removed the ability to assign template data directly to the Template class. For example: $this->name = 'Jonathan'. This applies both within and outside of templates. Use the data() method instead.
  • Removed getEngine() method from the Template class. There's no reason to need this anymore.
  • Removed addFolders() method from the Engine() class.
  • Removed unloadExtension() and unloadExtensionFunction() methods from the Engine() class.
2.1.0
  • Improved DocBlocks throughout the library.
  • The insert() functionality has been moved to a new extension, called Nest.
  • A new get() function was also added with this extension, which offers an alternative syntax for nesting templates.
  • Improved error messages.
  • A new error check which prevents the calling of the render() function from within templates themselves. If this functionally is required, use the nesting functions instead.
  • Added a clearer error message to the content() function when calling it from a non layout template.
  • Added a clearer error message to the batch() extension function when a provided function does not exist.
  • Fixed a bug in the engine where it was possible to overwrite a default extension when loading extensions.
2.0.0
  • Added stacked layouts, allowing even further simplification and organization of templates.
  • Added new unloadExtension() and unloadExtensionFunction() methods to the Engine() class.
  • Added getEngine() method to the Template class.
  • Added addFolders() and loadExtensions() methods to the Engine() class.
  • Nested templates are now self-contained objects, with their own variables and layouts.
1.0.8
  • Added "replace" value to Composer configuration.
1.0.9
  • Added the ability to assign template variables using the insert() method.
1.0.10
  • Fix bug in the batch extension.
1.0.11
  • Updated to reflect new GitHub username (changed from php-loep to thephpleague).
1.2.1
  • Added new makeTemplate() template factory method.
  • Added a new pathExists() method to check if a template exists.
1.1.0
  • Switched to PSR-4 autoloading.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor