This commit is contained in:
make
2025-04-22 21:28:08 +08:00
parent cd0cfdeec5
commit c87a377282
10 changed files with 446 additions and 381 deletions

View File

@@ -1,22 +1,24 @@
$Novel.n_id{extend name="baseH5" /}
{block name="title"}{site:replace code="NOVEL@GETNOVELINFO@TITLE"}{/block}
{block name="keywords"}{site:replace code="NOVEL@GETNOVELINFO@KEYWORDS"}{/block}
{block name="description"}{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}{/block}
{block name="head"}
{block name="get-data"}
{if $Request.route.intNovelId}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="$Request.route.intForgeId" /}
{else}
{novel:info n_id="$DomainModel->info_id" n_key="arrNovel" n_forge_id="0" /}
{/if}
{site:grm page_code="h5_novel_info" diff="$arrNovel.n_id" num="120" g_key="arrGrm" /}
{/block}
{site:grm page_code="h5_novel_info" diff="$arrNovel.n_id" num="120" g_key="arrGrm" /}
{block name="title"}{site:replace code="NOVEL@GETNOVELINFO@TITLE" diff="$Request.route.intNovelId" /}{/block}
{block name="keywords"}{site:replace code="NOVEL@GETNOVELINFO@KEYWORDS" diff="$Request.route.intNovelId"}{/block}
{block name="description"}{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION" diff="$Request.route.intNovelId"}{/block}
{block name="head"}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
<meta property="og:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<meta property="og:description"
content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION" diff="$Request.route.intNovelId"}' />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' />
<meta property="og:type" content="book" />
@@ -35,7 +37,8 @@ $Novel.n_id{extend name="baseH5" /}
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['n_name'] ?? '未知小说'}" />
<meta name="twitter:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<meta name="twitter:description"
content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION" diff="$Request.route.intNovelId"}' />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
@@ -90,6 +93,8 @@ $Novel.n_id{extend name="baseH5" /}
</script>
{/block}
{block name="head-js"}
{/block}
@@ -112,7 +117,8 @@ $Novel.n_id{extend name="baseH5" /}
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<?php $arrNovel['n_category_pinyin'] ?? $arrNovel['n_category_pinyin'] = 'all'?>
<a href='{site:nflurl category="$arrNovel.n_category_pinyin" order="all" status="all" page="1"/}' itemprop="item">
<a href='{site:nflurl category="$arrNovel.n_category_pinyin" order="all" status="all" page="1"/}'
itemprop="item">
<span itemprop="name">{$arrNovel.n_category}</span>
</a>
<meta itemprop="position" content="2" />
@@ -129,113 +135,120 @@ $Novel.n_id{extend name="baseH5" /}
{/block}
{block name="main"}
<h1 class="site-description ">{$arrNovel['n_name']}最新章节 - {$arrNovel['n_author']} - {$DomainModel->d_name}</h1>
<div class="block-box">
<div class="book-main">
<div class="book-img">
<img src="/static/img/default.jpg" data-src="{$arrNovel.n_cover_path ?? ''}"
alt="{$arrNovel['n_name'] ?? ''}小说封面 - {$arrNovel.n_author}最新章节" class="lazy lazyload-img">
</div>
<div class="book-info">
<div class="bookname">
<h2>{$arrNovel.n_name}</h2><span class="author">{$arrNovel.n_author}
</span>
<div class="layout-root novel-web">
<h1 class="site-description ">{$arrNovel['n_name']}最新章节 - {$arrNovel['n_author']} - {$DomainModel->d_name}</h1>
<div id="w-detail" class="work-content">
<div class="w-header">
<div class="go-back flex-center" onclick="history.go(-1)">
<div class="svg">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512">
<path
d="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z">
</path>
</svg>
</div>
</div>
<p class="tag"><span class="blue">{$arrNovel.n_category}</span><span
class="green">{$arrNovel.n_status}</span>
</p>
<p class="update"><span>最近更新:</span><a href={site:lcpurl n_id="$arrNovel.n_id"
n_py="$arrNovel.n_name_pinyin" /}>{$arrLatestChapter->c_name
?? ""}</a></p>
<p class="time"><span>更新时间:</span>{$arrNovel.n_update_time} </p>
</div>
<div class="clear"></div>
<div class="book-detail-btn">
<ul class="btn-group">
<li class="btn-group-cell"><a class="btn-normal abt1" onclick="addBookshelfFun()">加入书架</a><a
class="btn-normal abt2"
href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrNovel.intFirstChapterSort"/}'>开始阅读</a><a
class="btn-normal abt3"
href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'>章节目录</a>
</li>
</ul>
</div>
</div>
</div>
<div class="description" style="font-size: 12px;padding:0px 10px 10px 10px; text-indent: 15px;">
{$arrNovel.n_description}
</div>
<h3 class="wrap-title">最新章节</h3>
<div class="block-box">
<ul class="chapter-list">
{chapter:list count="10" sort_type="dao" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" cache_life="86400"}
<li>
{$arrGrm[$d_key]|raw}
<a
href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$Chapter.c_sort_num" c_page="0"/}'>{$Chapter.c_name}<span></span></a>
</li>
{/chapter:list}
</ul>
<a href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'
class="btn-mulu">查看更多章节...</a>
</div>
<div class="clear"></div>
<h3 class="wrap-title">章节列表</h3>
<div class="block-box">
<ul class="chapter-list">
{chapter:list count="100" sort_type="zheng" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" cache_life="86400"}
<li>
{$arrGrm[$d_key+10]|raw}
<a
href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$Chapter.c_sort_num" c_page="0"/}'>{$Chapter.c_name}<span></span></a>
</li>
{/chapter:list}
</ul>
<a href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'
class="btn-mulu">查看更多章节...</a>
</div>
<div class="detail-info">
<div class="detail-cover van-image" >
<img class="van-image__img pre-img lazyload-img" style="object-fit: cover"
src="/static/img/default.jpg" data-src="{$arrNovel.n_cover_path ?? ''}"
alt="{$arrNovel['n_name'] ?? ''}小说封面 - {$arrNovel.n_author}最新章节" >
</div>
<div class="detail-title-xiangqing">
<h2>{$arrNovel.n_name}</h2>
<div class="novel-author">分类:{$arrNovel.n_category } / {$arrNovel.n_status }</div>
<div class="novel-author">作者:{$arrNovel.n_author ?? '迭名'}</div>
<div class="novel-time">更新:{$arrNovel.n_update_time}</div>
<a class="novel-new-zj"
href='{site:lcpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' >
最新:{$arrNovel.arrLatestChapter.c_name ?? ""}</a>
</div>
<div class="detail-desc">
<span class="label">概要:</span>
<span class="value">
{$arrNovel.n_description}</span>
</div>
<div class="wrap-box">
<h3 class="wrap-title"><span>完结推荐</span></h3>
<div class="rec-focus">
{novel:list count="6" n_category="$arrNovel.n_category_pinyin" n_status="wanjie" d_key="d_key" d_val="Novel" p_val="page_data" cache_life="86400"}
<dl class="rec-focus-book">
<dt class="book-img">
{$arrGrm[$d_key+110]|raw}
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'><img
height="100" width="80" class="lazyload-img" src="/static/img/default.jpg"
data-src="{$Novel.n_cover_path ?? ''}"
alt="{$Novel.n_name ?? ''} - {$Novel.n_category ?? ''}最新章节在线免费阅读"></a></dt>
<dd class="book-info">
<h2><a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'>{$Novel.n_name}</a>
</h2>
<p>作者:{$Novel.n_author}</p>
<p>{$Novel.n_description}</p>
</dd>
</dl>
{/novel:list}
</div>
</div>
<div class="info-btn">
<a class="jiarushujia shujia-btn" onclick="addShujiaFun()">加入书架</a>
<a class="jiarushujia shouchang-btn" href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'>目录</a>
<a class="jiarushujia" href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrNovel.intFirstChapterSort"/}' >开始阅读</a>
</div>
<div class="wrap-box">
<h3 class="wrap-title"><span>相邻小说</span></h3>
<div class="description" style="font-size: 12px;padding:0px 10px 10px 10px; text-indent: 15px;">
<ul style="margin-top:10px;">
{chapter:list count="10" sort_type="dao" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" cache_life="86400"}
<li style="margin-top:5px;">
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$Chapter.c_sort_num" c_page="0"/}'>{$Chapter.c_name}</a>
</li>
{/chapter:list}
</ul>
{$arrNovel.strFocus ?? ""} 。看小说就来{$DomainModel->d_name} {$DomainModel->d_domain}...
</div>
<div class="rec-focus" style="font-size:12px;">
{volist name='$arrNovel.arrRelateveNovel' id='Novel'}
<div class="view-number">
<div class="item">
<div class="label">{site:wz wz="推荐等级" /}</div>
<div class="value">{$arrNovel.n_level}</div>
</div>
<div class="item">
<div class="label">{site:wz wz="收藏数" /}</div>
<div class="value">0</div>
</div>
<div class="item">
<div class="label">{site:wz wz="在看人数" /}</div>
<div class="value">{$arrNovel.arrNovelClicks.total}</div>
</div>
</div>
<div class="detail-desc">
<span class="label">经典:</span>
<span class="value">
{$arrNovel.strFocus ?? ""} 。看小说就来{$DomainModel->d_name} {$DomainModel->d_domain}...</span>
</div>
<div class="detail-tag">
<span class="label">相关标签:</span>
<span class="value">
<span class="value-tag">
{volist name='$arrNovel.arrRelateveNovel' id='Novel'}
<a href='{site:nurl n_id="$Novel.n_id" n_py="$Novel.n_name_pinyin" /}'>{$Novel.n_name}</a>&nbsp;&nbsp;
{/volist}
{volist name='arrNovel.n_forge_novel' id='ForgeNovel'}
{volist name='arrNovel.n_forge_novel' id='ForgeNovel'}
<a
href='{site:nnurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" n_fid="$ForgeNovel.n_forge_id"/}'>{$ForgeNovel.n_forge_title}</a>&nbsp;&nbsp;
{/volist}
</span>
</span>
</div>
</div>
</div>
<div class="section">
<div class="title">
<div class="title-text">猜你喜欢</div>
</div>
<div class="novel-item item">
<div class="work-list">
{novel:list count="8" n_category="$arrNovel.n_category_pinyin" sort_type="update" d_key="d_key" d_val="Novel" cache_life="86400"}
{include file="public/novel-list-flex" /}
{/novel:list}
</div>
</div>
</div>
</div>
</div>
<script>
const strNovelId = `{$arrNovel.n_id}`;
const arrNovel = {