fix(videoGpt1): normalize seo pages and fallback services

This commit is contained in:
root
2026-04-17 13:02:00 +08:00
parent dd3cbf09cc
commit 56644e7f50
19 changed files with 253 additions and 173 deletions

View File

@@ -12,19 +12,35 @@ p_val="page_data" button_num="10" cache_life="3600" export_name="arrVideoRankLis
{site:grm page_code="h5_rank_list_type" diff="$Request.route.intPage" num="100" g_key="arrGrm" /}
{site:helper func="initVideoRankListTKD" /}
{php}
$strRankListKeywordsBase = trim((string)($DomainModel->d_keywords ?: $DomainModel->d_name));
$strRankListKeywordsOrder = trim((string)($strOrderName ?? '热门'));
$strRankListKeywords = $strRankListKeywordsBase !== ''
? $strRankListKeywordsBase . ',' . $strRankListKeywordsOrder . '榜单,视频排行'
: trim((string)$DomainModel->d_name) . ',' . $strRankListKeywordsOrder . '榜单,视频排行';
$strRankListDescCategory = trim((string)(\app\model\ConverterMovel::getVal('strVideoParentCategoryName') ?? '影视'));
if ($strRankListDescCategory === '') {
$strRankListDescCategory = '影视';
}
$strRankListDescOrder = $strRankListKeywordsOrder !== '' ? $strRankListKeywordsOrder : '热门';
$strRankListDescription = trim((string)$DomainModel->d_name) . '整理' . $strRankListDescOrder . $strRankListDescCategory . '榜单入口,方便继续查看热度内容、详情页与播放页。';
{/php}
{/block}
{block name="title"}{site:seotkd code="title" page="rank_list" /}{/block}
{block name="keywords"}{site:seotkd code="title" page="rank_list" /}{/block}
{block name="description"}{site:seotkd code="title" page="rank_list" /}{/block}
{block name="keywords"}{$strRankListKeywords}{/block}
{block name="description"}{$strRankListDescription}{/block}
{block name="head"}
<meta name="robots" content="index,follow">
<link rel="canonical" href='https://{$DomainModel->d_domain}{site:vrlurl parent_category="$Request.route.strParentCategory" category="$Request.route.strCategory" sort_type="$Request.route.strSortType" page="1"/}'>
{// 社交媒体标签}
<meta property="og:title" content='{site:seotkd code="title" page="rank_list" /}' />
<meta property="og:description" content='{site:seotkd code="title" page="rank_list" /}' />
<meta property="og:url" content="https://{$DomainModel->d_domain}" />
<meta property="og:description" content='{$strRankListDescription}' />
<meta property="og:url" content='https://{$DomainModel->d_domain}{site:vrlurl parent_category="$Request.route.strParentCategory" category="$Request.route.strCategory" sort_type="$Request.route.strSortType" page="1"/}' />
<meta property="og:type" content="video.movie" />
@@ -35,30 +51,14 @@ p_val="page_data" button_num="10" cache_life="3600" export_name="arrVideoRankLis
"@context": "https://schema.org",
"@type": "CollectionPage",
"name": "{$DomainModel->d_name} - 最新排行榜推荐",
"url": "https://{$DomainModel->d_domain}",
"url": "https://{$DomainModel->d_domain}{site:vrlurl parent_category="$Request.route.strParentCategory" category="$Request.route.strCategory" sort_type="$Request.route.strSortType" page="1"/}",
"headline": '{site:seotkd code="title" page="rank_list" /}',
"description": '{site:seotkd code="title" page="rank_list" /}',
"description": '{$strRankListDescription}',
"potentialAction": {
"@type": "SearchAction",
"target": 'https://{$DomainModel->d_domain}{site:vsurl key="search_term_string" p="1"/}",
"query-input": "required name=search_term_string"
}
"hasPart": [
{volist name="arrVideoRankList" id="Video" key="key"}
{if $key < 10 }
{
"@type": "VideoObject",
"name": "{$Video.v_name}",
"description": "{$Video.v_description}",
"thumbnailUrl": '{$Video.v_pic}',
"uploadDate": "{:date('Y-m-d')}",
"url": 'https://{$DomainModel->d_domain}{site:vurl v_id='$vo.v_id' v_py='$vo.v_name_en'/}',
},
{/if}
{/volist}
]
},
{
"@context": "https://schema.org",
@@ -83,7 +83,7 @@ p_val="page_data" button_num="10" cache_life="3600" export_name="arrVideoRankLis
"item": "https://{$DomainModel->d_domain}{site:vrlurl parent_category="$Request.route.strParentCategory" category="$Request.route.strCategory" sort_type="$Request.route.strSortType" page="1"/}"
}
]
},
}
]
</script>
@@ -129,6 +129,17 @@ p_val="page_data" button_num="10" cache_life="3600" export_name="arrVideoRankLis
</h1>
<h4 class="view-description">{site:replace code="VIDEO@GETVIDEORANKLIST@TEXT"}</h4>
{video:seocopy scene="rank_list"
sort_type="$Request.route.strSortType"
parent_category="$Request.route.strParentCategory"
category="$Request.route.strCategory"
page="1"
total="0"
pages="1"
visible="$arrVideoRankList|count"
export_name="seoCopy" /}
{include file="module/seo_copy/collection" /}
<div class="row">
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
@@ -200,4 +211,4 @@ p_val="page_data" button_num="10" cache_life="3600" export_name="arrVideoRankLis
{/block}
{block name="customize"}
{/block}
{/block}