【发布时间】:2021-01-23 00:52:39
【问题描述】:
我有多个视图,它们有一个共同的@section,将显示在布局文件中。而且我必须限制@yield 返回的字符数。
// layout.blade.php
...
<meta property="og:title" content="@yield('og_title', 'Default Value')" />
...
// sample.blade.php
...
@section('og_title', $page->og_title)
...
虽然示例简单易懂,但每个 og_title @section 都有自己的后期处理(if...else...)
现在,我正在做的是将 substr 添加到每个 og_title @section 并将其重复到所有视图。问题是,当字符限制发生变化时(例如 60 到 75),我还必须将其更改为每个视图。
// sample.blade.php
...
@section('og_title', substr($page->meta_title, 0, 60))
...
有没有办法限制@yield 返回的字符数? 类似于:
// layout.blade.php
...
<meta property="og:title" content="@yield('og_title', 'Default Value', $limit??)" />
...
我也尝试将 substr 添加到 @yeild 但它返回错误:
// layout.blade.php
...
<meta property="og:title" content="{{ substr(@yield('og_title', 'Default Value'), 0, 60) }}" />
...
【问题讨论】:
标签: php laravel laravel-blade yield substr