【问题标题】:Laravel 5.2 - Metatag canonical UrlLaravel 5.2 - 元标记规范网址
【发布时间】:2017-04-05 03:25:14
【问题描述】:

我正在尝试在我的布局 laravel 中集成元标记,

app.layouts

<title>SiRegala.it - @yield('title')</title>
<meta name="description" content="@yield('description')"/>
<link rel="canonical" href="@yield('canonical')"/>

查看

@section('title')
Homepage
@stop
@section('canonical') 
<?php echoURL::current(); ?>
@stop

我正在尝试获取我的视图的当前网址,但实际上我收到了这个错误:

找不到类“echoURL”

如何获取当前网址?也许用刀片?我试图用刀片搜索一些解决方案,但我什么也没找到。

感谢您的帮助!

【问题讨论】:

  • 使用以下代码代替 {{ URL::current() }} "避免使用 标签"

标签: php laravel blade


【解决方案1】:

规范 URL 的目的是避免内容重复,至少要指定协议和域

  <link rel="canonical" href="{{'https://example.com/' . request()->path()}}" />

【讨论】:

  • 我在查看其他答案时也有同样的想法,我相信至少应该修复域和协议。但我从 env {{ config('app.url') . '/' . request()-&gt;path() }}
【解决方案2】:

Laravel 5.7

<link rel="canonical" href="{{ url()->current() }}" />

【讨论】:

    【解决方案3】:

    如果您使用此代码是另一种解决方案:

    把它放在应用布局中,在&lt;head&gt;&lt;/head&gt; 部分之间。

    <link rel="canonical" href="{{ url(Request::url()) }}" />
    

    你会得到当前的 URL 地址

    【讨论】:

      【解决方案4】:

      改用下面的代码

      {{ URL::current() }}

      “避免使用标签”

      【讨论】:

        【解决方案5】:

        您忘记在echoURL 外观之间放置空格:

        <?php echo URL::current(); ?>
        

        此外,在 Blade 中,您通常希望避免使用 &lt;?php ?&gt;

        {{ URL::current() }}
        
        猜你喜欢
        • 1970-01-01
        • 2020-05-18
        • 2017-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多