Files
SEONexus/code/app/home/view/videoNuNu/video/getVideoInfo.html
Your Name e8688443e5 debug
2026-04-19 13:49:04 +08:00

447 lines
20 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{extend name="base" /}
{block name="get-data"}
{if $Request.route.intVId && $Request.route.intVForgeId}
{video:info v_id="$Request.route.intVId" v_key="arrVideo" v_fid="$Request.route.intVForgeId" /}
{elseif $Request.route.intVId}
{video:info v_id="$Request.route.intVId" v_key="arrVideo" /}
{else}
{video:info v_id="$DomainModel->info_id" n_key="arrVideo" /}
{/if}
{site:grm page_code="h5_video_info" diff="$arrVideo.v_id" num="120" g_key="arrGrm" /}
{/block}
{block name="title"}
{if $DomainModel->info_id == $Request.route.intVId || empty($Request.route.intVId)}
{site:replace code="VIDEO@INDEX@INDEX@TITLE"}
{else}
{site:replace code="VIDEO@GETVIDEOINFO@TITLE" diff="$Request.route.intVId" /}
{/if}
{/block}
{block name="keywords"}
{if $DomainModel->info_id == $Request.route.intVId || empty($Request.route.intVId)}
{site:replace code="VIDEO@INDEX@INDEX@KEYWORDS"}
{else}
{site:replace code="VIDEO@GETVIDEOINFO@KEYWORDS" diff="$Request.route.intVId"}
{/if}
{/block}
{block name="description"}
{if $DomainModel->info_id == $Request.route.intVId || empty($Request.route.intVId)}
{site:replace code="VIDEO@INDEX@INDEX@DESCRIPTION"}
{else}
{site:replace code="VIDEO@GETVIDEOINFO@DESCRIPTION" diff="$Request.route.intVId"}
{/if}
{/block}
{block name="head"}
{// Open Graph 协议用于Facebook、LinkedIn等}
<meta property="og:title" content='{site:replace code="VIDEO@GETVIDEOINFO@TITLE"}'>
<meta property="og:description" content='{site:replace code="VIDEO@GETVIDEOINFO@DESCRIPTION"}'>
{switch $arrVideo.v_parent_category_en }
{case 'dian-ying' }
<meta property="og:type" content="video.movie" />
{/case}
{case 'dian-shi-ju' }
<meta property="og:type" content="video.episode" />
{/case}
{case 'zong-yi' }
<meta property="og:type" content="video.tv_show" />
{/case}
{case 'dong-man' }
<meta property="og:type" content="video.episode" />
{/case}
{case 'duan-ju-da-quan' }
<meta property="og:type" content="video.episode" />
{/case}
{default /}
<meta property="og:type" content="video.movie" />
{/switch}
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'>
<meta property="og:image" content="{$arrVideo.v_pic}">
<meta property="og:site_name" content="{$DomainModel->d_name}">
<meta property="og:video:type" content="video/m3u8">
{// Twitter Card用于Twitter/X}
<meta name="twitter:card" content="player">
<meta name="twitter:title" content='{site:replace code="VIDEO@GETVIDEOINFO@TITLE"}'>
<meta name="twitter:description" content='{site:replace code="VIDEO@GETVIDEOINFO@DESCRIPTION"}'>
<meta name="twitter:image" content="{$arrVideo.v_pic}">
{if $Request.route.intVId && $Request.route.intVForgeId}
<link rel="canonical"
href='https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'>
{/if}
{// 结构化数据}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "{$arrVideo.v_name}",
"description": "{$arrVideo.v_description}",
"thumbnailUrl": "{$arrVideo.v_pic}",
"uploadDate": "{:date('Y-m-d')}",
"url": 'https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}',
"genre": ["动作", "科幻"],
"keywords": '{site:replace code="VIDEO@GETVIDEOINFO@KEYWORDS"}',
"inLanguage": [
{volist name='$arrVideo.v_lang' id='strVideoLang' key='index'}
"{$strVideoLang}",
{/volist}
],
"contentLocation": [
{volist name='$arrVideo.v_area' id='strVideoArea' key='index'}
{
"@type": "Place",
"name": "{$strVideoArea}"
},
{/volist}
],
"director": [
{volist name='$arrVideo.v_director' id='strVideoDirector' key='index'}
{
"@type": "Person",
"name": "{$strVideoDirector}"
}
{/volist}
],
"actor": [
{volist name='$arrVideo.v_actor' id='strVideoActor' key='index'}
{
"@type": "Person",
"name": "{$strVideoActor}"
},
{/volist}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "{$arrVideo.v_score}",
},
"publisher": {
"@type": "Organization",
"name": "{$DomainModel->d_name}",
}
}
</script>
{/block}
{block name='body-class'}video-info-page{/block}
{block name="strPageCode"}
<?php $strPageCode = 'info'; ?>
{/block}
{block name="main"}
<div class="container">
<nav class="breadcrumb" aria-label="breadcrumb">
<ol itemscope itemtype="https://schema.org/BreadcrumbList">
<li style="margin-right:10px"><label><i class="baf725 fa fa-map-marker"></i></label></li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href="/" itemprop="item">
<span itemprop="name">首页</span>
</a>
<meta itemprop="position" content="1" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:vciurl parent_category="$arrVideo.v_parent_category_en" /}' itemprop="item">
<span itemprop="name">{$arrVideo.v_parent_category}</span>
</a>
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:vclurl parent_category="$arrVideo.v_parent_category_en" category="$arrVideo.v_parent_category_en" area="all" lang="all" year="all" order="all" page="1"/}'
itemprop="item">
<span itemprop="name">{$arrVideo.v_category}</span>
</a>
<meta itemprop="position" content="3" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}' itemprop="item">
<span itemprop="name">{$arrVideo.v_name}</span>
</a>
<meta itemprop="position" content="4" />
</li>
</ol>
</nav>
<h1 class="view-title">
{site:replace code="VIDEO@GETVIDEOINFO@H1" diff="$arrVideo.v_id"}
</h1>
<h4 class="view-description">{site:replace code="VIDEO@GETVIDEOINFO@TEXT" diff="$arrVideo.v_id"}</h4>
<div class="row">
<div class="col-lg-wide-75 col-xs-1 padding-0">
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box clearfix">
<div class="stui-pannel_bd clearfix">
<div class="stui-content col-pd clearfix">
<div class="stui-content__thumb">
<a class="stui-vodlist__thumb picture v-thumb"
href='{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'
title="{$arrVideo.v_name}">
<img class="lazyload lazyload-img" src="/static/img/loading.webp" data-src="{site:cfg code='PUBLIC_COVER_DOMAIN' encode='false'/}{$arrVideo.v_pic}" >
<span class="play active hidden-xs"></span>
<span class="pic-text text-right">{$arrVideo.v_remarks}</span>
</a>
</div>
<div class="stui-content__detail">
<h1 class="title">{$arrVideo.v_name}</h1>
<div class="score">
<div class="star">
<span class="star-cur" id="score" style="width: 90%;"></span>
</div>
<span class="branch">{$arrVideo.v_score}</span>
</div>
<p class="data hidden-xs">
<span class="text-muted">类型:</span>
<a
href='{site:vciurl parent_category="$arrVideo.v_parent_category_en" /}'>{$arrVideo.v_parent_category}</a>&nbsp;
<a
href='{site:vclurl parent_category="$arrVideo.v_parent_category_en" category="$arrVideo.v_category_en" area="all" lang="all" year="all" order="all" page="1"/}'>{$arrVideo.v_category}</a>&nbsp;
<span class="split-line"></span>
<span class="text-muted">地区:</span>
{volist name='$arrVideo.v_director' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
<span class="split-line"></span>
<span class="text-muted">年份:{$arrVideo.v_year}</span>
<span class="split-line"></span>
<span class="text-muted">语言:</span>
{volist name='$arrVideo.v_lang' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
</p>
<p class="data">
<span class="text-muted">主演:</span>
{volist name='$arrVideo.v_actor' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
</p>
<p class="data">
<span class="text-muted">导演:</span>
{volist name='$arrVideo.v_director' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
</p>
<p class="data hidden-xs">
<span class="text-muted">更新:</span>
{$arrVideo.v_publish_date}
</p>
<div class="play-btn clearfix">
<div class="share bdsharebuttonbox hidden-sm hidden-xs pull-right"></div>
<a class="btn btn-primary"
href='{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
立即播放
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box b playlist mb">
<div class="stui-pannel_hd">
<div class="stui-pannel__head bottom-line active clearfix">
<span class="nore text-muted pull-right"></span>
<?php $keyLineGroup = 0;?>
{foreach $arrVideo.v_play_url as $strPlayGroupName=>$arrPlayUrlType }
<?php $keyLineGroup ++ ;?>
<h3 class='title play-group-head {eq name="$keyLineGroup" value="1"}active {/eq}'
id="line_head_{$strPlayGroupName}" onclick="checkLine('{$strPlayGroupName}')">
<img src="/template/videodadi/icon/icon_30.png">
{$strPlayGroupName}
</h3>
&nbsp;
{/foreach}
</div>
</div>
<div class="stui-pannel_bd col-pd clearfix">
<?php $keyLineGroup = 0;?>
{foreach $arrVideo.v_play_url as $strPlayGroupName=>$arrPlayUrlType }
<?php $keyLineGroup ++ ;?>
<ul class='stui-content__playlist clearfix play-group-list {eq name="$keyLineGroup" value="1"}active {/eq}'
id="playlist_{$strPlayGroupName}">
<?php $keyLine = 0 ;?>
{volist name='$arrPlayUrlType' id='arrPlayUrl'}
<?php $keyLine ++ ;?>
<li class="{if $Request.route.intPlayIndex == $keyLine}active{/if}">
<a
href='{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="$strPlayGroupName" play_index="$keyLine" /}'>{$arrPlayUrl.name}</a>
</li>
{/volist}
</ul>
{/foreach}
</div>
</div>
</div>
{if !empty($arrVideo.v_seo_words)}
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head clearfix">
<h3 class="title"><img src="/template/videonunu/icon/icon_30.png">推荐</h3>
</div>
</div>
<div class="stui-pannel_bd">
{volist name='$arrVideo.v_seo_words' key="index" id='SeoWords' }
<a href='javascript:void(0)'>{$SeoWords}</a>&nbsp;&nbsp;
{/volist}
</div>
</div>
</div>
{/if}
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head clearfix">
<h3 class="title"><img src="/template/videonunu/icon/icon_30.png">剧情介绍</h3>
</div>
</div>
<div class="stui-pannel_bd">
<div class="detail col-pd">
<span class="detail-sketch">
{$arrVideo.v_name}是一部评分{$arrVideo.v_score}的
<a
href='{site:vciurl parent_category="$arrVideo.v_parent_category_en" /}'>{$arrVideo.v_parent_category}</a>&nbsp;
<a
href='{site:vclurl parent_category="$arrVideo.v_parent_category_en" category="$arrVideo.v_category_en" area="all" lang="all" year="all" order="all" page="1"/}'>{$arrVideo.v_category}</a>&nbsp;
影视作品,影片的导演是
{volist name='$arrVideo.v_director' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
,是由
{volist name='$arrVideo.v_actor' id='vo' key='index'}
<a href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
&nbsp;主演,
{$arrVideo.v_description|raw}
</span>
</div>
</div>
</div>
</div>
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head clearfix">
<h3 class="title">
<img src="/template/videonunu/icon/icon_6.png">
猜你喜欢
</h3>
</div>
</div>
<div class="stui-pannel_bd">
<ul class="stui-vodlist__bd clearfix cs-list-r">
{video:list count="10"
v_category_en="$arrVideo.v_category_en"
v_lang_en="all"
v_area_en="all"
v_year="all"
sort_type="news"
d_key="d_key" d_val="Video" cache_life="3600"}
{include file="public/video-list-shu" start="0" col-md="5"/}
{/video:list}
</ul>
</div>
</div>
</div>
</div>
<div class="col-lg-wide-25 col-xs-1 stui-pannel-side visible-lg">
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_bd">
<h3 class="title">
热播影视
</h3>
<ul class="stui-vodlist__rank col-pd clearfix">
{video:ranklist count="18"
v_parent_category_en="$arrVideo.v_parent_category_en"
sort_type="weekly"
d_key="key" d_val="Video" cache_life="3600"}
{include file="public/video-list-phb" start="11"/}
{/video:ranklist}
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
const strVideoId = `{$arrVideo.v_id}`;
const arrVideo = {
'v_id': `{$arrVideo['v_id']}`,
'v_name_en': `{$arrVideo['v_name_en']}`,
'v_pic': `{$arrVideo['v_pic']}`,
'v_name': `{$arrVideo['v_name']}`,
'v_description': `{$arrVideo['v_description']}`,
'v_publish_date': `{$arrVideo['v_publish_date']}`,
'v_remarks': `{$arrVideo['v_remarks']}`,
'v_category': `{$arrVideo['v_category']}`,
'v_year': `{$arrVideo['v_year']}`,
};
var strPlayType = 'default'
var boolIsPlayPage = false
document.addEventListener('DOMContentLoaded', function () {
const trigger = document.querySelector('.check-desc-btn');
if (!trigger) return; // 页面没有按钮就不继续
trigger.addEventListener('click', function () {
const parent = trigger.closest('.lvshicms-vodlist__box') || trigger.parentElement;
const description = parent.querySelector('p.v-description-centent');
if (description) {
description.classList.toggle('txt-hidden');
const icon = trigger.querySelector('.iconfont');
if (icon) {
icon.classList.toggle('icon-down');
icon.classList.toggle('icon-up');
}
trigger.setAttribute('aria-expanded', !description.classList.contains('txt-hidden'));
}
});
});
</script>
{/block}
{block name="customize"} {/block}