diff --git a/code/app/home/BaseController.php b/code/app/home/BaseController.php
index e7e9062..1ad634e 100644
--- a/code/app/home/BaseController.php
+++ b/code/app/home/BaseController.php
@@ -119,8 +119,8 @@ abstract class BaseController
switch ($strTemplatesModel) {
case 'default':
+ // TODO 随机30个小说(有伪造小说的)
$arrForgeNovel = [];
-
View::assign([
'arrForgeNovel' => $arrForgeNovel,
'arrCategoryAll' => CategoryModel::$arrCategoryAll,
diff --git a/code/app/home/config/router.php b/code/app/home/config/router.php
index b66888b..f99a5b3 100644
--- a/code/app/home/config/router.php
+++ b/code/app/home/config/router.php
@@ -71,6 +71,37 @@ $arrRoutes = [
// 书库
'library' => [
+ /**
+ * 完整路由
+ * 暂时不需要开放
+ * 使用: {site:nflurl gender="$strGender" category="$CategoryPinyin" status="all" order="all" page="1"/}
+ */
+ // '/shuku/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+ // '/books/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+ // '/library/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+ // '/fenlei/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+ // '/class/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+ // '/category/:strGender/:strCategory/:strStatus/:strOrder/page:intPage',
+
+ /**
+ * default 模板
+ * strGender 不需要
+ * 使用 :gender 传空/或者不传,控制器会默认值是 all
+ * {site:nflurl gender="" category="$CategoryPinyin" status="all" order="all" page="1"/}
+ */
+ '/shuku/:strCategory/:strStatus/:strOrder/page:intPage',
+ '/books/:strCategory/:strStatus/:strOrder/page:intPage',
+ '/library/:strCategory/:strStatus/:strOrder/page:intPage',
+ '/fenlei/:strCategory/:strStatus/:strOrder/page:intPage',
+ '/class/:strCategory/:strStatus/:strOrder/page:intPage',
+ '/category/:strCategory/:strStatus/:strOrder/page:intPage',
+
+ /**
+ * kuangyu 模板
+ * strOrder 不需要
+ * 使用 order 传空/或者不传,控制器会默认值是 all
+ * {site:nflurl gender="$strGender" category="$CategoryPinyin" status="all" page="1"/}
+ */
'/shuku/:strGender/:strCategory/:strStatus/page:intPage',
'/books/:strGender/:strCategory/:strStatus/page:intPage',
'/library/:strGender/:strCategory/:strStatus/page:intPage',
@@ -80,12 +111,12 @@ $arrRoutes = [
],
// 书库首页
'library-index' => [
- '/shuku/all',
- '/books/all',
- '/library/all',
- '/fenlei/all',
- '/class/all',
- '/category/all',
+ '/shuku/index',
+ '/books/index',
+ '/library/index',
+ '/fenlei/index',
+ '/class/index',
+ '/category/index',
],
//排行榜
'rank' => ['/paihang/all', '/rank/all', '/paihang-quan', '/top/all', '/paihang-bang', '/ranks/all'],
@@ -150,13 +181,15 @@ foreach ($arrRoutes['prefixes'] as $platform => $prefixes) {
->pattern(['intNovelId' => '\d+', 'name' => '[\w-]+', 'strOrder' => 'zheng|dao', 'intPage' => '\d+']);
break;
case 'library':
- //书库/分类
+ //书库/分类 /shuku/all/xuanhuan-xiuzhen/all/all/page1
Route::get($strRoute, [Novel::class, 'getLibrary'])
->append(['boolIsMobile' => $boolIsMobile])
->pattern([
+ //'strGender' => 'all|nansheng-xiaoshuo|boys-novel|nansheng-shu|man-read|nansheng-book|male-novels|nvsheng-xiaoshuo|girls-novel|nvsheng-shu|woman-read|nvsheng-book|female-novels',
'strGender' => '[a-z\-]+',
'strCategory' => '[a-z\-]+',
'strStatus' => 'all|lianzai|wanjie',
+ // 'strOrder' => '[a-z\-]+',
'intPage' => '\d+'
]);
break;
diff --git a/code/app/home/controller/Index.php b/code/app/home/controller/Index.php
index 7bc1a9b..8014a35 100644
--- a/code/app/home/controller/Index.php
+++ b/code/app/home/controller/Index.php
@@ -137,7 +137,6 @@ class Index extends BaseController
switch ($strTemplatesModel) {
case 'default':
- // 默认模板 630zw
// TODO 1.获取所有分类数据,
// 2.然后 每个分类 随机获取 13个小说 ,
// 3.所有分类数据 放到一个数组里, 前端一个循环渲染,排版都是一样的
@@ -160,7 +159,6 @@ class Index extends BaseController
$strKey = sprintf('%s:PC:INDEX:ZUIJIAN:SEX:%s:%s', $Request->DomainModel->d_domain, 1, 5);
$arrBoyNewsNovel = $NovelModel->getCommonNovelOnCache($strKey, $intTTL, 5, 1, NULL, ['n_update_time' => -1]);
-
// 男生频道,周排行榜 随机10个小说
$strKey = sprintf('%s:PC:INDEX:RANK:%s:SEX:%s', $Request->DomainModel->d_domain, 'weekly', 1);
$arrBoyWeekRankNovel = $NovelModel->getRankNovelOnCache($strKey, 5, 1, 'weekly');
@@ -206,8 +204,8 @@ class Index extends BaseController
$arrRecommendSerializationNovel = $NovelModel->getCommonNovelOnCache($strKey, $intTTL, $intRecommendSerializationNovel, 0, NULL);
// 推荐等级为9的完结的 随机12个小说
- $strKey = sprintf('%s:PC:INDEX:TUIJIAN:WANJIE:%s', $Request->DomainModel->d_domain, 12);
- $arrRecommendEndNovel = $NovelModel->getCommonNovelOnCache($strKey, $intTTL, 12, 0, "已完结");
+ $strKey = sprintf('%s:PC:INDEX:TUIJIAN:WANJIE:%s', $Request->DomainModel->d_domain, $intRecommendEndNovel);
+ $arrRecommendEndNovel = $NovelModel->getCommonNovelOnCache($strKey, $intTTL, $intRecommendEndNovel, 0, "已完结");
// 最近更新-随机50
$strKey = sprintf('%s:PC:INDEX:ZUIJIAN:SEX:%s:%s', $Request->DomainModel->d_domain, 0, 50);
diff --git a/code/app/home/controller/Novel.php b/code/app/home/controller/Novel.php
index a1b9e54..f18c6fa 100644
--- a/code/app/home/controller/Novel.php
+++ b/code/app/home/controller/Novel.php
@@ -97,10 +97,11 @@ class Novel extends BaseController
* @param string $strNovelChannel 男生/女生 -拼音
* @param string $strCategory 分类 -拼音
* @param string $strStatus 连载/完结 -拼音
+ * @param string $strOrder 排序 -拼音
* @param integer $intPage 分页
* @return void
*/
- public function getLibrary(Request $Request, $strGender = 'all', $strCategory = 'all', $strStatus = 'all', $strSort = 'all',$intPage = 1)
+ public function getLibrary(Request $Request, $strGender = 'all', $strCategory = 'all', $strStatus = 'all', $strOrder = 'all', $intPage = 1)
{
$boolIsMobile = $Request->param('boolIsMobile');
$strChannel = $Request->param('strChannel') ?? 'all';
@@ -110,7 +111,6 @@ class Novel extends BaseController
$strNanUrl = str_replace("/", "", $strNanUrlTemp);
$strNvUrl = str_replace("/", "", $strNvUrlTemp);
// 性别
-
$arrSex = [
'all' => 0,
$strNanUrl => 1,
@@ -159,37 +159,42 @@ class Novel extends BaseController
$intLifeTime = 24 * 3600;
$strTemplatesModel = $Request->TemplatesModel->t_code;
-
switch ($strTemplatesModel) {
case 'default':
- $arrSort = [
-
- ['key'=>'all','name'=>'全部'],
- ['key'=>10,'name'=>'日排行'],
- ['key'=>11,'name'=>'周排行'],
- ['key'=>2,'name'=>'月排行'],
- ['key'=>3,'name'=>'总排行'],
- // ['key'=>4,'name'=>'日推荐'],
- // ['key'=>5,'name'=>'周推荐'],
- // ['key'=>6,'name'=>'月推荐'],
- // ['key' => 'shouchang', 'name' => '收藏'],
- ['key' => 'tuijian', 'name' => '推荐'],
- // ['key' => 'renqi', 'name' => '人气'],
- ['key' => 'news', 'name' => '最新入库'],
- ['key' => 'update', 'name' => '最新更新'],
+ $arrOrder = [
+ 'all' => '全部排序',
+ 'day' => '日排行',
+ 'week' => '周排行',
+ 'mon' => '月排行',
+ 'click' => '总排行',
+ 'tuijian' => '推荐',
+ 'news' => '最新入库',
+ 'update' => '最新更新',
];
// TODO 当前筛选条件(除了分页),随机6条
$arrTopNovel = [];
+ if (!$boolIsMobile) {
+ // TODO 当前筛选条件(除了分页),最新 随机 $intLimit 条
+ $arrNewsNovel = [];
+ View::assign([
+ 'arrNewsNovel' => $arrNewsNovel,
+ ]);
+ } else {
+ }
+
+ $strBaseUrl = NovelModel::getNovelCategoryUrl('', $strCategory, $strStatus, $strOrder, '{page}');
View::assign([
- 'arrSort' => $arrSort,
- 'strSort' => $strSort,
'arrTopNovel' => $arrTopNovel,
+ 'arrOrder' => $arrOrder,
+ 'strOrder' => $strOrder,
]);
break;
case 'kuangYu':
+ $strBaseUrl = NovelModel::getNovelCategoryUrl($strGender, $strCategory, $strStatus, "", '{page}');
+ break;
}
$strKey = sprintf("Novel:Library:%s:%s:%s:%s", $intGender, $strSearchCategory, $strSearchStatus, $intPage);
@@ -204,7 +209,6 @@ class Novel extends BaseController
$strTemplate = 'pc/getLibrary';
}
- $strBaseUrl = NovelModel::getNovelCategoryUrl($strGender, $strCategory, $strStatus, '{page}');
$arrPaginator = CusteomPage02::generate($intPage, $arrPage['total'], $intLimit, $strBaseUrl, $intButtomNum);
// 更新值
@@ -215,7 +219,6 @@ class Novel extends BaseController
'strNovelStatus' => $strSearchStatus,
]);
- // $strTitle = $Request->DomainModel->getFomartSubject(getFomartSubjectKey(__METHOD__));
$strTitleTemplate = $Request->DomainModel->getFomartSubject(getFomartSubjectKey(__METHOD__) . '@TITLE');
$strKeywordsTemplate = $Request->DomainModel->getFomartSubject(getFomartSubjectKey(__METHOD__) . '@KEYWORDS');
$strDescriptionTemplate = $Request->DomainModel->getFomartSubject(getFomartSubjectKey(__METHOD__) . '@DESCRIPTION');
@@ -225,7 +228,7 @@ class Novel extends BaseController
$strDescription = ConverterMovel::convert($strDescriptionTemplate);
View::assign([
- 'arrNovel' => $arrPage['data'],
+ 'arrNovel' => $arrPage['data'], // TODO default 模板需要加入 $strOrder 筛查数据
'strPageCode' => 'library',
'strGender' => $strGender,
'strCategory' => $strCategory,
@@ -320,88 +323,7 @@ class Novel extends BaseController
}
/**
- * 分类
- *
- * @todo 第一版本不需要
- * @param Request $Request
- * @param [type] $intCategoryId
- * @param integer $intPage
- * @return void
- */
- // public function getNovelCategory(Request $Request, $intCategoryId = null, $intPage = 1)
- // {
- // $boolIsMobile = $Request->param('boolIsMobile');
- // $strChannel = $Request->param('strChannel'); // 区分男生 / 女生频道
-
- // // 模拟数据-推荐等级为9的,连载的,男生频道/女生频道, 随机12个小说
- // $arrRecommendSerializationNovel = [
- // ['id' => 1, 'name' => '小说1', 'author' => '作者1'],
- // ['id' => 2, 'name' => '小说2', 'author' => '作者2'],
- // ['id' => 3, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 4, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 5, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 6, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 7, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 8, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 9, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 10, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 11, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 12, 'name' => '小说3', 'author' => '作者3'],
- // ];
- // // 模拟数据-推荐等级为9的,完结的,男生频道/女生频道, 随机8个小说
- // $arrRecommendEndNovel = [
- // ['id' => 1, 'name' => '小说1', 'author' => '作者1'],
- // ['id' => 2, 'name' => '小说2', 'author' => '作者2'],
- // ['id' => 3, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 4, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 5, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 6, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 7, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 8, 'name' => '小说3', 'author' => '作者3'],
-
- // ];
-
- // // 模拟数据-最近更新-随机50
- // $arrNewsUpdateNovel = [
- // ['id' => 1, 'name' => '小说1', 'author' => '作者1'],
- // ['id' => 2, 'name' => '小说2', 'author' => '作者2'],
- // ['id' => 3, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 4, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 5, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 6, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 7, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 8, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 9, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 10, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 1, 'name' => '小说1', 'author' => '作者1'],
- // ['id' => 2, 'name' => '小说2', 'author' => '作者2'],
- // ['id' => 3, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 4, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 5, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 6, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 7, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 8, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 9, 'name' => '小说3', 'author' => '作者3'],
- // ['id' => 10, 'name' => '小说3', 'author' => '作者3'],
- // ];
-
- // View::assign([
- // 'arrNewsUpdateNovel' => $arrNewsUpdateNovel,
- // 'arrRecommendSerializationNovel' => $arrRecommendSerializationNovel,
- // 'arrRecommendEndNovel' => $arrRecommendEndNovel,
- // 'arrAdBanner' => [],
- // 'strPageCode' => 'category'
- // ]);
- // if ($boolIsMobile) {
- // return View::fetch();
- // } else {
- // return View::fetch('pc/getNovelCategory');
- // }
- // }
-
-
- /**
- * 小说详情-kan
+ * 小说详情-伪造小说
*
* @param Request $Request
* @return void
@@ -470,6 +392,23 @@ class Novel extends BaseController
'$in' => $arrRelateveNId,
]], 10);
+ $strTemplatesModel = $Request->TemplatesModel->t_code;
+ switch ($strTemplatesModel) {
+ case 'default':
+
+ // TODO 章节正序 前100 条
+ $arrChapterAsc = [];
+
+ // TODO 和当前小说同分类,完结的小说 随机6个
+ $arrEndNovel = [];
+
+ View::assign([
+ 'arrChapterAsc' => $arrChapterAsc,
+ 'arrEndNovel' => $arrEndNovel,
+ ]);
+ break;
+ }
+
// 更新值
ConverterMovel::setVal([
'intPage' => 1,
@@ -574,6 +513,23 @@ class Novel extends BaseController
'$in' => $arrRelateveNId,
]], 10);
+ $strTemplatesModel = $Request->TemplatesModel->t_code;
+ switch ($strTemplatesModel) {
+ case 'default':
+
+ // TODO 章节正序 前100 条
+ $arrChapterAsc = [];
+
+ // TODO 和当前小说同分类,完结的小说 随机6个
+ $arrEndNovel = [];
+
+ View::assign([
+ 'arrChapterAsc' => $arrChapterAsc,
+ 'arrEndNovel' => $arrEndNovel,
+ ]);
+ break;
+ }
+
// 更新值
ConverterMovel::setVal([
'intPage' => 1,
@@ -655,17 +611,19 @@ class Novel extends BaseController
$strTemplatesModel = $Request->TemplatesModel->t_code;
switch ($strTemplatesModel) {
case 'default':
- if(!$boolIsMobile){
- // 推荐小说
- $arrRelateveNId = array_column($arrNovel['n_related_novel'], 'n_id');
- $arrRelateveNovel = $NovelModel->findMany(['n_id' => [
- '$in' => $arrRelateveNId,
- ]], 10);
+ // 推荐小说
+ $arrRelateveNId = array_column($arrNovel['n_related_novel'], 'n_id');
+ $arrRelateveNovel = $NovelModel->findMany(['n_id' => [
+ '$in' => $arrRelateveNId,
+ ]], 10);
- View::assign([
- 'arrRelateveNovel' => $arrRelateveNovel,
- ]);
- }
+ // TODO 和当前小说同分类,完结的小说 随机6个
+ $arrEndNovel = [];
+
+ View::assign([
+ 'arrRelateveNovel' => $arrRelateveNovel,
+ 'arrEndNovel' => $arrEndNovel,
+ ]);
break;
@@ -764,17 +722,19 @@ class Novel extends BaseController
$strTemplatesModel = $Request->TemplatesModel->t_code;
switch ($strTemplatesModel) {
case 'default':
- if(!$boolIsMobile){
- // 推荐小说
- $arrRelateveNId = array_column($arrNovel['n_related_novel'], 'n_id');
- $arrRelateveNovel = $NovelModel->findMany(['n_id' => [
- '$in' => $arrRelateveNId,
- ]], 10);
+ // 推荐小说
+ $arrRelateveNId = array_column($arrNovel['n_related_novel'], 'n_id');
+ $arrRelateveNovel = $NovelModel->findMany(['n_id' => [
+ '$in' => $arrRelateveNId,
+ ]], 10);
- View::assign([
- 'arrRelateveNovel' => $arrRelateveNovel,
- ]);
- }
+ // TODO 和当前小说同分类,完结的小说 随机6个
+ $arrEndNovel = [];
+
+ View::assign([
+ 'arrRelateveNovel' => $arrRelateveNovel,
+ 'arrEndNovel' => $arrEndNovel,
+ ]);
break;
@@ -875,7 +835,15 @@ class Novel extends BaseController
'$in' => $arrRelateveNId,
]], 10);
+ // TODO 章节正序 前100 条
+ $arrChapterAsc = [];
+
+ // TODO 和当前小说同分类,完结的小说 随机6个
+ $arrEndNovel = [];
+
View::assign([
+ 'arrChapterAsc' => $arrChapterAsc,
+ 'arrEndNovel' => $arrEndNovel,
'intFirstChapterSort' => $intFirstChapterSort,
'arrRelateveNovel' => $arrRelateveNovel,
]);
@@ -891,7 +859,7 @@ class Novel extends BaseController
$intButtomNum = 10;
}
- $strBaseUrl = NovelModel::getNovelCatalogUrl($intNId, $arrNovel['n_name_pinyin'], $strOrder,'{page}');
+ $strBaseUrl = NovelModel::getNovelCatalogUrl($intNId, $arrNovel['n_name_pinyin'], $strOrder, '{page}');
$arrPaginator = CusteomPage02::generate($intPage, $arrPage['total'], $intLimit, $strBaseUrl, $intButtomNum);
// 更新值
@@ -974,8 +942,6 @@ class Novel extends BaseController
$intButtomNum = 10;
- // $strSearchInfoUrlTemp = $Request->DomainModel->getFomartSubject('SEARCH_INFO_URL','',false);
- // $strBaseUrl = sprintf('/search.html?keyword=%s&page={page}', $strSearchKeywords);
$strBaseUrl = NovelModel::getNovelSearchUrl($strSearchKeywords, '{page}');
$arrPaginator = CusteomPage02::generate($intPage, $arrPage['total'], $intLimit, $strBaseUrl, $intButtomNum);
diff --git a/code/app/home/view/default/Novel/getLibrary.html b/code/app/home/view/default/Novel/getLibrary.html
index db4616f..39f8da2 100644
--- a/code/app/home/view/default/Novel/getLibrary.html
+++ b/code/app/home/view/default/Novel/getLibrary.html
@@ -15,34 +15,34 @@
@@ -54,8 +54,8 @@
[{$Novel.n_category}]
-
+
{$Novel.n_name}
@@ -100,7 +100,7 @@
{foreach $arrTopNovel as $key=>$Novel }
-
-
+
@@ -108,7 +108,7 @@
-
diff --git a/code/app/home/view/default/Novel/getNovelCatalog.html b/code/app/home/view/default/Novel/getNovelCatalog.html
index 4373ef9..901ac67 100644
--- a/code/app/home/view/default/Novel/getNovelCatalog.html
+++ b/code/app/home/view/default/Novel/getNovelCatalog.html
@@ -59,7 +59,6 @@
{/block}
{block name="head-js"}
-
{/block}
{block name="body-class"}novel_info{/block}
@@ -80,7 +79,7 @@
{$arrNovel.n_name}
{$arrNovel.n_author}
著
- {$arrNovel.n_name}{$arrNovel.n_status}
+
{$arrNovel.n_category}{$arrNovel.n_status}
最近更新:{$arrLatestChapter->c_name
@@ -110,30 +109,36 @@
{volist name='arrChapter' id='Chapter'}
- {$Chapter.c_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Chapter.c_name}
{/volist}
- 查看更多章节...
章节列表
- {volist name='arrChapter' id='vo'}
+ {volist name='arrChapterAsc' id='vo'}
- {$Chapter.c_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Chapter.c_name}
{/volist}
-
查看更多章节...
{else}
-
+章节列表(第{$intPage}页)
+ {if $strOrder == 'zheng'}
+ 点击切换倒序
+ {else}
+ 点击切换正序
+ {/if}
+
@@ -155,18 +160,18 @@
{/if}
-
封面推荐
+
完结推荐
- {foreach $arrRelateveNovel as $key=>$Novel }
+ {foreach $arrEndNovel as $key=>$Novel }
![]()

-
{$Novel.n_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Novel.n_name}
作者:{$Novel.n_author}
{$Novel.n_description}
@@ -186,16 +191,32 @@
{volist name='arrRelateveNovel' id='Novel'}
{$Novel.n_name}
+ href='{site:nurl n_id="$Novel[n_id]" n_py="$Novel[n_name_pinyin]" /}'>{$Novel.n_name}
{/volist}
{volist name='arrNovel.n_forge_novel' id='ForgeNovel'}
{$ForgeNovel.n_forge_title}
+ href='{site:nnurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" n_fid="$ForgeNovel[n_forge_id]"/}'>{$ForgeNovel.n_forge_title}
{/volist}
+
+
+
{/block}
{block name="customize"}
diff --git a/code/app/home/view/default/Novel/getNovelCategory.html b/code/app/home/view/default/Novel/getNovelCategory.html
deleted file mode 100644
index 585b1ea..0000000
--- a/code/app/home/view/default/Novel/getNovelCategory.html
+++ /dev/null
@@ -1,45 +0,0 @@
-{extend name="baseH5" /}
-{block name='nav-active-class'}home{/block}
-{block name="title"}{/block}
-{block name="head-js"}{/block}
-
-{block name="logo-html"}
-
- 狂雨小说/{eq name="strPageCode" value="boy"}男生 {else/}女生{/eq}
-
-{/block}
-
-{block name="main"}
-
-
-
-
-
-
-
热门推荐
-
-
-
- {foreach $arrRecommendSerializationNovel as $category}
- {include file="Public/novelListS" /}
- {/foreach}
-
-
-
-
-
-
-
-
最近更新
-
-
-
- {foreach $arrNewsUpdateNovel as $category}
- {include file="Public/novelListH" /}
- {/foreach}
-
-
-
-
-
-{/block} {block name="customize"} {/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Novel/getNovelChapter.html b/code/app/home/view/default/Novel/getNovelChapter.html
index 2fbcc50..23b5a09 100644
--- a/code/app/home/view/default/Novel/getNovelChapter.html
+++ b/code/app/home/view/default/Novel/getNovelChapter.html
@@ -84,16 +84,16 @@
{if $arrChapter.c_sort_num == 1}
- - 上一章
+ - 上一页
{else}
- 上一章
+ href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="$arrPreChapter[c_page]"/}'>上一页
{/if}
- 章节目录
{if $arrNextChapter && $arrNextChapter.c_sort_num}
- 下一章
+ href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="$arrNextChapter[c_page]"/}'>下一页
{/if}
@@ -106,21 +106,62 @@
{if $arrChapter.c_sort_num == 1}
- - 上一章
+ - 上一页
{else}
- 上一章
+ href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrPreChapter[c_sort_num]" c_page="$arrPreChapter[c_page]"/}'>上一页
{/if}
- 章节目录
{if $arrNextChapter && $arrNextChapter.c_sort_num}
- 下一章
+ href='{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" c_sort="$arrNextChapter[c_sort_num]" c_page="$arrNextChapter[c_page]"/}'>下一页
{/if}
+
+
+
完结推荐
+
+ {foreach $arrEndNovel as $key=>$Novel }
+
+ 
+ -
+
+
作者:{$Novel.n_author}
+ {$Novel.n_description}
+
+
+ {/foreach}
+
+
+
+
+
相邻小说
+
+
+ {$strFocus ?? ""} 。看小说就来{$DomainModel->d_name} {$DomainModel->d_domain}...
+
+
+
{/block}
{block name="customize"}
diff --git a/code/app/home/view/default/Novel/getNovelInfo.html b/code/app/home/view/default/Novel/getNovelInfo.html
index 0361943..db92fe8 100644
--- a/code/app/home/view/default/Novel/getNovelInfo.html
+++ b/code/app/home/view/default/Novel/getNovelInfo.html
@@ -59,13 +59,11 @@
{/block}
{block name="head-js"}
-
{/block}
{block name="body-class"}novel_info{/block}
-{block name='head-name'}{$DomainModel->d_name}{/block}
-{block name='head-href'}/{/block}
+n_name
{block name="main"}
@@ -79,7 +77,7 @@
{$arrNovel.n_name}
{$arrNovel.n_author}
著
-
{$arrNovel.n_name}{$arrNovel.n_status}
+
{$arrNovel.n_category}{$arrNovel.n_status}
最近更新:{$arrLatestChapter->c_name
@@ -108,84 +106,69 @@
{volist name='arrChapter' id='Chapter'}
- {$Chapter.c_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Chapter.c_name}
{/volist}
- 查看更多章节...
章节列表
- {volist name='arrChapter' id='vo'}
+ {volist name='arrChapterAsc' id='vo'}
- {$Chapter.c_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Chapter.c_name}
{/volist}
-
查看更多章节...
{else}
-章节列表(第{$intCurrentPage}页)点击切换正序/倒序
+章节列表(第{$intPage}页)
+ {if $strOrder == 'zheng'}
+ 点击切换倒序
+ {else}
+ 点击切换正序
+ {/if}
+
-
-
- 上一页
-
-
下一页
-
+
+ {include file="public/allChapterPage" start="1"/}
-
-
- 上一页
-
-
下一页
-
+ {include file="public/allChapterPage" /}
+
{/if}
-
封面推荐
+
完结推荐
- {foreach $arrRelateveNovel as $key=>$Novel }
+ {foreach $arrEndNovel as $key=>$Novel }
![]()

-
{$Novel.n_name}
+ href='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" /}'>{$Novel.n_name}
作者:{$Novel.n_author}
{$Novel.n_description}
@@ -195,7 +178,6 @@
-
相邻小说
+
{/block}
{block name="customize"}
diff --git a/code/app/home/view/default/Novel/getNovelRank.html b/code/app/home/view/default/Novel/getNovelRank.html
deleted file mode 100644
index 459a474..0000000
--- a/code/app/home/view/default/Novel/getNovelRank.html
+++ /dev/null
@@ -1,129 +0,0 @@
-{extend name="baseH5" /}
-{block name='nav-active-class'}home{/block}
-{block name="title"}{/block}
-{block name="head-js"}{/block}
-
-{block name="logo-html"}
-
-{/block}
-
-{block name="main"}
-
-
-
-
-
-
日点击榜
-
-
-
- {foreach $arrDayRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
-
- {/foreach}
-
-
-
-
-
-
-
周点击榜
-
-
-
- {foreach $arrWeekRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
-
- {/foreach}
-
-
-
-
-
-
-
月点击榜
-
-
-
- {foreach $arrMoonRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
-
- {/foreach}
-
-
-
-
-
-
-
总点击榜
-
-
-
- {foreach $arrTotalRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
新书榜
-
-
-
- {foreach $arrNewsNovelRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
完结榜
-
-
-
- {foreach $arrEdnNovelRankNovel as $key => $vo}
- {if $key == 0}
- {include file="Public/novelListH" /}
- {/if}
- {if $key >= 1}
- {include file="Public/novelListRank" /}
- {/if}
- {/foreach}
-
-
-
-
-{/block}
-
-{block name="customize"} {/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Novel/getSearchNovel.html b/code/app/home/view/default/Novel/getSearchNovel.html
index c85ccd0..5f941ac 100644
--- a/code/app/home/view/default/Novel/getSearchNovel.html
+++ b/code/app/home/view/default/Novel/getSearchNovel.html
@@ -1,72 +1,74 @@
{extend name="baseH5" /}
-{block name='nav-active-class'}home{/block}
-{block name="title"}{/block}
-{block name="head-js"}{/block}
+{block name="title"}{$strTitle??''}{/block}
+{block name="keywords"}{$strKeywords??''}{/block}
+{block name="description"}{$strDescription??''}{/block}
-{block name="logo-html"}
-
-{/block}
+{block name='nav-active-class'}home{/block}
+{block name="body-class"}novel_so novel_search_page{/block}
+{block name='head-name'}{$DomainModel->d_name}{/block}
+{block name='head-href'}/{/block}
{block name="main"}
-
-
-
-
-
“1”相关结果:
-
- -
-
- 1秒1技能点,你说我凡阶天赋修炼慢?
- 深海中潜藏的巨兽掀起灭世海啸!山间凶兽朝着钢铁巨城露出凶猛的獠牙。
- 即将参加高考的武道学生徐天觉醒深红系统。却没想觉醒日被未婚妻强行退婚,面对众人诋毁,未婚妻的鄙视。 地阶天赋又如何,深红,给我加点!
- 本站提示:各位书友要是觉得《1秒1技能点,你说我凡阶天赋修炼慢?》还不错的话请不要忘记向您QQ群
-
-
- 作者:青城老鬼
-
-
- 已完结
-
-
- -
-
- 全球农场TOP1
- 【二月的更新在晚上十点,下本写《异种移植》~】 卿孟祝被炒那天,晚上找兄弟喝酒诉苦。
- 诉到一半,脑海中“叮”一声响,平板的电子音响起:“恭喜您绑定星际商城,获得了珍贵的星际卖家名额,此名额不可转让,过期作废……”
- 酒醒后,卿孟祝发现天上掉的馅饼是真的——他拥有了一个星际商城,上面满是灵泉水、基
-
-
- 作者:月寂烟雨
-
-
- 已完结
-
-
- -
-
- 重生2000,青梅校花18岁
- 【重生+青梅校花+恋爱日常+狗粮+单女主】身患绝症的易枫重生2000年,这一年,青梅校花顾沐希18岁。 \n “易枫借我笔用一下!”\n
- “……你昨天不才借了吗?”\n “昨天是昨天,今天是今天,今非昔比懂不懂?”\n “……服了你了,好吧,给你。”\n “易枫撕一张纸借我用
-
-
- 作者:奋斗老九
-
-
- 已完结
-
-
-
-
-
-
+
+
{$strSearchKeywords}搜索结果 - {$DomainModel->d_name} 第{$intPage}页
+
+ {if empty($arrPage.data)}
+
没有相关数据
+ {else}
+
+
+ {foreach $arrPage.data as $key=>$Novel}
+
+ -
+
+
+
+
+ -
+
+
作者:{$Novel.n_author}
+ {$Novel.n_description}
+
+
+ {/foreach}
+ {/if}
+
+
+
+
+ {volist name="arrPaginator" id="vo" key="k"}
+ {switch $vo.label}
+ {case value="上一页"}
+ {if $intPage == 1}
+
«
+ {else}
+
«
+ {/if}
+ {/case}
+ {case value="下一页"}
+ {if $intPage >= $intTotalPage}
+
»
+ {else}
+
»
+ {/if}
+ {/case}
+ {default /}
+ {if preg_match('/^\d+$/', $vo.label)}
+
{$vo.label}
+ {/if}
+ {/switch}
+ {/volist}
+
+
+
{/block}
-{block name="customize"} {/block}
\ No newline at end of file
+{block name="customize"}
+
+
+{/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Pc/getLibrary.html b/code/app/home/view/default/Pc/getLibrary.html
index a701593..8bc7658 100644
--- a/code/app/home/view/default/Pc/getLibrary.html
+++ b/code/app/home/view/default/Pc/getLibrary.html
@@ -11,7 +11,7 @@
{else}
+ content='https://{$DomainModel->d_domain}{site:nflurl gender="" category="$strCategory" status="$strStatus" page="$intPage"/}' />
{/if}
@@ -28,7 +28,7 @@
{else}
{/block}
{block name="body-class"}novel_info{/block}
@@ -168,11 +167,15 @@
《{$arrNovel.n_name}》章节列表(第{$intPage}页)切换倒序/正序:
- 当前正序
+ {if $strOrder == 'zheng'}
+ 点击切换倒序
+ {else}
+ 点击切换正序
+ {/if}
-
{include file="pc/public/allChapterPage" /}
@@ -196,7 +199,7 @@
已完结热门小说推荐
- {foreach $arrRelateveNovel as $key=>$Novel }
+ {foreach $arrEndNovel as $key=>$Novel }
+
+
+
{/block}
{block name="customize"}
diff --git a/code/app/home/view/default/Pc/getNovelChapter.html b/code/app/home/view/default/Pc/getNovelChapter.html
index 14e55be..0675393 100644
--- a/code/app/home/view/default/Pc/getNovelChapter.html
+++ b/code/app/home/view/default/Pc/getNovelChapter.html
@@ -83,11 +83,11 @@
{$arrNovel.n_name}(第{$arrChapter['c_sort_num']}页)
{if $arrChapter && $arrChapter.c_sort_num && $arrChapter.c_sort_num == 1}
-
上一章
+
上一页
{else}
{$arrGRM[10]|raw}
上一章
+ 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]"/}'>上一页
{/if}
|
章节目录
@@ -95,13 +95,13 @@
{if $arrNextChapter && $arrNextChapter.c_sort_num}
{$arrGRM[9]|raw}
下一章
+ 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]"/}'>下一页
{/if}
-
请勿开启浏览器阅读模式,否则将导致章节内容缺失及无法阅读下一章。
+
请勿开启浏览器阅读模式,否则将导致章节内容缺失及无法阅读下一页。
相邻推荐:
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
@@ -120,11 +120,11 @@
{if $arrChapter && $arrChapter.c_sort_num && $arrChapter.c_sort_num == 1}
-
上一章
+
上一页
{else}
{$arrGRM[10]|raw}
上一章
+ 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]"/}'>上一页
{/if}
|
章节目录
@@ -132,7 +132,7 @@
{if $arrNextChapter && $arrNextChapter.c_sort_num}
{$arrGRM[9]|raw}
下一章
+ 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]"/}'>下一页
{/if}
@@ -142,7 +142,7 @@
已完结热门小说推荐
- {foreach $arrRelateveNovel as $key=>$Novel }
+ {foreach $arrEndNovel as $key=>$Novel }
{$arrNovel.n_description ?? ''}
@@ -128,14 +127,14 @@
相邻推荐:
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
{if $key<20 } {$arrGRM[$key+20]|raw} {/if} {$ForgeNovel.n_forge_title}
- {/volist}
+ href='{$strPcPath}{site:nnurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" n_fid="$ForgeNovel[n_forge_id]"/}'
+ class="red">{$ForgeNovel.n_forge_title}
+ {/volist}
- {volist name='arrRelateveNovel' id='Novel'}
- {$Novel.n_name}
- {/volist}
+ {volist name='arrRelateveNovel' id='Novel'}
+ {$Novel.n_name}
+ {/volist}
@@ -154,7 +153,7 @@
《{$arrNovel.n_name}》章节列表
- {volist name='arrChapter' id='Chapter'}
+ {volist name='arrChapterAsc' id='Chapter'}
- {$Chapter.c_name}
@@ -168,8 +167,13 @@
《{$arrNovel.n_name}》章节列表(第{$intPage}页)切换倒序/正序:
- 当前正序
+ {if $strOrder == 'zheng'}
+ 点击切换倒序
+ {else}
+ 点击切换正序
+ {/if}
@@ -195,7 +199,7 @@
已完结热门小说推荐
- {foreach $arrRelateveNovel as $key=>$Novel }
+ {foreach $arrEndNovel as $key=>$Novel }
+
+
{/block}
+
{block name="customize"}
{/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Pc/getNovelRank.html b/code/app/home/view/default/Pc/getNovelRank.html
deleted file mode 100644
index 5baed35..0000000
--- a/code/app/home/view/default/Pc/getNovelRank.html
+++ /dev/null
@@ -1,165 +0,0 @@
-{extend name="basePc" /}
-{block name='nav-active-class'}home{/block}
-{block name="title"}{/block}
-{block name="head-js"}{/block}
-{block name='body-class'}body-rank-class{/block}
-
-{block name="main"}
-
-
-
-
-
-
-
-
-
日点击榜
-
-
-
-
- {foreach $arrDayRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
周点击榜
-
-
-
-
- {foreach $arrWeekRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
月点击榜
-
-
-
-
- {foreach $arrMoonRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
总点击榜
-
-
-
-
- {foreach $arrTotalRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
新书榜
-
-
-
-
- {foreach $arrNewsNovelRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
完结榜
-
-
-
-
- {foreach $arrEdnNovelRankNovel as $key=>$Novel}
- {if $key == 0}
- {include file="Pc/Public/indexBoyRankOne" /}
- {/if}
- {if $key >= 1}
- {include file="Pc/Public/indexBoyRankList" /}
- {/if}
- {/foreach}
-
-
-
-
-
-
-
-
-{/block}
-
-{block name="customize"} {/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Pc/getSearchNovel.html b/code/app/home/view/default/Pc/getSearchNovel.html
index e5a3892..5b1111e 100644
--- a/code/app/home/view/default/Pc/getSearchNovel.html
+++ b/code/app/home/view/default/Pc/getSearchNovel.html
@@ -1,68 +1,87 @@
{extend name="basePc" /}
+{block name="title"}{$strTitle??''}{/block}
+{block name="keywords"}{$strKeywords??''}{/block}
+{block name="description"}{$strDescription??''}{/block}
{block name='nav-active-class'}home{/block}
+
{block name="title"}{/block}
-{block name="head-js"}{/block}
-
-
+{block name="meta-other"}{/block}
+{block name="body-class"}novel_home novel_search_page{/block}
{block name="main"}
-
-
-
-
-
-
-
- {foreach $arrSearchNovel as $key=>$Novel}
- -
-
-
-
-
-
-
- 作者:青城老鬼
- 分类:
- 状态:已完结
- 总字数:38.00万字+
-
-
- 标签:
-
-
-
最近更新:第190章 武破虚空,新的开始
-
深海中潜藏的巨兽掀起灭世海啸!山间凶兽朝着钢铁巨城露出凶猛的獠牙。 即将参加高考的武道学生徐天觉醒深红系统。却没想觉醒日被未婚妻强行退婚,面对众人诋毁,未婚妻的鄙视。
- 地阶天赋又如何,深红,给我加点!
- 本站提示:各位书友要是觉得《1秒1技能点,你说我凡阶天赋修炼慢?》还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦!
+
+
+
+
{$strSearchKeywords}搜索结果 - {$DomainModel->d_name} 第{$intPage}页
+
+ 搜索“{$strSearchKeywords}”相关结果共有 {$arrPage.total} 部小说
+
+ {if empty($arrPage.data)}
+
没有相关数据
+ {else}
+
+
+ {foreach $arrPage.data as $key=>$Novel}
+
-
-
更新时间:2025-03-20 23:57
-
立即阅读
-
-
- {/foreach}
-
-
+ {/foreach}
+
+
+
+ {/if}
+
-
-
+
+
+
+ {volist name="arrPaginator" id="vo" key="k"}
+ {switch $vo.label}
+ {case value="上一页"}
+ {if $intPage == 1}
+
«
+ {else}
+
«
+ {/if}
+ {/case}
+ {case value="下一页"}
+ {if $intPage >= $intTotalPage}
+
»
+ {else}
+
»
+ {/if}
+ {/case}
+ {case value="..."}
+
...
+ {/case}
+ {default /}
+ {if preg_match('/^\d+$/', $vo.label)}
+
{$vo.label}
+ {/if}
+ {/switch}
+ {/volist}
+
+
+
{/block}
-{block name="customize"} {/block}
\ No newline at end of file
+{block name="customize"}
+
+{/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Pc/getUserIndex.html b/code/app/home/view/default/Pc/getUserIndex.html
deleted file mode 100644
index 198f188..0000000
--- a/code/app/home/view/default/Pc/getUserIndex.html
+++ /dev/null
@@ -1,143 +0,0 @@
-{extend name="basePcUser" /}
-{block name='nav-active-class'}home{/block}
-{block name="title"}{/block}
-{block name="head-js"}{/block}
-
-
-{block name="main"}
-
-
-
-
-
-
-
-
-
-
- {foreach $arrNewsNovel as $key=>$Novel}
-
- {/foreach}
-
-
-
-
-
-
-
-
-{/block}
-
-{block name="customize"} {/block}
\ No newline at end of file
diff --git a/code/app/home/view/default/Pc/index.html b/code/app/home/view/default/Pc/index.html
index e3df5b1..7468ff6 100644
--- a/code/app/home/view/default/Pc/index.html
+++ b/code/app/home/view/default/Pc/index.html
@@ -3,13 +3,13 @@
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{block name="head-css"}
-
+
{/block}
{block name="head"}
-
+
-
+
@@ -41,7 +41,7 @@
@@ -52,7 +52,7 @@
{foreach $arrCategoryAll as $Sexkey=>$SexCategory }
{foreach $SexCategory as $CategoryPinyin=>$CategoryName }
- - {$CategoryName}
+ - {$CategoryName}
{/foreach}
{/foreach}
- 阅读记录
diff --git a/code/app/home/view/kuangYu/pc/getLibrary.html b/code/app/home/view/kuangYu/pc/getLibrary.html
index fd7ebed..2ccc419 100644
--- a/code/app/home/view/kuangYu/pc/getLibrary.html
+++ b/code/app/home/view/kuangYu/pc/getLibrary.html
@@ -161,9 +161,9 @@
{switch $vo.label}
{case value="上一页"}
{if $intPage == 1}
- - «
+ «
{else}
- - «
+ «
{/if}
{/case}
{case value="下一页"}
diff --git a/code/app/model/NovelModel.php b/code/app/model/NovelModel.php
index 1d1a0a0..8bd3e32 100644
--- a/code/app/model/NovelModel.php
+++ b/code/app/model/NovelModel.php
@@ -557,22 +557,27 @@ class NovelModel extends MongoModel
}
/**
+ * 小说分类/书库
* Undocumented function
- * 小说分类
- * @param int $intNId
- * @param string $intPinYin
+ *
+ * @param [type] $strGender
+ * @param [type] $strCategory
+ * @param [type] $strStatus
+ * @param [type] $strOrder
+ * @param [type] $intPage
* @return string
- *
*/
- static public function getNovelCategoryUrl($strGender, $strCategory, $strStatus, $intPage): string
+ static public function getNovelCategoryUrl($strGender, $strCategory, $strStatus, $strOrder,$intPage): string
{
$strKey = 'CATEGORY_INFO_URL';
$strUrl = DomainModel::getPageUrl($strKey, [
- 'strGender' => $strGender,
- 'strCategory' => $strCategory,
- 'strStatus' => $strStatus,
- 'intPage' => $intPage,
+ 'strGender' => $strGender ?? '',
+ 'strCategory' => $strCategory ?? '',
+ 'strStatus' => $strStatus ?? '',
+ 'strOrder' => $strOrder ?? '',
+ 'intPage' => $intPage ?? 1,
]);
+ $strUrl = preg_replace('#/{2,}#', '/', $strUrl);
return (string)$strUrl;
}
diff --git a/code/database/seeders/TemplateSeeder.php b/code/database/seeders/TemplateSeeder.php
index 18c1de0..f478254 100644
--- a/code/database/seeders/TemplateSeeder.php
+++ b/code/database/seeders/TemplateSeeder.php
@@ -212,7 +212,7 @@ class TemplateSeeder
'description' => '分类书库URL 模板1',
'sfg_id' => 25,
'arrSubjectFomart' => [
- '/shuku/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/shuku/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
'NAN_SHENG_URL' => [
@@ -307,7 +307,7 @@ class TemplateSeeder
'CATEGORY_INDEX_URL' => [
'description' => '书库首页URL 模板1',
'sfg_id' => 108,
- 'arrSubjectFomart' => ['/shuku/all',]
+ 'arrSubjectFomart' => ['/shuku/index',]
],
'SEARCH_INDEX_URL' => [
'description' => '搜索首页URL 模板1',
@@ -393,7 +393,7 @@ class TemplateSeeder
'd_id' => 1,
'd_domain' => 'seo.com',
'd_name' => '狂雨小说',
- 't_id' => '2',
+ 't_id' => '1',
'd_keywords' => '狂雨小说',
'd_description' => '欢迎来到狂雨小说 - 您的免费小说阅读天堂!这里汇聚了玄幻修真、穿越重生、都市热血、言情甜宠等多种热门小说类型,无论您是喜欢热血激战的主角成长故事,还是钟情于逆袭人生的穿越传奇,亦或是沉浸于都市生活的浪漫情缘,狂雨小说都能满足您的阅读渴望。我们每日更新最新章节,确保您第一时间追更心仪作品;更有小说排行榜精选全网热评佳作,从日榜到完结榜,助您轻松找到高人气好书。无需注册,免费畅读,狂雨小说致力于为您打造极致阅读体验,快来加入我们,开启属于您的故事冒险之旅吧!',
'd_index_title' => '狂雨小说 - 免费在线阅读热门玄幻、穿越、都市小说',
@@ -415,7 +415,32 @@ class TemplateSeeder
'd_text_logo' => '热门小说阅读平台',
't_cfg' => $arrSubjectFomartGroupData,
],
-
+ [
+ 'd_id' => 3,
+ 'd_domain' => 'novel3.com',
+ 'd_name' => '狂雨小说',
+ 't_id' => '2',
+ 'd_keywords' => '狂雨小说',
+ 'd_description' => '欢迎来到狂雨小说 - 您的免费小说阅读天堂!这里汇聚了玄幻修真、穿越重生、都市热血、言情甜宠等多种热门小说类型,无论您是喜欢热血激战的主角成长故事,还是钟情于逆袭人生的穿越传奇,亦或是沉浸于都市生活的浪漫情缘,狂雨小说都能满足您的阅读渴望。我们每日更新最新章节,确保您第一时间追更心仪作品;更有小说排行榜精选全网热评佳作,从日榜到完结榜,助您轻松找到高人气好书。无需注册,免费畅读,狂雨小说致力于为您打造极致阅读体验,快来加入我们,开启属于您的故事冒险之旅吧!',
+ 'd_index_title' => '狂雨小说 - 免费在线阅读热门玄幻、穿越、都市小说',
+ 'd_index_keywords' => '狂雨小说, 小说在线阅读, 玄幻小说, 穿越小说, 热门小说排行榜',
+ 'd_index_description' => '狂雨小说提供免费在线阅读,涵盖玄幻、穿越、都市等热门小说,最新排行榜每日更新,尽享阅读乐趣!',
+ 'd_text_logo' => '热门小说阅读平台',
+ 't_cfg' => $arrSubjectFomartGroupData,
+ ],
+ [
+ 'd_id' => 4,
+ 'd_domain' => 'novel4.com',
+ 'd_name' => '狂雨小说',
+ 't_id' => '2',
+ 'd_keywords' => '狂雨小说',
+ 'd_description' => '欢迎来到狂雨小说 - 您的免费小说阅读天堂!这里汇聚了玄幻修真、穿越重生、都市热血、言情甜宠等多种热门小说类型,无论您是喜欢热血激战的主角成长故事,还是钟情于逆袭人生的穿越传奇,亦或是沉浸于都市生活的浪漫情缘,狂雨小说都能满足您的阅读渴望。我们每日更新最新章节,确保您第一时间追更心仪作品;更有小说排行榜精选全网热评佳作,从日榜到完结榜,助您轻松找到高人气好书。无需注册,免费畅读,狂雨小说致力于为您打造极致阅读体验,快来加入我们,开启属于您的故事冒险之旅吧!',
+ 'd_index_title' => '狂雨小说 - 免费在线阅读热门玄幻、穿越、都市小说',
+ 'd_index_keywords' => '狂雨小说, 小说在线阅读, 玄幻小说, 穿越小说, 热门小说排行榜',
+ 'd_index_description' => '狂雨小说提供免费在线阅读,涵盖玄幻、穿越、都市等热门小说,最新排行榜每日更新,尽享阅读乐趣!',
+ 'd_text_logo' => '热门小说阅读平台',
+ 't_cfg' => $arrSubjectFomartGroupData,
+ ],
];
self::initTemplate($arrTemplateData);
diff --git a/code/extend/template/taglib/Site.php b/code/extend/template/taglib/Site.php
index d0fc7fd..9896481 100644
--- a/code/extend/template/taglib/Site.php
+++ b/code/extend/template/taglib/Site.php
@@ -15,7 +15,7 @@ class Site extends TagLib
'cpurl' => ['attr' => 'n_id,n_py,c_sort,c_page', 'close' => 0],
'lcpurl' => ['attr' => 'n_id,n_py', 'close' => 0],
'nclurl' => ['attr' => 'n_id,n_py,order,page', 'close' => 0],
- 'nflurl' => ['attr' => 'gender,category,status,page', 'close' => 0],
+ 'nflurl' => ['attr' => 'gender,category,status,order,page', 'close' => 0],
'grm' => ['attr' => 'domain,code,line,diff,start,end,index,type', 'close' => 0],
];
@@ -181,11 +181,12 @@ EOD;
$strGender = isset($tag['gender']) ? $tag['gender'] : '';
$strCategory = isset($tag['category']) ? $tag['category'] : '';
$strStatus = isset($tag['status']) ? $tag['status'] : '';
+ $strOrder = isset($tag['order']) ? $tag['order'] : '';
$intPage = isset($tag['page']) ? $tag['page'] : '';
$strParse = <<
EOD;
diff --git a/code/public/initdata/novel/urlSubjectFomartGroup.php b/code/public/initdata/novel/urlSubjectFomartGroup.php
index feaf4a3..e2d8d91 100644
--- a/code/public/initdata/novel/urlSubjectFomartGroup.php
+++ b/code/public/initdata/novel/urlSubjectFomartGroup.php
@@ -10,35 +10,35 @@ return [
'description' => '分类书库URL 模板2',
'sfg_id' => 39,
'arrSubjectFomart' => [
- '/books/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/books/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
'CATEGORY_INFO_URL_T3' => [
'description' => '分类书库URL 模板3',
'sfg_id' => 40,
'arrSubjectFomart' => [
- '/library/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/library/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
'CATEGORY_INFO_URL_T4' => [
'description' => '分类书库URL 模板4',
'sfg_id' => 41,
'arrSubjectFomart' => [
- '/fenlei/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/fenlei/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
'CATEGORY_INFO_URL_T5' => [
'description' => '分类书库URL 模板5',
'sfg_id' => 42,
'arrSubjectFomart' => [
- '/class/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/class/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
'CATEGORY_INFO_URL_T6' => [
'description' => '分类书库URL 模板6',
'sfg_id' => 43,
'arrSubjectFomart' => [
- '/category/{strGender}/{strCategory}/{strStatus}/page{intPage}',
+ '/category/{strGender}/{strCategory}/{strStatus}/{strOrder}/page{intPage}',
]
],
@@ -500,35 +500,35 @@ return [
'description' => '书库首页URL 模板2',
'sfg_id' => 109,
'arrSubjectFomart' => [
- '/books/all',
+ '/books/index',
]
],
'CATEGORY_INDEX_URL_T3' => [
'description' => '书库首页URL 模板3',
'sfg_id' => 110,
'arrSubjectFomart' => [
- '/library/all',
+ '/library/index',
]
],
'CATEGORY_INDEX_URL_T4' => [
'description' => '书库首页URL 模板4',
'sfg_id' => 111,
'arrSubjectFomart' => [
- '/fenlei/all',
+ '/fenlei/index',
]
],
'CATEGORY_INDEX_URL_T5' => [
'description' => '书库首页URL 模板5',
'sfg_id' => 112,
'arrSubjectFomart' => [
- '/class/all',
+ '/class/index',
]
],
'CATEGORY_INDEX_URL_T6' => [
'description' => '书库首页URL 模板6',
'sfg_id' => 113,
'arrSubjectFomart' => [
- '/category/all',
+ '/category/index',
]
],
diff --git a/code/public/template/default/h5/css/style.css b/code/public/template/default/h5/css/style.css
index 7a0356a..7008815 100644
--- a/code/public/template/default/h5/css/style.css
+++ b/code/public/template/default/h5/css/style.css
@@ -98,7 +98,7 @@ c{clear: both;display: none;}
.sortChannelG_nav a.on{color:#ff77a5;}
.sortChannelP_nav a.on{color:#67c3a6;}
-.sortChannel_nav{padding-left:80px;border-bottom: 1px solid #FBFBFB;}
+.sortChannel_nav{padding-left:110px;border-bottom: 1px solid #FBFBFB;}
.sortChannel_nav a.on{color:#C3C3C3}
.sortChannel_nav a.on2{left:45px;color:#03a9f4;}
@@ -180,7 +180,7 @@ c{clear: both;display: none;}
.novel_info .btn-group-cell>.btn-normal.abt3{background: #4CAF50;}
.chapter-list li{border-bottom:1px solid #efefef;padding:10px 0px 10px 10px;}
.chapter-list li a{display:block;font-size:14px;}
-.chapter-list span{background:url(list.png) no-repeat scroll 0 0 transparent;display:block;float:right;height:20px;margin-right:10px;margin-top:2px;width:14px;font-family:"宋体"}
+.chapter-list span{display:block;float:right;height:20px;margin-right:10px;margin-top:2px;width:14px;font-family:"宋体"}
/* 章节页 */
.set{width:100%;height:32px;padding:10px 0px 0px 0px;font-size:12px;clear:both;overflow:hidden;background:#ecf0f0;}
@@ -278,7 +278,8 @@ color: #004d00;border-radius:5px;transition: all 0.3s;}
.sort_page_num>a{padding:5px 10px; background: #4ab2e6;margin: 5px;color: #fff;display: inline-block;}
.sort_page_num>a.prev_off{background:#eee;}
.sort_page_num>a:hover,.sort_page_num>a.page_on{background: #3F51B5;}
-
+.novel_search_page h1{font-size: 1rem;text-align: center;margin-bottom: 1rem;}
+.novel_search_page h1 span{color:red;}
diff --git a/code/public/template/default/js/common.js b/code/public/template/default/js/common.js
index d67ea75..a2d7453 100644
--- a/code/public/template/default/js/common.js
+++ b/code/public/template/default/js/common.js
@@ -150,32 +150,39 @@ function incShouCangFun(intId){
}
}
+const strBookshelfKey = window.location.hostname + 'strBookshelfKey';
+
// 加入书架
-function addShujiaFun(NovelInfo){
+function addBookshelfFun(NovelInfo) {
+
+ if (!NovelInfo) {
+ NovelInfo = arrNovel
+ }
+
+ let arrBookshelf = JSON.parse(localStorage.getItem(strBookshelfKey)) || [];
- // 获取当前书架数据
- let arrShujia = JSON.parse(localStorage.getItem('shujiakey')) || [];
- console.log(arrShujia)
// 检查书籍是否已存在
- const exists = arrShujia.some(item => item.xsxq_id === NovelInfo.xsxq_id);
- if (exists) {
- layerPopup('该书已在书架中!',3)
- return;
+ const index = arrBookshelf.findIndex(item => item.n_id === NovelInfo.n_id);
+
+ if (index !== -1) {
+ // 如果存在,更新该书籍的信息
+ arrBookshelf[index] = { ...arrBookshelf[index], ...NovelInfo };
+ layerPopup('已存在书架中!', 3)
+ } else {
+ // 如果不存在,添加到历史记录
+ arrBookshelf.push(NovelInfo);
+ layerPopup('已成功加入书架!', 3)
}
- // 添加到书架
- arrShujia.push(NovelInfo);
-
// 更新本地存储
- localStorage.setItem('shujiakey', JSON.stringify(arrShujia));
+ localStorage.setItem(strBookshelfKey, JSON.stringify(arrBookshelf));
- layerPopup('已成功加入书架!',3)
}
function displayShujia() {
// 获取书架数据
- const shujia = JSON.parse(localStorage.getItem('shujiakey')) || [];
+ const shujia = JSON.parse(localStorage.getItem(strBookshelfKey)) || [];
if (shujia.length === 0) {
console.log('书架为空');
diff --git a/code/public/template/default/pc/css/style.css b/code/public/template/default/pc/css/style.css
index 06e1c0e..2cebf3d 100644
--- a/code/public/template/default/pc/css/style.css
+++ b/code/public/template/default/pc/css/style.css
@@ -1009,7 +1009,7 @@ body {
}
.detail-box .imgbox .flag,.topbar-addfavorite,.topbar-login .btn-submit,.topbar-sethome {
- background: url("all.gif") no-repeat scroll 0 0 transparent
+ /* background: url("all.gif") no-repeat scroll 0 0 transparent */
}
.topbar {
@@ -2813,4 +2813,8 @@ body {
margin: 0;
font-size: 12px;
}
- /* page end */
\ No newline at end of file
+ /* page end */
+
+.novel_search_page h1{font-size: 1rem;text-align: center;margin-bottom: 1rem;}
+.novel_search_page .search_tip{font-size: 0.8rem;text-align: center;margin-bottom: 1rem;}
+.novel_search_page h1 span{color:red;}
\ No newline at end of file
diff --git a/code/public/template/kuangyu/public/js/common.js b/code/public/template/kuangyu/public/js/common.js
index b5d5d29..9838461 100644
--- a/code/public/template/kuangyu/public/js/common.js
+++ b/code/public/template/kuangyu/public/js/common.js
@@ -150,6 +150,8 @@ function incShouCangFun(intId) {
}
}
+const strBookshelfKey = window.location.hostname + 'strBookshelfKey';
+
// 加入书架 addShuJiaFun
function addBookshelfFun(NovelInfo) {
@@ -157,8 +159,8 @@ function addBookshelfFun(NovelInfo) {
NovelInfo = arrNovel
}
- let arrBookshelf = JSON.parse(localStorage.getItem('strBookshelfKey')) || [];
- console.log(arrBookshelf)
+ let arrBookshelf = JSON.parse(localStorage.getItem(strBookshelfKey)) || [];
+
// 检查书籍是否已存在
const index = arrBookshelf.findIndex(item => item.n_id === NovelInfo.n_id);
@@ -173,15 +175,14 @@ function addBookshelfFun(NovelInfo) {
}
// 更新本地存储
- localStorage.setItem('strBookshelfKey', JSON.stringify(arrBookshelf));
+ localStorage.setItem(strBookshelfKey, JSON.stringify(arrBookshelf));
}
// 删除书架
function delBookshelfFun(intNId) {
// 获取书架数据
- const arrHistory = JSON.parse(localStorage.getItem('strBookshelfKey')) || [];
- console.log(arrHistory)
+ const arrHistory = JSON.parse(localStorage.getItem(strBookshelfKey)) || [];
// 检查 arrHistory 是否为数组且不为空
if (Array.isArray(arrHistory) && arrHistory.length > 0) {
@@ -208,7 +209,7 @@ function delBookshelfFun(intNId) {
function displayBookshelf() {
// 获取书架数据
- const arrBookshelf = JSON.parse(localStorage.getItem('strBookshelfKey')) || [];
+ const arrBookshelf = JSON.parse(localStorage.getItem(strBookshelfKey)) || [];
if (arrBookshelf.length === 0) {
console.log('书架为空');