This commit is contained in:
make
2025-04-21 11:59:52 +08:00
parent 3216cffb5e
commit adf88aef23
27 changed files with 543 additions and 329 deletions

View File

@@ -1,39 +1,44 @@
{extend name="baseH5" /}
{block name="title"}{$strTitle??''}{/block}
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{block name="title"}{site:replace code="NOVEL@GETNOVELCATALOG@TITLE"}{/block}
{block name="keywords"}{site:replace code="NOVEL@GETNOVELCATALOG@KEYWORDS"}{/block}
{block name="description"}{site:replace code="NOVEL@GETNOVELCATALOG@DESCRIPTION"}{/block}
{block name="head"}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="h5_novel_catalog " diff="$Request.url" num="120" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}章节目录 - {$DomainModel->d_name} 第{$intPage}页 " />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
<meta property="og:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<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="website" />
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' />
<meta property="og:type" content="book" />
<meta property="og:image" content="{$arrNovel.n_cover_path ?? ''}" />
<meta property="og:site_name" content="{$DomainModel->d_name}" />
<meta property="og:novel:category" content="{$arrNovel.n_category ?? ''}">
<meta property="og:novel:author" content="{$arrNovel.n_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.n_name ?? ''}">
<meta property="og:novel:read_url"
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$intFirstChapterSort"/}'>
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrNovel.intFirstChapterSort"/}'>
<meta property="og:novel:status" content="{$arrNovel.n_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.n_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrLatestChapter.c_name ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrNovel.n_latest_chapter_name ?? ''}">
<meta property="og:novel:latest_chapter_url"
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'>
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['n_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Book",
"name": "{$arrNovel['n_name'] ?? '未知小说'}",
"description": "{$arrNovel['n_description'] ??'暂无简介'}",
"author": {
"@type": "Person",
"name": "{$arrNovel['n_author'] ??'佚名'}"
@@ -43,16 +48,43 @@
"name": "{$DomainModel->d_name}",
"url": "https://{$DomainModel->d_domain}"
},
"url": 'https://{$DomainModel->d_domain}{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="$intPage"/}',
"datePublished": "{$arrNovel['n_update_time'] ?? time()}",
"image": "{$arrNovel.n_cover_path ?? ''}",
"url": 'https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}',
"genre": "{$arrNovel.n_category ??''}",
"inLanguage": "zh-CN",
"genre": "{$arrNovel['n_category'] ?? '未知分类'}",
"hasPart": {
"@type": "WebPage",
"name": "{$arrNovel['n_name'] ?? '未知小说'}章节目录 第{$intPage}页",
"url": 'https://{$DomainModel->d_domain}{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="$intPage"/}'
}
"bookFormat": "https://{$DomainModel->d_domain}/EBook",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "100",
},
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "首页",
"item": "https://{$DomainModel->d_domain}"
},
{
"@type": "ListItem",
"position": 2,
"name": "{$arrNovel.n_category ??''}",
"item": 'https://{site:nflurl category="$arrNovel.n_category_pinyin" order="all" status="all" page="1"/}'
},
{
"@type": "ListItem",
"position": 3,
"name": "{$arrNovel['n_name']}",
"item": '{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'
}
]
}
</script>
{/block}
{block name="head-js"}{/block}
{block name="logo-html"}
@@ -62,6 +94,10 @@
{/block}
{block name="main"}
{chapter:pagerexp page="$Request.route.intPage" limit="100" n_id="$Request.route.intNovelId" d_key="d_key" d_val="chapter"
cache_life="86400" button_num="3" sort_type="$Request.route.strOrder" func="generateChapterPager" export_name="resData" /}
<div class="wrap">
<nav class="breadcrumb" aria-label="breadcrumb">
<ol itemscope itemtype="https://schema.org/BreadcrumbList">
@@ -73,13 +109,13 @@
</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 gender="all" category="$arrNovel[n_category_pinyin]" status="all" page="1"/}' itemprop="item">
<a href='{site:nflurl gender="all" category="$arrNovel.n_category_pinyin" status="all" page="1"/}' itemprop="item">
<span itemprop="name">{$arrNovel.n_category}</span>
</a>
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' itemprop="item">
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' itemprop="item">
<span itemprop="name">{$arrNovel['n_name']}</span>
</a>
<meta itemprop="position" content="3" />
@@ -91,7 +127,7 @@
<div class="mod mod-attentions">
{$arrGrm[0]|raw}
<div class="mod-head">
<h1>{$arrNovel['n_name']}章节目录 - {$arrNovel['n_author']} - {$DomainModel->d_name} 第{$intPage}页</h1>
<h1>{$arrNovel['n_name']}章节目录 - {$arrNovel['n_author']} - {$DomainModel->d_name} 第{$Request.route.intPage}页</h1>
</div>
@@ -100,10 +136,10 @@
{include file="public/allChapterPage" start="0"/}
<ul class="clearfix">
{volist name="arrPage.data" id="Chapter" key="key"}
{volist name="resData.data" id="Chapter" key="key"}
<li>
{$arrGrm[$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"/}'
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$Chapter.c_sort_num" c_page="0"/}'
title="{$arrNovel['n_name']} {$Chapter.c_name}">{$Chapter.c_name}</a>
</li>
{/volist}

View File

@@ -2,15 +2,21 @@
<html lang="zh-CN">
<head>
{site:grm page_code="h5_novel_chapter" diff="$Request.url" num="20" g_key="arrGrm" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{chapter:info n_id="$Request.route.intNovelId" c_sort_num="$Request.route.intChapterSort"
c_page="$Request.route.intChapterPage" c_key="arrChapter" /}
<meta charset="UTF-8" />
<meta name="robots" content="index, follow" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Cache-Control" content="no-transform, max-age=3600" />
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
<meta name="applicable-device" content="mobile" />
<meta name="keywords" content="{$strKeywords??''}">
<meta name="description" content="{$strDescription??''}">
<title>{$strTitle??''}</title>
<meta name="keywords" content='{site:replace code="NOVEL@GETNOVELCHAPTER@KEYWORDS"}'>
<meta name="description" content='{site:replace code="NOVEL@GETNOVELCHAPTER@DESCRIPTION"}'>
<title>{site:replace code="NOVEL@GETNOVELCHAPTER@TITLE"}</title>
<link rel="icon" href="/template/kuangyu/public/img/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="/template/kuangyu/reader/wap/css/style.css" type="text/css">
@@ -21,9 +27,9 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'} {$arrChapter.c_name} - {$DomainModel->d_name}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:description" content='{site:replace code="NOVEL@GETNOVELCHAPTER@DESCRIPTION"}' />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' />
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' />
<meta property="og:type" content="book" />
<meta property="og:image" content="{$arrNovel.n_cover_path ?? ''}" />
<meta property="og:site_name" content="{$DomainModel->d_name}" />
@@ -31,16 +37,16 @@
<meta property="og:novel:author" content="{$arrNovel.n_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.n_name ?? ''}">
<meta property="og:novel:read_url"
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$$arrChapter[c_sort_num]"/}'>
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.c_sort_num"/}'>
<meta property="og:novel:status" content="{$arrNovel.n_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.n_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrChapter.c_name}">
<meta property="og:novel:latest_chapter_url"
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'>
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['n_name']??'未知小说'} {$arrChapter.c_name} - {$DomainModel->d_name}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:description" content='{site:replace code="NOVEL@GETNOVELCHAPTER@DESCRIPTION"}' />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
@@ -58,15 +64,15 @@
"url": "https://{$DomainModel->d_domain}"
},
"image": "{$arrNovel.n_cover_path ?? ''}",
"url":'https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrChapter[c_sort_num]" c_page="0"/}',
"url":'https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.c_sort_num" c_page="0"/}',
"inLanguage": "zh-CN",
"genre": "{$arrNovel.n_category ??''}",
"datePublished": "{$arrNovel['n_update_time'] ?? time()}",
"hasPart": {
"@type": "CreativeWork",
"name": "{$arrChapter.c_name ?? ''}",
"url":'https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrChapter[c_sort_num]" c_page="0"/}',
"description": "{$strDescription}"
"url":'https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.c_sort_num" c_page="0"/}',
"description": '{site:replace code="NOVEL@GETNOVELCHAPTER@DESCRIPTION"}'
}
}
@@ -99,17 +105,17 @@
</div>
{$arrGrm[2]|raw}
<div id="readLoadNext" class="read-load-next">
{if $arrChapter.c_sort_num == 1}
{if $arrChapter.c_sort_num == 1 }
{$arrGrm[3]|raw}
<a href="javascript:" class="btn-normal red" data-size="14" role="button">上一章</a>
{else}
{elseif $arrChapter['pre_chapter'] && $arrChapter['pre_chapter']['c_sort_num']}
{$arrGrm[4]|raw}
<a href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="0"/}'
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.pre_chapter.c_sort_num" c_page="0"/}'
class="btn-normal red" data-size="14" role="button">上一章</a>
{/if}
{if $arrNextChapter && $arrNextChapter.c_sort_num}
<a href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="0"/}'
{if $arrChapter.next_chapter && $arrChapter.next_chapter.c_sort_num}
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.next_chapter.c_sort_num" c_page="0"/}'
class="btn-normal red" data-size="14" role="button">下一章</a>
{/if}
<a href="#" class="btn-blank blue" style="display:none">已经是最后一章了 »</a>
@@ -124,13 +130,13 @@
<div id="readLoadNext" class="read-load-next">
{if $arrChapter.c_sort_num == 1}
<a href="javascript:" class="btn-normal red" data-size="14" role="button">上一章</a>
{else}
<a href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="0"/}'
{elseif $arrChapter['pre_chapter'] && $arrChapter['pre_chapter']['c_sort_num']}
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.pre_chapter.c_sort_num" c_page="0"/}'
class="btn-normal red" data-size="14" role="button">上一章</a>
{/if}
{if $arrNextChapter && $arrNextChapter.c_sort_num}
<a href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="0"/}'
{if $arrChapter.next_chapter && $arrChapter.next_chapter.c_sort_num}
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.next_chapter.c_sort_num" c_page="0"/}'
class="btn-normal red" data-size="14" role="button">下一章</a>
{/if}
@@ -150,13 +156,13 @@
</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 gender="all" category="$arrNovel[n_category_pinyin]" status="all" page="1"/}' itemprop="item">
<a href='{site:nflurl gender="all" category="$arrNovel.n_category_pinyin" status="all" page="1"/}' itemprop="item">
<span itemprop="name">{$arrNovel.n_category}</span>
</a>
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' itemprop="item">
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' itemprop="item">
<span itemprop="name">{$arrNovel.n_name}</span>
</a>
<meta itemprop="position" content="2" />
@@ -164,10 +170,10 @@
</ol>
</nav>
<h1 id="chapterTitle" class="read-book-name">
<a href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'>
{$arrNovel.n_name}
</a>
<a href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrChapter[c_sort_num]" c_page="0"/}'>{$arrChapter.c_name}</a>
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.c_sort_num" c_page="0"/}'>{$arrChapter.c_name}</a>
</h1>
</div>
@@ -201,7 +207,7 @@
<i class="iconfont icon-lixianxiazai"></i>
离线章节
</a> -->
<a href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' class="read-opt-a">
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' class="read-opt-a">
<i class="iconfont icon-SU"></i>
书籍详情
</a>
@@ -298,7 +304,7 @@
<footer class="read-opt-footer">
<div class="btn-group">
<!-- id="readBtnChapter" -->
<a href='{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}' class="btn-group-cell"
<a href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}' class="btn-group-cell"
data-rel="asideChapter" role="button" aria-haspopup="true">
<i class="iconfont icon-mulu"></i>
<h4 class="read-opt-footer-h">目录</h4>
@@ -356,20 +362,20 @@
};
book.chapter = {
//页面进入加载的章节id
id: '{$arrPreChapter.c_sort_num ?? 1}',
id: '{$arrChapter.next_chapter.c_sort_num ?? 1}',
//章节源id
source_id: '{$arrPreChapter.c_sort_num ?? 1}',
title: '{$arrPreChapter.c_name ?? 1}',
source_id: '{$arrChapter.next_chapter.c_sort_num ?? 1}',
title: '{$arrChapter.next_chapter.c_name ?? 1}',
content: '',
//章节vip标识
vipStatus: 0,
//上一章id
prevId: '{$arrPreChapter.c_sort_num ?? 1}',
prevId: '{$arrChapter.next_chapter.c_sort_num ?? 1}',
//下一章id
nextId: '{$arrNextChapter.c_sort_num ?? 1}'
};
book.chapterUrl = '{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrChapter[c_sort_num]" c_page="0"/}' ;
book.url = '{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'
book.chapterUrl = '{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrChapter.c_sort_num" c_page="0"/}' ;
book.url = '{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'
book.nextChapterVip = 0;
book.uid = 0;
</script>

View File

@@ -1,13 +1,20 @@
{extend name="baseH5" /}
{block name="title"}{$strTitle??''}{/block}
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{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"}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="h5_novel_info" diff="$arrNovel.n_id" num="120" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' />
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' />
<meta property="og:type" content="book" />
<meta property="og:image" content="{$arrNovel.n_cover_path ?? ''}" />
<meta property="og:site_name" content="{$DomainModel->d_name}" />
@@ -15,16 +22,16 @@
<meta property="og:novel:author" content="{$arrNovel.n_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.n_name ?? ''}">
<meta property="og:novel:read_url"
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$intFirstChapterSort"/}'>
content='https://{$DomainModel->d_domain}{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrNovel.intFirstChapterSort"/}'>
<meta property="og:novel:status" content="{$arrNovel.n_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.n_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrLatestChapter.c_name ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrNovel.n_latest_chapter_name ?? ''}">
<meta property="og:novel:latest_chapter_url"
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>
content='https://{$DomainModel->d_domain}{site:lcpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'>
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['n_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:description" content='{site:replace code="NOVEL@GETNOVELINFO@DESCRIPTION"}' />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
@@ -44,7 +51,7 @@
},
"datePublished": "{$arrNovel['n_update_time'] ?? time()}",
"image": "{$arrNovel.n_cover_path ?? ''}",
"url": 'https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}',
"url": 'https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}',
"genre": "{$arrNovel.n_category ??''}",
"inLanguage": "zh-CN",
"bookFormat": "https://{$DomainModel->d_domain}/EBook",
@@ -53,10 +60,32 @@
"ratingValue": "4.5",
"reviewCount": "100",
},
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "首页",
"item": "https://{$DomainModel->d_domain}"
},
{
"@type": "ListItem",
"position": 2,
"name": "{$arrNovel.n_category ??''}",
"item": 'https://{site:nflurl category="$arrNovel.n_category_pinyin" order="all" status="all" page="1"/}'
},
{
"@type": "ListItem",
"position": 3,
"name": "{$arrNovel['n_name']}",
"item": '{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}'
}
]
}
</script>
{/block}
{block name="head-js"}{/block}
{block name="logo-html"}
@@ -68,7 +97,6 @@
{block name="main"}
<div class="wrap">
<nav class="breadcrumb" aria-label="breadcrumb">
<ol itemscope itemtype="https://schema.org/BreadcrumbList">
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
@@ -79,13 +107,13 @@
</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 gender="all" category="$arrNovel[n_category_pinyin]" status="all" page="1"/}' itemprop="item">
<a href='{site:nflurl gender="all" category="$arrNovel.n_category_pinyin" status="all" page="1"/}' itemprop="item">
<span itemprop="name">{$arrNovel.n_category}</span>
</a>
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}' itemprop="item">
<a href='{site:nurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}' itemprop="item">
<span itemprop="name">{$arrNovel['n_name']}</span>
</a>
<meta itemprop="position" content="3" />
@@ -109,19 +137,19 @@
<h2>{$arrNovel['n_name']}</h2>
<p class="info">
<span>分类:{$arrNovel.n_category}</span>
<span>作者:<a href='{site:souurl key="$arrNovel[n_author]" p="1"/}'>{$arrNovel.n_author}</a></span>
<span>作者:<a href='{site:souurl key="$arrNovel.n_author" p="1"/}'>{$arrNovel.n_author}</a></span>
<!-- <span>字数54.20万字</span> -->
<span>阅读:{$arrNovelClicks.total}</span>
<span>阅读:{$arrNovel.arrNovelClicks.total}</span>
</p>
</dd>
</dl>
{$arrGrm[1]|raw}
<div class="btns">
<ul>
{if !empty($intFirstChapterSort)}
{if !empty($arrNovel.intFirstChapterSort)}
<li>
{$arrGrm[2]|raw}
<a class="read-online reading" href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$intFirstChapterSort"/}'
<a class="read-online reading" href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$arrNovel.intFirstChapterSort"/}'
>点击阅读</a>
</li>
{/if}
@@ -151,13 +179,13 @@
<div class="intro">
<div class="content">
<p>
{$strFocus}
{$arrNovel.strFocus}
</p>
<p class="xianglingtuijian">相邻推荐:
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
{$arrGrm[$key+20]|raw}
<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>
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>
{/volist}
</p>
</div>
@@ -174,18 +202,18 @@
</div>
<div class="attentions">
<ul class="clearfix">
{volist name="arrChapter" id="Chapter" key="key"}
{chapter:list count="10" sort_type="dao" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" cache_life="86400"}
<li>
{$arrGrm[$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"/}'
<a href='{site:cpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" c_sort="$Chapter.c_sort_num" c_page="0"/}'
title="{$arrNovel.n_name}-{$Chapter.c_name}">{$Chapter.c_name}</a>
</li>
{/volist}
{/chapter:list}
</ul>
<div class="chapters-more">
<a href='{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}'
<a href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'
class="reading btn-bookshelf">{$arrNovel.n_name}更多章节</a>
</div>
</div>
@@ -197,7 +225,7 @@
</div>
<div class="book-slide">
<ul class="clearfix">
{foreach $arrRelateveNovel as $Novel}
{foreach $arrNovel.arrRelateveNovel as $Novel}
<li>
{$arrGrm[$key+10]|raw}
<a href='{site:nurl n_id="Novel.n_id" n_py="Novel.n_name_pinyin"/}'>

View File

@@ -1,27 +1,29 @@
{extend name="baseH5" /}
{block name="title"}{$strTitle??''}{/block}
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{block name="title"}{site:replace code="NOVEL@GETSEARCHNOVEL@TITLE"}{/block}
{block name="keywords"}{site:replace code="NOVEL@GETSEARCHNOVEL@KEYWORDS"}{/block}
{block name="description"}{site:replace code="NOVEL@GETSEARCHNOVEL@DESCRIPTION"}{/block}
{block name="head"}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="https://{$DomainModel->d_domain}{site:souurl key='$strSearchKeywords' p='1'/}" />
<meta property="og:title" content={site:replace code="NOVEL@GETSEARCHNOVEL@TITLE"} />
<meta property="og:description" content='{site:replace code="NOVEL@GETSEARCHNOVEL@DESCRIPTION"}' />
<meta property="og:url" content="https://{$DomainModel->d_domain}{site:souurl key='$Request.get.keyword' p='1'/}" />
<meta property="og:type" content="book" />
<meta property="og:site_name" content="{$DomainModel->d_name}">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="{$strSearchKeywords} - {$DomainModel->d_name}搜索 - 第{$intPage}页">
<meta name="twitter:description" content="{$strSearchKeywords}搜索结果第{$intPage}页,免费阅读小说,快来体验!">
<meta name="twitter:title" content="{$Request.get.keyword} - {$DomainModel->d_name}搜索 - 第{$Request.get.intPage}页">
<meta name="twitter:description" content="{$Request.get.keyword}搜索结果第{$Request.get.intPage}页,免费阅读小说,快来体验!">
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SearchResultsPage",
"url": "https://{$DomainModel->d_name}{site:souurl key='$strSearchKeywords' p='1'/}",
"name": "{$DomainModel->d_name} - {$DomainModel->d_name}搜索 第{$intPage}页",
"description": "搜索‘{$strSearchKeywords}’结果第{$intPage}页,提供{$strSearchKeywords}创作的小说免费阅读。",
"url": "https://{$DomainModel->d_name}{site:souurl key='$Request.get.keyword' p='1'/}",
"name": "{$DomainModel->d_name} - {$DomainModel->d_name}搜索 第{$Request.get.intPage}页",
"description": "搜索‘{$Request.get.keyword}’结果第{$Request.get.intPage}页,提供{$Request.get.keyword}创作的小说免费阅读。",
"datePublished": "{$arrNovel['n_update_time'] ?? time()}",
"mainEntity": {
"@type": "Book",
@@ -35,6 +37,7 @@
}
</script>
{/block}
{block name="head-js"}{/block}
{block name="logo-html"}
@@ -45,20 +48,27 @@
{block name="main"}
{novel:pagerexp page="$Request.get.page" limit="30"
key="$Request.get.keyword"
d_key="d_key"
d_val="Novel"
p_val="page_data" button_num="10" cache_life="86400" func="generateSearchPager" export_name="resData" /}
{site:grm page_code="h5_novel_search" diff="$Request.url" num="30" g_key="arrGrm" /}
<div class="wrap">
<div class="mod mod-search">
<div class="search-list">
<div class="result">
<h1>{$strSearchKeywords}搜索结果 - {$DomainModel->d_name} 第{$intPage}页</h1>
搜索<span style="color:red">“{$strSearchKeywords}”</span>相关结果共有 <span style="color:red">{$arrPage.total}</span> 部小说
<h1>{$Request.get.keyword}搜索结果 - {$DomainModel->d_name} 第{$Request.get.intPage}页</h1>
搜索<span style="color:red">“{$Request.get.keyword}”</span>相关结果共有 <span style="color:red">{$resData.p_data.total}</span> 部小说
</div>
{if empty($arrPage.data)}
{if empty($resData.data)}
<p style="text-align: center;line-height: 60px">没有相关数据</p>
{else}
<ul class="clearfix">
{foreach $arrPage.data as $key=>$Novel}
{foreach $resData.data as $key=>$Novel}
{include file="public/novelListH" start="0"/}
{/foreach}
</ul>
@@ -67,17 +77,17 @@
</div>
<div class="pages">
<ul class="pager">
{volist name="arrPaginator" id="vo" key="k"}
{volist name="$resData.p_data.pager" id="vo" key="k"}
{switch $vo.label}
{case value="上一页"}
{if $intPage == 1}
{if $resData.p_data.page == 1}
<li class="disabled"><span>«</span></li>
{else}
<li><a href="{$vo.url}">«</a></li>
{/if}
{/case}
{case value="下一页"}
{if $intPage >= $intTotalPage}
{if $resData.p_data.page >= $resData.p_data.total}
<li class="disabled"><span>»</span></li>
{else}
<li><a href="{$vo.url}">»</a></li>