snicco / blade-bridge
在WordPress中使用Laravel的Blade模板引擎v8.x。已全面测试,可用于生产环境。
v2.0.0-beta.9
2024-09-07 14:27 UTC
Requires
- php: ^7.4|^8.0
- illuminate/collections: ^8.81
- illuminate/container: ^8.81
- illuminate/contracts: ^8.81
- illuminate/events: ^8.81
- illuminate/filesystem: ^8.81
- illuminate/macroable: ^8.81
- illuminate/support: ^8.81
- illuminate/view: ^8.81
- snicco/better-wp-api: ^2.0
- snicco/templating: ^2.0
Requires (Dev)
- phpunit/phpunit: ^9.5.13
- symfony/finder: ^5.0
Conflicts
- snicco/better-wp-cache: <2.0.0-beta.9
- snicco/better-wp-cache-bundle: <2.0.0-beta.9
- snicco/better-wp-cli: <2.0.0-beta.9
- snicco/better-wp-cli-testing: <2.0.0-beta.9
- snicco/better-wp-hooks: <2.0.0-beta.9
- snicco/better-wp-hooks-bundle: <2.0.0-beta.9
- snicco/better-wp-mail: <2.0.0-beta.9
- snicco/better-wp-mail-bundle: <2.0.0-beta.9
- snicco/better-wp-mail-testing: <2.0.0-beta.9
- snicco/better-wpdb: <2.0.0-beta.9
- snicco/better-wpdb-bundle: <2.0.0-beta.9
- snicco/blade-bundle: <2.0.0-beta.9
- snicco/content-negotiation-middleware: <2.0.0-beta.9
- snicco/debug-bundle: <2.0.0-beta.9
- snicco/default-headers-middleware: <2.0.0-beta.9
- snicco/eloquent: <2.0.0-beta.9
- snicco/encryption-bundle: <2.0.0-beta.9
- snicco/event-dispatcher: <2.0.0-beta.9
- snicco/event-dispatcher-testing: <2.0.0-beta.9
- snicco/guests-only-middleware: <1.0.0
- snicco/http-routing: <2.0.0-beta.9
- snicco/http-routing-bundle: <2.0.0-beta.9
- snicco/http-routing-testing: <2.0.0-beta.9
- snicco/https-only-middleware: <2.0.0-beta.9
- snicco/illuminate-container-bridge: <2.0.0-beta.9
- snicco/kernel: <2.0.0-beta.9
- snicco/kernel-testing: <2.0.0-beta.9
- snicco/method-override-middleware: <2.0.0-beta.9
- snicco/minimal-logger: <2.0.0-beta.9
- snicco/must-match-route-middleware: <2.0.0-beta.9
- snicco/no-robots-middleware: <2.0.0-beta.9
- snicco/open-redirect-protection-middleware: <2.0.0-beta.9
- snicco/payload-middleware: <2.0.0-beta.9
- snicco/pimple-bridge: <2.0.0-beta.9
- snicco/psr7-error-handler: <2.0.0-beta.9
- snicco/redirect-middleware: <2.0.0-beta.9
- snicco/session: <2.0.0-beta.9
- snicco/session-bundle: <2.0.0-beta.9
- snicco/session-psr16-bridge: <2.0.0-beta.9
- snicco/session-testing: <2.0.0-beta.9
- snicco/session-wp-bridge: <2.0.0-beta.9
- snicco/share-cookies-middleware: <2.0.0-beta.9
- snicco/signed-url: <2.0.0-beta.9
- snicco/signed-url-psr15-bridge: <2.0.0-beta.9
- snicco/signed-url-psr16-bridge: <2.0.0-beta.9
- snicco/signed-url-testing: <2.0.0-beta.9
- snicco/signed-url-wp-bridge: <2.0.0-beta.9
- snicco/str-arr: <2.0.0-beta.9
- snicco/templating-bundle: <2.0.0-beta.9
- snicco/testable-clock: <2.0.0-beta.9
- snicco/testing-bundle: <2.0.0-beta.9
- snicco/trailing-slash-middleware: <2.0.0-beta.9
- snicco/wp-auth-only-middleware: <2.0.0-beta.9
- snicco/wp-capability-middleware: <2.0.0-beta.9
- snicco/wp-capapility-middleware: <1.0.0
- snicco/wp-guests-only-middleware: <2.0.0-beta.9
- snicco/wp-nonce-middleware: <2.0.0-beta.9
- dev-master
- v2.0.0-beta.9
- v2.0.0-beta.8
- v2.0.0-beta.7
- v2.0.0-beta.6
- v2.0.0-beta.5
- v2.0.0-beta.4
- v2.0.0-beta.3
- v2.0.0-beta.2
- v2.0.0-beta.1
- v1.10.1
- v1.10.0
- v1.9.1
- v1.9.0
- v1.8.1
- v1.8.0
- v1.7.0
- v1.6.2
- v1.6.1
- v1.6.0
- v1.5.0
- v1.4.2
- v1.4.1
- v1.4.0
- v1.3.0
- v1.2.1
- v1.2.0
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.2
- v1.0.1
- v1.0.0
- dev-beta
This package is auto-updated.
Last update: 2024-09-07 14:27:52 UTC
README
此包允许在不使用全栈Laravel框架的情况下使用blade模板引擎。
100%经过测试,全面支持blade的所有功能,包括视图编译器。
必须与此包一起使用snicco/templating
。
安装
composer require snicco/blade-bridge
使用
创建一个BladeViewFactory
要开始使用snicco/templating
的模板引擎渲染.blade.php
视图,我们需要创建一个BladeViewFactory
并将其传递给模板引擎。
use Snicco\Bridge\Blade\BladeStandalone; use Snicco\Bridge\Blade\BladeViewFactory; use Snicco\Component\Templating\Context\ViewContextResolver; use Snicco\Component\Templating\TemplateEngine; /** * @var ViewContextResolver $view_context_resolver */ $view_context_resolver = /* Check the documentation of snicco/templating */ $blade = new BladeStandalone( __DIR__.'/cache/blade', // directory path for the compiled templates [ __DIR__.'/views', __DIR__.'/templates', ], // An array of directories where views are located $view_context_resolver ); $blade->boostrap(); /** * @var BladeViewFactory */ $blade_view_factory = $blade->getBladeViewFactory(); $template_engine = new TemplateEngine( $blade_view_factory );
现在您可以使用模板引擎渲染任何.blade.php
视图。
Blade功能
可以使用blade 8.x的所有功能。请参阅文档。
默认情况下,此包禁用了某些指令,当使用这些指令时将抛出异常,因为它们与Laravel的全局辅助函数未解耦。
您可以通过使用Blade::directive()
来使用自己的实现重新启用它们。
以下指令被禁用
- auth
- guest
- method
- csrf
- service
- env
- production
- can
- cannot
- canany
- dd
- dump
- lang
- choice
- error
- inject
贡献
此存储库是Snicco项目的开发仓库的只读分支。
报告问题和发送pull请求
请将问题报告在Snicco monorepo中。
安全性
如果您发现了一个安全漏洞,请按照我们的披露程序操作。