198 lines
5.4 KiB
Markdown
198 lines
5.4 KiB
Markdown
# 1295-SEONexus 老模板播放页 Patch 模板 - 2026-04-17
|
|
|
|
## 目的
|
|
|
|
这份文档专门服务第一批 5 个播放页文件。
|
|
|
|
它的作用和 [25-老模板分类页Patch模板-2026-04-17.md](/www/wwwroot/VideoSource2/docs/old-tmp-seo/25-老模板分类页Patch模板-2026-04-17.md) 一样:
|
|
|
|
- 不是继续分析
|
|
- 而是给主 Codex 一份可以直接照着写 patch 的模板
|
|
|
|
适用文件:
|
|
|
|
- `videoDadi/video/getVideoPlayUrl.html`
|
|
- `videoDingZhu/video/getVideoPlayUrl.html`
|
|
- `videoBoKu/video/getVideoPlayUrl.html`
|
|
- `videoLaoNiu/video/getVideoPlayUrl.html`
|
|
- `videoNuNu/video/getVideoPlayUrl.html`
|
|
|
|
## 一、这 5 个文件当前共同问题
|
|
|
|
共同问题非常一致:
|
|
|
|
1. canonical 已经是播放页
|
|
2. `og:url` 仍然是详情页
|
|
3. JSON-LD `url` 仍然是详情页
|
|
|
|
也就是说当前是典型的:
|
|
|
|
- 一半在说“我是播放页”
|
|
- 一半在说“我是详情页”
|
|
|
|
这会持续制造:
|
|
|
|
- `play|301`
|
|
- 详情页与播放页规范信号冲突
|
|
|
|
## 二、目标状态
|
|
|
|
播放页三件套全部统一:
|
|
|
|
1. canonical 指向播放页
|
|
2. `og:url` 指向播放页
|
|
3. JSON-LD `url` 指向播放页
|
|
|
|
## 三、当前最稳策略
|
|
|
|
### 第一批先走保守收口
|
|
|
|
当前老模板 canonical 写法普遍是:
|
|
|
|
```tpl
|
|
{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}
|
|
```
|
|
|
|
这不一定是当前真实线路和真实集数,但它至少已经是“播放页路径”。
|
|
|
|
因此第一批最稳策略不是一步做复杂,而是:
|
|
|
|
- 先让 `og:url` 和 JSON-LD `url` 与当前 canonical 完全一致
|
|
|
|
这样能最快消除 detail/play 信号分裂。
|
|
|
|
## 四、最稳参考
|
|
|
|
可以参考 `videoGpt1` 当前播放页:
|
|
|
|
- [videoGpt1/getVideoPlayUrl.html:117](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getVideoPlayUrl.html:117)
|
|
- [videoGpt1/getVideoPlayUrl.html:143](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getVideoPlayUrl.html:143)
|
|
- [videoGpt1/getVideoPlayUrl.html:202](/www/wwwroot/VideoSource2/code/app/home/view/videoGpt1/video/getVideoPlayUrl.html:202)
|
|
|
|
GPT 那边已经是:
|
|
|
|
- canonical、`og:url`、JSON-LD `url` 三者完全一致
|
|
|
|
## 五、推荐 patch 思路
|
|
|
|
### 第一步:保留当前 canonical 不动
|
|
|
|
当前老模板 canonical 已经存在,例如:
|
|
|
|
```tpl
|
|
{if $Request.route.intVId && $Request.route.intVForgeId}
|
|
<link rel="canonical"
|
|
href='https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
|
|
{/if}
|
|
```
|
|
|
|
第一批先不要动这段结构。
|
|
|
|
### 第二步:把 `og:url` 改成和 canonical 一致
|
|
|
|
把当前:
|
|
|
|
```tpl
|
|
<meta property="og:url" content='https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'>
|
|
```
|
|
|
|
统一替换为:
|
|
|
|
```tpl
|
|
<meta property="og:url" content='https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
|
|
```
|
|
|
|
### 第三步:把 JSON-LD `url` 改成和 canonical 一致
|
|
|
|
把当前:
|
|
|
|
```tpl
|
|
"url": 'https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}',
|
|
```
|
|
|
|
统一替换为:
|
|
|
|
```tpl
|
|
"url": 'https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}',
|
|
```
|
|
|
|
## 六、推荐的统一替换结果
|
|
|
|
### 头部关键区域
|
|
|
|
最终应接近:
|
|
|
|
```tpl
|
|
{if $Request.route.intVId && $Request.route.intVForgeId}
|
|
<link rel="canonical"
|
|
href='https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
|
|
{/if}
|
|
|
|
<meta property="og:url"
|
|
content='https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
|
|
```
|
|
|
|
### JSON-LD 区域
|
|
|
|
最终应接近:
|
|
|
|
```tpl
|
|
"url": 'https://{$DomainModel->d_domain}{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}',
|
|
```
|
|
|
|
## 七、5 个文件的差异提醒
|
|
|
|
这 5 个文件在当前 patch 涉及区域内几乎完全同构。
|
|
|
|
也就是说:
|
|
|
|
- 这组 patch 比分类页还更适合批量统一处理
|
|
|
|
目前没有看到会影响这次 patch 的明显结构差异。
|
|
|
|
## 八、为什么第一批不直接做“当前线路当前集数精确 URL”
|
|
|
|
因为那会把这批 patch 从“稳定收口”变成“逻辑改造”。
|
|
|
|
第一批更稳的目标是:
|
|
|
|
- 先把 detail/play 信号分裂压掉
|
|
- 先让播放页内部信号统一
|
|
|
|
等第一批跑通之后,第二批再评估要不要升级为:
|
|
|
|
- 根据 `Request.route.strPlayType`
|
|
- 根据 `Request.route.intPlayIndex`
|
|
- 输出当前真实播放页 URL
|
|
|
|
## 九、建议验收方式
|
|
|
|
每改完 1 个文件,至少做一次页面级验收。
|
|
|
|
### 页面源代码验收
|
|
|
|
确认:
|
|
|
|
1. canonical 仍存在
|
|
2. `og:url` 与 canonical 完全一致
|
|
3. JSON-LD `url` 与 canonical 完全一致
|
|
|
|
### 域名级优先验收
|
|
|
|
优先看:
|
|
|
|
- `yagyjt.com`
|
|
- `ningxiaowei.com`
|
|
|
|
## 十、验收后的日志观察
|
|
|
|
改完这 5 个播放页之后,连续看 3 天最值得盯的是:
|
|
|
|
1. `play|301` 是否下降
|
|
2. `play|200` 是否更稳
|
|
3. `detail|301` 是否开始和 `play|301` 一起收敛
|
|
|
|
## 一句话交接
|
|
|
|
> 老模板第一批播放页 patch 的核心不是“做得多花”,而是先让 canonical、`og:url`、JSON-LD `url` 说同一句话;只要这 5 个播放页先统一收口,深页的百度识别成本就会明显下降。
|