视图可用变量
每类页面能拿到哪些变量,以及跨栏目取数据的频道契约。
视图里的变量分两类:全站共享的和页面局部的。
全站共享
任何视图都能直接使用:
| 变量 | 说明 |
|---|---|
$site |
站点实体,常用 $site->name |
$company |
企业档案(名称、电话、邮箱、地址) |
$nav |
导航树 |
$channels |
频道契约,见下 |
$ui |
界面文案字典,支持多语言 |
$url(...) |
URL 构造器 |
$base |
站点根路径,拼静态资源用 |
频道契约
$channels 按栏目 key 索引,每项都带该栏目的完整条目集合:
@php($sec = $channels['ch-dev'] ?? null)
@if ($sec)
<h3>{{ $sec['name'] }}</h3>
@foreach ($sec['items'] as $item)
<a href="{{ $url('article', $item) }}">{{ $item->title }}</a>
@endforeach
@endif
这是跨栏目取数据的唯一途径。详情页本身只拿得到 related(上限 6 条),
要画全站目录树就得走 $channels。
页面局部
列表页
$articles、$pagination、$columnTitle、$columnUrl、$channel。
详情页
$article、$breadcrumbs、$prev、$next、$related、$fieldSchema。
正文用
RichText::render($article->content, $article->content_format)渲染, 它按格式分派到 Markdown 或 HTML 净化,直接输出原始字段会丢排版。