This commit is contained in:
make
2025-04-19 11:56:30 +08:00
parent 67098a5e01
commit 4eca70d6e1
8 changed files with 60 additions and 60 deletions

View File

@@ -39,12 +39,12 @@ $arrRoutes = [
// 最新章节-特殊页面处理
'latest' => [
'/xiaoshuo/:name-:n_id/chapter/latest',
'/novel/:name-:n_id/chapter/latest',
'/book/:name-:n_id/chapter/latest',
'/xiaoshuo-:name-:n_id/chapter/latest',
'/novel-:name-:n_id/chapter/latest',
'/book-:name-:n_id/chapter/latest',
'/xiaoshuo/:name-:intNovelId/chapter/latest',
'/novel/:name-:intNovelId/chapter/latest',
'/book/:name-:intNovelId/chapter/latest',
'/xiaoshuo-:name-:intNovelId/chapter/latest',
'/novel-:name-:intNovelId/chapter/latest',
'/book-:name-:intNovelId/chapter/latest',
],
// 目录相关路径
@@ -59,22 +59,22 @@ $arrRoutes = [
// 伪小说详情相关路径
'kan-novel' => [
'/kan-xiaoshuo/:name-:n_id-:n_forge_id',
'/show-novel/:name-:n_id-:n_forge_id',
'/seo-book/:name-:n_id-:n_forge_id',
'/show-xiaoshuo-:name-:n_id-:n_forge_id',
'/see-novel-:name-:n_id-:n_forge_id',
'/good-book-:name-:n_id-:n_forge_id',
'/kan-xiaoshuo/:name-:intNovelId-:n_forge_id',
'/show-novel/:name-:intNovelId-:n_forge_id',
'/seo-book/:name-:intNovelId-:n_forge_id',
'/show-xiaoshuo-:name-:intNovelId-:n_forge_id',
'/see-novel-:name-:intNovelId-:n_forge_id',
'/good-book-:name-:intNovelId-:n_forge_id',
],
// 小说详情相关路径
'novel' => [
'/xiaoshuo/:name-:n_id',
'/novel/:name-:n_id',
'/book/:name-:n_id',
'/xiaoshuo-:name-:n_id',
'/novel-:name-:n_id',
'/book-:name-:n_id',
'/xiaoshuo/:name-:intNovelId',
'/novel/:name-:intNovelId',
'/book/:name-:intNovelId',
'/xiaoshuo-:name-:intNovelId',
'/novel-:name-:intNovelId',
'/book-:name-:intNovelId',
],
// 书库
@@ -168,7 +168,7 @@ foreach ($arrRoutes['prefixes'] as $platform => $prefixes) {
//章节
Route::get($strRoute, [Novel::class, 'getNovelChapter'])
->pattern(['intNovelId' => '\d+', 'name' => '[\w-]+', 'intChapterSort' => '\d+', 'intChapterPage' => '\d+']);
->pattern(['n_id' => '\d+', 'name' => '[\w-]+', 'intChapterSort' => '\d+', 'intChapterPage' => '\d+']);
break;
case 'kan-novel':
//伪造小说详情
@@ -197,7 +197,7 @@ foreach ($arrRoutes['prefixes'] as $platform => $prefixes) {
Route::get($strRoute, function () use ($strView) {
return view($strView);
})
->pattern(['intNovelId' => '\d+', 'name' => '[\w-]+', 'strOrder' => 'zheng|dao', 'intPage' => '\d+']);
->pattern(['n_id' => '\d+', 'name' => '[\w-]+', 'strOrder' => 'zheng|dao', 'intPage' => '\d+']);
break;
case 'library':
@@ -224,12 +224,10 @@ foreach ($arrRoutes['prefixes'] as $platform => $prefixes) {
if ($platform == 'h5') {
$strView = 'novel/getLibrary.html';
}
//书库/分类
Route::get($strRoute, function () use ($strView) {
return view($strView);
});
// //书库/分类首页
// Route::get($strRoute, [Novel::class, 'getLibrary']);
break;
case 'rank':
//排行榜

View File

@@ -3,7 +3,7 @@
{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.n_id" n_key="arrNovel" n_forge_id="0" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="pc_novel_info" diff="$arrNovel.n_id" num="100" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
@@ -163,12 +163,12 @@
{$arrNovel.n_description}
</div>
<h3 class="wrap-title">章节列表(第{$intPage}页)
{if $strOrder == 'zheng'}
<a href='{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="dao" page="1"/}'
<h3 class="wrap-title">章节列表(第{$Request.route.intPage}页)
{if $Request.route.strOrder == 'zheng'}
<a href='{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="dao" page="1"/}'
class="habt y">点击切换倒序</a>
{else}
<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="habt y">点击切换正序</a>
{/if}
</h3>
@@ -178,14 +178,14 @@
{include file="public/allChapterPage" start="1"/}
<ul class="chapter-list">
{volist name='arrPage.data' id='Chapter'}
{chapter:pager page="1" limit="100" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" p_val="page_data" cache_life="86400" button_num="100" sort_type="$Request.route.strOrder" func="generateChapterPager"}
<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"/}'
{$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"/}'
title="{$arrNovel['n_name']} {$Chapter.c_name}">{$Chapter.c_name}</a>
</li>
{/volist}
{/chapter:pager}
</ul>
{include file="public/allChapterPage" /}

View File

@@ -3,7 +3,7 @@ $Novel.n_id{extend name="baseH5" /}
{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.n_id" n_key="arrNovel" n_forge_id="0" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="pc_novel_info" diff="$arrNovel.n_id" num="100" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />

View File

@@ -1,6 +1,6 @@
{if !empty($arrPaginator)}
{if !empty($page_data)}
<div class="page_num">
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="prev"}
<a href="{$item.url ? $strPcPath . $item.url: 'javascript:void(0)'}"
class="z {$item.disabled ? 'disabled' : ''}">
@@ -10,10 +10,10 @@
{/volist}
<select onchange="self.location.href=options[selectedIndex].value">
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="page"}
<?php $start = ($item['label'] - 1) * $intLimit + 1; ?>
<?php $end = $item['label'] * $intLimit; ?>
<?php $start = ($item['label'] - 1) * 100 + 1; ?>
<?php $end = $item['label'] * 100; ?>
<option value="{$strPcPath}{$item.url}" {$item.current ? 'selected' : ''}>
第{$start}-{$end}章
</option>
@@ -21,7 +21,7 @@
{/volist}
</select>
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="next"}
<a href="{$item.url ? $strPcPath . $item.url: 'javascript:void(0)'}"
class="y {$item.disabled ? 'disabled' : ''}">

View File

@@ -3,7 +3,7 @@
{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.n_id" n_key="arrNovel" n_forge_id="0" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="pc_novel_info" diff="$arrNovel.n_id" num="100" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
@@ -145,12 +145,12 @@
<div class="row row-section">
<div class="layout layout-col1">
<h2 class="layout-tit">《{$arrNovel.n_name}》章节列表(第{$intPage}页)切换倒序/正序:
{if $strOrder == 'zheng'}
<a href='{$strPcPath}{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="dao" page="1"/}'
<h2 class="layout-tit">《{$arrNovel.n_name}》章节列表(第{$Request.route.intPage}页)切换倒序/正序:
{if $Request.route.strOrder == 'zheng'}
<a href='{$strPcPath}{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="dao" page="1"/}'
class="habt y">点击切换倒序</a>
{else}
<a href='{$strPcPath}{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}'
<a href='{$strPcPath}{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}'
class="habt y">点击切换正序</a>
{/if}
</h2>
@@ -159,14 +159,15 @@
{include file="pc/public/allChapterPage" /}
<ul class="section-list fix ycxsid">
{volist name='arrPage.data' id='Chapter'}
{chapter:pager page="1" limit="100" n_id="$arrNovel.n_id" d_key="d_key" d_val="Chapter" p_val="page_data" cache_life="86400" button_num="100" sort_type="$Request.route.strOrder" func="generateChapterPager"}
<li>
{$arrGrm[$d_key]|raw}
<a
href='{$strPcPath}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$Chapter[c_sort_num]" c_page="0"/}'>
href='{$strPcPath}{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>
{/volist}
{/chapter:pager}
</ul>
<!-- 目录下拉分页-->

View File

@@ -85,7 +85,7 @@
{if $arrChapter && $arrChapter.c_sort_num && $arrChapter.c_sort_num == 1}
<a id="j_chapterPrev" href="javascript:void(0);">上一页</a>
{else}
{$arrGRM[10]|raw}
{$arrGrm[10]|raw}
<a id="j_chapterPrev"
href='{$strPcPath}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="$arrPreChapter[c_page]"/}'>上一页</a>
{/if}
@@ -93,7 +93,7 @@
<a href='{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}'>章节目录</a>
<span>|</span>
{if $arrNextChapter && $arrNextChapter.c_sort_num}
{$arrGRM[9]|raw}
{$arrGrm[9]|raw}
<a id="j_chapterNext"
href='{$strPcPath}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="$arrNextChapter[c_page]"/}'>下一页</a>
{/if}
@@ -106,7 +106,7 @@
<p>相邻推荐:
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
{if $key<19 }
{$arrGRM[$key+9]|raw}
{$arrGrm[$key+9]|raw}
{/if}
<a
href='{$strPcPath}{site:nnurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" n_fid="$ForgeNovel[n_forge_id]"/}'
@@ -122,7 +122,7 @@
{if $arrChapter && $arrChapter.c_sort_num && $arrChapter.c_sort_num == 1}
<a id="j_chapterPrev" href="javascript:void(0);">上一页</a>
{else}
{$arrGRM[10]|raw}
{$arrGrm[10]|raw}
<a id="j_chapterPrev"
href='{$strPcPath}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="$arrPreChapter[c_page]"/}'>上一页</a>
{/if}
@@ -130,7 +130,7 @@
<a href='{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}'>章节目录</a>
<span>|</span>
{if $arrNextChapter && $arrNextChapter.c_sort_num}
{$arrGRM[9]|raw}
{$arrGrm[9]|raw}
<a id="j_chapterNext"
href='{$strPcPath}{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="$arrNextChapter[c_page]"/}'>下一页</a>
{/if}

View File

@@ -4,7 +4,7 @@
{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.n_id" n_key="arrNovel" n_forge_id="0" /}
{novel:info n_id="$Request.route.intNovelId" n_key="arrNovel" n_forge_id="0" /}
{site:grm page_code="pc_novel_info" diff="$arrNovel.n_id" num="100" g_key="arrGrm" /}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['n_name']??'未知小说'}" />
@@ -143,7 +143,7 @@
</div>
</div>
</div>
<div class="row row-section">
<div class="layout layout-col1">
<h2 class="layout-tit">《{$arrNovel.n_name}》最新章节</h2>

View File

@@ -1,10 +1,10 @@
{if !empty($arrPaginator)}
{if !empty($page_data)}
<div class="page_num">
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="prev"}
{$arrGRM[$key]|raw}
{$arrGrm[$key]|raw}
<a href="{$item.url ?: '#'}"
class="z {$item.disabled ? 'disabled' : ''}">
{$item.label}
@@ -13,8 +13,9 @@
{/volist}
<select onchange="self.location.href=options[selectedIndex].value">
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="page"}
<?php $intLimit = 100; ?>
<?php $intStart = ($item['label'] - 1) * $intLimit + 1; ?>
<?php $end = $item['label'] * $intLimit; ?>
<option value="{$item.url}" {$item.current ? 'selected' : ''}>
@@ -24,9 +25,9 @@
{/volist}
</select>
{volist name="arrPaginator" id="item"}
{volist name="page_data" id="item"}
{eq name="item.type" value="next"}
{$arrGRM[$key]|raw}
{$arrGrm[$key]|raw}
<a href="{$item.url ?: '#'}"
class="y {$item.disabled ? 'disabled' : ''}">
{$item.label}