Site

Referência de Helpers

v4

Todas as funções globais da v4. Use em handlers, views e services. Arquivo: app/engine/core/helpers.php. Helpers do seu projeto: bootstrap/helpers.php.

💡Dentro de namespace

Em arquivos com namespace MUCRM\..., chame com barra: \to('home'), \logged().

<?= e($nome) ?>
<?= csrf() ?> <?= method('PUT') ?>
<a href="<?= to('user.panel') ?>">Painel</a>
<?= view('_components.alert-message') ?>

HTML e formulários

HelperO que faz
e($valor)Escapa HTML. Sempre use ao mostrar dados do usuário.
csrf()Campo hidden do token. Obrigatório em POST/PUT/PATCH/DELETE.
csrf_token()Só o valor do token (meta tag, AJAX).
method('PUT')HTML só tem GET/POST. Isso simula PUT, PATCH ou DELETE.
old('email')Valor digitado antes de um erro de validação.
error('email')Primeira mensagem de erro daquele campo.
validation_errors()Array com todos os erros.
flash_message()Mensagem de sucesso/erro da sessão, ou null.

Views e layout

HelperO que faz
view('caminho', $dados)Inclui um template. Ponto vira pasta: _components.web.title_components/web/title.mucrm.php.
layout('_layouts.app')Define o layout da próxima renderização (uso raro; no handler use $layout).
stack_styles()No layout, no <head>: imprime CSS empilhado.
stack_scripts()No layout, antes de </body>: imprime JS empilhado.
push_style($html)Na view da página: empilha um <link>.
push_script($html)Na view da página: empilha um <script>.
plug_style($mod, $path)Empilha CSS do módulo (app/modules/{mod}/views/assets/).
plug_script($mod, $path)Empilha JS do módulo.

Layout do site: _layouts.app. Admin: panels.admin._layouts.app. Detalhes em Layouts.


Rotas, URLs e arquivos

HelperO que faz
to('home')URL da rota nomeada. Com params: to('shop.show', ['id' => 1]).
route('home')Igual a to(), mas já como string.
redirect($url)Redireciona e encerra. Prefira res()->to() nos handlers.
base_url('api')URL do site + caminho.
src('css/app.css')Arquivo em public/.
asset($path)Alias de src().
theme_src('css/style.css')Arquivo em themes/{tema}/assets/.
theme_asset($path)Alias de theme_src().
plugin_src('Shop', 'js/a.js')Arquivo em app/modules/shop/views/assets/.
resource($path)URL de recurso estático (mesmo grupo de src).
base_path()Caminho no disco: raiz do projeto.
app_path('modules/shop')Caminho no disco: pasta app/.
public_path('css')Caminho no disco: pasta public/.
safe_public_path($rel)Caminho seguro dentro de public/ (bloqueia ../).

Request, resposta e sessão

HelperO que faz
request()Objeto da requisição. request('email') lê um campo.
req()Alias de request().
res()Resposta: res()->success('Ok')->back().
json($array, 200)Responde JSON e encerra.
session('chave')Lê a sessão. Sem chave: objeto com set, has, forget.
config('app.server.name')config/ na raiz. Sem chave: array inteiro.
cache()Cache em arquivo: put, get.
collect($itens)Array com filter, map, pluck.

Auth, SEO e módulos

HelperO que faz
logged()Tem sessão? logged('admin') para o painel.
account()Usuário logado ou null.
auth() / auth_check()Aliases de account() e logged().
title()Título da página (já escapado). Defina no handler: ->title('Loja').
description()Meta description. Defina no handler: ->title('Loja', 'Texto').
image()Imagem Open Graph. Terceiro argumento de ->title().
plug('post::web@index')Chama um método de módulo e devolve dados (widget).
module('shop@index')Atalho: handler (mod@acao), view de módulo (mod:pasta.view) ou view do tema.
authorize_plugin($nome)Bloqueia a página se o módulo não estiver na licença.