145
resources/views/seo/person-page/prerender.blade.php
Executable file
145
resources/views/seo/person-page/prerender.blade.php
Executable file
@@ -0,0 +1,145 @@
|
||||
@extends('common::prerender.base')
|
||||
|
||||
@section('head')
|
||||
@include('seo.person-page.seo-tags')
|
||||
@endsection
|
||||
|
||||
@section('body')
|
||||
@include('seo.menu')
|
||||
|
||||
<h1>{{ $person->name }}</h1>
|
||||
|
||||
<img
|
||||
src="{{ urls()->image($person->poster) }}"
|
||||
alt="Poster"
|
||||
width="270px"
|
||||
/>
|
||||
|
||||
<div>
|
||||
<h3>{{ __('Biography') }}</h3>
|
||||
<p>{{ $person->description }}</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h3>{{ __('Personal Facts') }}</h3>
|
||||
<dl>
|
||||
<dt>{{ __('Known For') }}</dt>
|
||||
<dd>{{ $person->known_for }}</dd>
|
||||
|
||||
<dt>{{ __('Gender') }}</dt>
|
||||
<dd>{{ $person->gender }}</dd>
|
||||
|
||||
<dt>{{ __('Known Credits') }}</dt>
|
||||
<dd>{{ $total_credits_count }}</dd>
|
||||
|
||||
@if ($person->birth_date)
|
||||
<dt>{{ __('Birth Date') }}</dt>
|
||||
<dd>{{ $person->birth_date }}</dd>
|
||||
@endif
|
||||
|
||||
@if ($person->birth_place)
|
||||
<dt>{{ __('Birth Place') }}</dt>
|
||||
<dd>{{ $person->birth_place }}</dd>
|
||||
@endif
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h3>{{ __('Known For') }}</h3>
|
||||
<ul style="display: flex; flex-wrap: wrap">
|
||||
@foreach ($knownFor as $credit)
|
||||
<li>
|
||||
<div>
|
||||
@if ($credit['poster'])
|
||||
<img
|
||||
src="{{ urls()->image($credit['poster']) }}"
|
||||
alt="Credit poster"
|
||||
width="270px"
|
||||
/>
|
||||
@endif
|
||||
|
||||
<div>
|
||||
<a href="{{ urls()->title($credit) }}">
|
||||
{{ $credit['name'] }}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h3>{{ __('Credits') }}</h3>
|
||||
<ul>
|
||||
@foreach ($credits as $groupName => $creditGroup)
|
||||
<li style="margin-bottom: 15px">
|
||||
<h4 style="text-transform: capitalize">
|
||||
{{ $groupName }} ({{ count($creditGroup) }} credits)
|
||||
</h4>
|
||||
<ul>
|
||||
@foreach ($creditGroup as $credit)
|
||||
<li style="margin-bottom: 15px">
|
||||
<div class="meta">
|
||||
<a
|
||||
href="{{ urls()->title($credit) }}"
|
||||
>
|
||||
{{ $credit['name'] }}
|
||||
</a>
|
||||
@if (isset($credit['pivot']))
|
||||
<div>
|
||||
{{ $credit['pivot']['character'] }}
|
||||
</div>
|
||||
<div>
|
||||
{{ $credit['pivot']['job'] }}
|
||||
</div>
|
||||
<div>
|
||||
{{ $credit['pivot']['department'] }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($credit['episodes']))
|
||||
<div class="episode-list">
|
||||
@foreach ($credit['episodes'] as $episodeCredit)
|
||||
<div class="episode-credit">
|
||||
<div class="episode-name">
|
||||
<span>-</span>
|
||||
<a
|
||||
href="{{ urls()->episode($episodeCredit, $credit) }}"
|
||||
>
|
||||
{{ $episodeCredit['name'] }}
|
||||
</a>
|
||||
<span>
|
||||
({{ $episodeCredit['year'] }})
|
||||
</span>
|
||||
<span
|
||||
class="episode-separator"
|
||||
>
|
||||
...
|
||||
</span>
|
||||
<span>
|
||||
<span>
|
||||
{{ $episodeCredit['pivot']['character'] }}
|
||||
</span>
|
||||
<span>
|
||||
{{ $episodeCredit['pivot']['job'] }}
|
||||
</span>
|
||||
<span>
|
||||
{{ $episodeCredit['pivot']['department'] }}
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
<div class="year">{{ $credit['year'] }}</div>
|
||||
</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endsection
|
||||
38
resources/views/seo/person-page/seo-tags.blade.php
Executable file
38
resources/views/seo/person-page/seo-tags.blade.php
Executable file
@@ -0,0 +1,38 @@
|
||||
<meta property="og:site_name" content="{{ settings('branding.site_name') }}" />
|
||||
<meta property="twitter:card" content="summary" />
|
||||
<meta property="og:type" content="profile" />
|
||||
<title>{{ $person->name }} - {{ settings('branding.site_name') }}</title>
|
||||
<meta property="og:url" content="{{ urls()->person($person) }}" />
|
||||
<link rel="canonical" href="{{ urls()->person($person) }}" />
|
||||
<meta
|
||||
property="og:title"
|
||||
content="{{ $person->name }} - {{ settings('branding.site_name') }}"
|
||||
/>
|
||||
|
||||
@if ($person->poster)
|
||||
<meta property="og:image" content="{{ urls()->image($person->poster) }}" />
|
||||
<meta property="og:width" content="300" />
|
||||
<meta property="og:height" content="450" />
|
||||
@endif
|
||||
|
||||
@if($person->description)
|
||||
<meta property="og:description" content="{{ str($person->description)->limit(400) }}" />
|
||||
<meta name="description" content="{{ str($person->description)->limit(400) }}" />
|
||||
@endif
|
||||
|
||||
<meta property="keywords" content="biography, facts, photos, credits" />
|
||||
|
||||
<script type="application/ld+json">
|
||||
{!! collect([
|
||||
'@context' => 'http://schema.org',
|
||||
'@type' => 'Person',
|
||||
'@id' => urls()->person($person),
|
||||
'url' => urls()->person($person),
|
||||
'name' => $person->name,
|
||||
'image' => urls()->image($person->poster),
|
||||
'description' => $person->description ? str($person->description)->limit(400) : null,
|
||||
'jobTitle' => $person->known_for,
|
||||
'birthDate' => $person->birth_date,
|
||||
'birthPlace' => $person->birth_place,
|
||||
])->filter()->toJson() !!}
|
||||
</script>
|
||||
Reference in New Issue
Block a user