Blade Cache Directive

ryangjchandler/blade-cache-directive image

Blade Cache Directive stats

Downloads
32.1K
Stars
179
Open Issues
0
Forks
16

View on GitHub →

Cache chunks of your Blade markup with ease.

Blade Cache Directive

Cache chunks of your Blade markup with ease.

Installation

You can install the package via Composer:

composer require ryangjchandler/blade-cache-directive

You can publish the config file with:

php artisan vendor:publish --provider="RyanChandler\BladeCacheDirective\BladeCacheDirectiveServiceProvider" --tag="blade-cache-directive-config"

This is the contents of the published config file:

return [
 
'enabled' => env('BLADE_CACHE_DIRECTIVE_ENABLED', true),
 
'ttl' => env('BLADE_CACHE_DIRECTIVE_TTL', 3600),
 
];

Usage

This package adds a new @cache Blade directive. It accepts 2 arguments - the cache key and a TTL.

@cache('current_time', 30)
{{ now() }}
@endcache

When used inside of a Blade template, the content between the 2 directives will be cached using Laravel's application cache. If a TTL (in seconds) isn't provided, the default TTL of 1 hour will be used instead.

If you want to cache the content for a particular model, i.e. a User model, you can use string interpolation to change the key.

@cache("user_profile_{$user->id}")
{{ $user->name }}
@endcache

When a new user is passed to this view, a separate cache entry will be created.

Disabling caching

If you wish to disable caching when using the @cache directive (useful for local development and testing), you can set the BLADE_CACHE_DIRECTIVE_ENABLED environment variable to false.

Alternatively, publish the configuration file and modify the enabled entry accordingly.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.


Ryangjchandler Blade Cache Directive Related Articles

No Compromises logo

No Compromises

Joel and Aaron, the two seasoned devs from the No Compromises podcast, are now available to hire for your Laravel project. ⬧ Flat rate of $9500/mo. ⬧ No lengthy sales process. ⬧ No contracts. ⬧ 100% money back guarantee.

No Compromises
Curotec logo

Curotec

World class Laravel experts with GenAI dev skills. LATAM-based, embedded engineers that ship fast, communicate clearly, and elevate your product. No bloat, no BS.

Curotec
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift
The Certification of Competence for Laravel logo

The Certification of Competence for Laravel

A community-driven, proctored assessment across 4 levels designed to validate real-world Laravel knowledge, from Junior to mastery-level Artisan. Official Vue.js, Official Nuxt, Angular, React, JS certifications also available.

The Certification of Competence for Laravel
Statamic logo

Statamic

The drop-in ready Laravel CMS you’re been waiting for. Go full-stack or headless, flat file or database – it’s up to you.

Statamic
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell