Laravelのローカライズ機能を利用しようとしていますが、フレーズの一部を強調したり太字にしたりする必要があります。 HTMLファイルを言語ファイルに挿入すると、ブレードに出力されるときにエスケープされます。
たとえば、ここに私の言語ファイルのエントリがあります:
return [
'nav' => [
'find' => '<strong>Find</strong> Your Home',
]
];
ブレード内から呼び出す場合:(トリプルブレースも使用しようとしました。)
{{ trans('base.nav.find') }}
以下を出力します:
<strong>Find</strong> Your Home
私は潜在的にフレージングを次のように分割できます:
return [
'nav' => [
'fyh' => [
'find' => 'Find',
'yh' => 'Your Home',
]
]
]
そして出力:
<strong>{{ trans('base.nav.fyh.find') }}</strong>{{ trans('base.nav.fyh.yh') }}
しかし、それはやり過ぎのようです。より良い解決策はありますか?
つかいます {!! !!}
の代わりに {{ }}
エスケープを防ぐため:
{!! trans('nav.find') !!}
Laravel 5.6以降を使用すると、ブレード構文とともに___
_ヘルパーを使用できます。
{!! __('pagination.next') !!}
ページネーションブレードテンプレートに対してこれらを行う必要がありました。