magehx/mage-template-utils
最新稳定版本:1.1.0
Composer 安装命令:
composer require magehx/mage-template-utils
包简介
Magento 2 module that provides powerful global utility features to the templates.
README 文档
README
A Magento 2 module that introduces convenient global utilities for use in .phtml templates, helping you write cleaner, more expressive code.
✨ Features
🔒 Escaper Shortcuts
Use simple closure aliases instead of long $escaper method calls:
| Alias | Equivalent |
|---|---|
$esc->html() |
$escaper->escapeHtml() |
$esc->js() |
$escaper->escapeJs() |
$esc->url() |
$escaper->escapeUrl() |
$esc->htmlAttr() |
$escaper->escapeHtmlAttr() |
Example:
<?= $esc->html(__('Hello world!')) ?>
Instead of:
<?= $escaper->escapeHtml(__('Hello world!')) ?>
📦 ViewModel Provider – $viewModelProvider
Fetch a ViewModel instance directly inside a .phtml file without having to declare it in layout XML:
<?php use Namespace\Module\ViewModel\YourViewModel; use MageHx\MageTemplateUtils\Model\ViewModelProvider; /** @var ViewModelProvider $viewModelProvider */ $viewModel = $viewModelProvider->get(YourViewModel::class); ?>
🧾 Form Key Helper – $formKey
Insert a hidden form key input in one line:
<form>
<?= $formKey ?>
...
</form>
Simple, secure, and saves time.
🔐 CSP Nonce Provider – $nonce
Generate a valid CSP nonce for inline scripts:
<script nonce="<?= $esc->htmlAttr($nonce) ?>"> // safe inline script </script>
Essential for security-conscious development.
🎨 Conditional Class Names – $classNames
Apply dynamic class names with ease and clarity:
Before:
<div class="flex items-center <?= $escaper->escapeHtmlAttr($condition1 ? 'justify-between' : 'justify-center') ?> <?= $escaper->escapeHtmlAttr($i > 10 ? 'bg-orange' : '') ?>"> ... </div>
After:
<div class="<?= $classNames([ 'flex items-center', $condition1 ? 'justify-between' : 'justify-center', 'bg-orange' => $i > 10 ]) ?>"> ... </div>
Improves readability and maintainability of conditional UI.
📦 Installation
composer require magehx/mage-template-utils
🔗 Requirements
- PHP 8.1+
🛠️ License
MIT – free to use and modify.
💬 Feedback / Contributions
PRs and issues are welcome. Let’s make Magento templating less painful!
统计信息
- 总下载量: 398
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 2
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-05-07