PC 端 页面 head

This commit is contained in:
make
2025-04-06 15:31:29 +08:00
parent 57fad274d2
commit cf685cd7b4
20 changed files with 418 additions and 514 deletions

View File

@@ -62,7 +62,8 @@ abstract class BaseController
*/
protected function initialize()
{
// TODO 因为视图无法渲染 request 暂时使用这个
View::assign("DomainModel", $this->request->DomainModel);
$this->initSiteTKD();
}

View File

@@ -379,7 +379,6 @@ class Novel extends BaseController
// 分品拼音
$arrNovel['category_pinyin'] = CategoryModel::getPinYinByZh($arrNovel['og_novel_category']);
// 最后章节
$ChapterModel = new ChapterModel;
$arrLatestChapter = $ChapterModel->getLatestChapter($intNId);
@@ -431,11 +430,16 @@ class Novel extends BaseController
$strKeywords = ConverterMovel::convert($strKeywordsTemplate);
$strDescription = ConverterMovel::convert($strDescriptionTemplate);
// js使用到
$arrNovelJs = $arrNovel;
unset($arrNovelJs['n_related_novel'], $arrNovelJs['n_forge_novel'], $arrNovelJs['n_page_description']);
View::assign([
'arrRelateveNovel' => $arrRelateveNovel,
'arrNovel' => $arrNovel,
'arrNovelJs' => $arrNovelJs,
'arrChapter' => $arrChapter,
'arrLatestChapter' => $arrLatestChapter,
'arrNovelClicks' => $arrNovelClicks,
'strFocus' => $strFocus,
'strPageCode' => 'boy',
@@ -444,10 +448,11 @@ class Novel extends BaseController
'strDescription' => $strDescription,
]);
if ($boolIsMobile) {
return View::fetch();
return View::fetch('getNovelInfo');
} else {
return View::fetch('pc/getKanNovelInfo');
return View::fetch('pc/getNovelInfo');
}
}
@@ -526,6 +531,7 @@ class Novel extends BaseController
'arrRelateveNovel' => $arrRelateveNovel,
'arrNovel' => $arrNovel,
'arrChapter' => $arrChapter,
'arrLatestChapter' => $arrLatestChapter,
'arrNovelClicks' => $arrNovelClicks,
'strFocus' => $strFocus,
'strPageCode' => 'boy',

View File

@@ -10,14 +10,15 @@
<meta property="og:type" content="article" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
}
</script>
{
"@context": "{$DomainModel->d_domain}",
"@type": "book",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
{block name="head-js"}{/block}

View File

@@ -10,14 +10,15 @@
<meta property="og:type" content="article" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
}
</script>
{
"@context": "{$DomainModel->d_domain}",
"@type": "book",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
{block name="head-js"}{/block}

View File

@@ -4,23 +4,62 @@
{block name="description"}{$strDescription??''}{/block}
{block name="head"}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<meta property="og:title" content="{$arrNovel['og_novel_book_name']??'未知小说'}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' />
<meta property="og:type" content="novel" />
<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.og_novel_category ?? ''}">
<meta property="og:novel:author" content="{$arrNovel.og_novel_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.og_novel_book_name ?? ''}">
<meta property="og:novel:read_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1">
<meta property="og:novel:status" content="{$arrNovel.og_novel_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.og_novel_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrLatestChapter.name ?? ''}">
<meta property="og:novel:latest_chapter_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrLatestChapter.c_sort_num ?? 1}">
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['og_novel_book_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"@context": '{$DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"@type": "Book",
"name": "{$arrNovel['og_novel_book_name'] ?? '未知小说'}",
"description": "{$arrNovel['n_page_description'] ??'暂无简介'}",
"author": {
"@type": "Person",
"name": "{$arrNovel['og_novel_author'] ??'佚名'}"
},
"publisher": {
"@type": "Organization",
"name": "{$DomainModel->d_name}",
"url": "https://{$DomainModel->d_domain}"
},
"datePublished": "{$arrNovel['og_novel_update_time'] ?? time()}",
"image": "{$Novel.n_cover_path ?? ''}",
"url": '{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"genre": "{$arrNovel.og_novel_category ??''}",
"inLanguage": "zh-CN",
"bookFormat": "https://{$DomainModel->d_domain}/EBook",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "100",
},
}
</script>
{/block}
{block name="head-js"}{/block}
{block name="head-css"}
<link rel="canonical" href='{Request->DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
<link rel="canonical"
href='{$DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
{/block}
{block name="main"}
@@ -40,7 +79,7 @@
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' itemprop="item">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' itemprop="item">
<span itemprop="name">{$arrNovel['og_novel_book_name']}</span>
</a>
<meta itemprop="position" content="3" />
@@ -51,10 +90,11 @@
<div class="info">
<div class="info_box">
<div class="info_L">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' title="{$arrNovel['og_novel_book_name']}" class="book_cov">
<img src="/static/img/default.jpg" data-src="{$Novel.n_cover_path ?? ''}" alt="{$Novel->og_novel_book_name ?? ''}封面"
class="lazyload_book_cover lazyload-img">
<i class="serial">{$arrNovel.og_novel_status ?? ''}</i>
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'
title="{$arrNovel['og_novel_book_name']}" class="book_cov">
<img src="/static/img/default.jpg" data-src="{$Novel.n_cover_path ?? ''}"
alt="{$Novel->og_novel_book_name ?? ''}封面" class="lazyload_book_cover lazyload-img">
<i class="serial">{$arrNovel.og_novel_status ?? ''}</i>
</a>
<div class="btn">
<a href="javascript:;" class="sc" onclick="addBookshelfFun()">
@@ -66,7 +106,9 @@
</div>
<div class="info_C book_inf">
<div class="c01">
<h3><a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' >{$arrNovel['og_novel_book_name']}</a></h3>
<h3><a
href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>{$arrNovel['og_novel_book_name']}</a>
</h3>
<!-- <span id="mod_book_star">0分</span> -->
</div>
<p class="c02">
@@ -76,7 +118,7 @@
<div class="c03">
<p class="jianjie">简介</p>
<div class="c03_box">
<p class="jj_con" id="book_desc" >
<p class="jj_con" id="book_desc">
{$arrNovel.n_page_description}</p>
<span class="zk_btn" style="">展开<s></s></span>
<span class="sq_btn" style="display: none;">收起<s></s></span>
@@ -85,15 +127,15 @@
<div class="c03 c03-jjyd">
<p class="jianjie">最新要点</p>
<div class="c03_box">
<p class="jj_con" id="book_desc2" >
<p class="jj_con" id="book_desc2">
{$strFocus}</p>
<span class="zk_btn" style="">展开<s></s></span>
<span class="sq_btn" style="display: none;">收起<s></s></span>
</div>
</div>
<div class="c04">
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1" class="read">立即阅读</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/mulu/zheng" class="mulu">目录</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1" class="read">立即阅读</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/mulu/zheng" class="mulu">目录</a>
</div>
<!-- <div class="c05">
<p class="c05_t">作品标签:
@@ -108,10 +150,9 @@
<div class="inf02">
<h4>小说信息</h4>
<p>类别:
<a href='/pc/shuku/all/{$arrNovel.category_pinyin}/all/page1'
title="{$arrNovel.og_novel_category}" >
{$arrNovel.og_novel_category}
</a>
<a href='/pc/shuku/all/{$arrNovel.category_pinyin}/all/page1' title="{$arrNovel.og_novel_category}">
{$arrNovel.og_novel_category}
</a>
</p>
<!-- <p>总字数54.20万+</p> -->
<p>总点击量:{$arrNovelClicks.total}</p>
@@ -133,7 +174,8 @@
<div class="zj_con">
{volist name="arrChapter" id="Chapter" key="key"}
<p>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$Chapter.n_id}/zhang-{$Chapter.c_sort_num}" class="zj">{$Chapter.name}</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$Chapter.n_id}/zhang-{$Chapter.c_sort_num}"
class="zj">{$Chapter.name}</a>
<span class="time">{$Chapter.created_at}</span>
<!-- <span class="time">3天前</span>-->
</p>
@@ -147,7 +189,8 @@
<div class="pl_con">
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
<!-- n_forge_id -->
<a href='/pc/kan/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}-{$ForgeNovel.n_forge_id}' class="red">{$ForgeNovel.n_forge_title}</a>
<a href='/pc/kan/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}-{$ForgeNovel.n_forge_id}'
class="red">{$ForgeNovel.n_forge_title}</a>
{/volist}
</div>
@@ -158,28 +201,28 @@
<h4><s></s>精品推荐</h4>
<ul class="info2_C">
{volist name="arrRelateveNovel" id="Novel" key="key"}
<li>
<h3>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="{$Novel['og_novel_book_name'] ?? ''}" >
{$Novel['og_novel_book_name'] ?? ''}
</a>
</h3>
<div>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="$Novel['og_novel_book_name'] ?? ''}" class="book_cov">
<img src="/template/kuangyu/home/bai_web/images/default.png"
data-src="{$Novel['n_cover_path'] ?? ''}"
class="lazyload_book_cover lazyload-img" alt="{$Novel['og_novel_book_name'] ?? ''}">
</a>
<div class="book_inf">
<span class="aut">{$Novel['og_novel_author'] ?? ''}</span>
<span class="tag"><a href="/" >{$Novel['og_novel_category'] ?? ''}</a></span>
<p class="int">
{$Novel['n_page_description'] ?? ''}</p>
</div>
<li>
<h3>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="{$Novel['og_novel_book_name'] ?? ''}">
{$Novel['og_novel_book_name'] ?? ''}
</a>
</h3>
<div>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="$Novel['og_novel_book_name'] ?? ''}" class="book_cov">
<img src="/template/kuangyu/home/bai_web/images/default.png"
data-src="{$Novel['n_cover_path'] ?? ''}" class="lazyload_book_cover lazyload-img"
alt="{$Novel['og_novel_book_name'] ?? ''}">
</a>
<div class="book_inf">
<span class="aut">{$Novel['og_novel_author'] ?? ''}</span>
<span class="tag"><a href="/">{$Novel['og_novel_category'] ?? ''}</a></span>
<p class="int">
{$Novel['n_page_description'] ?? ''}</p>
</div>
</li>
</div>
</li>
{/volist}
</ul>

View File

@@ -6,22 +6,23 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<meta property="og:url" content="{$DomainModel->d_domain}" />
<meta property="og:type" content="book" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
}
</script>
{
"@context": "{$DomainModel->d_domain}",
"@type": "book",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
{block name="head-js"}{/block}
{block name="head-css"}
<link rel="canonical" href="{Request->DomainModel->d_domain}/shuku/all">
<link rel="canonical" href="{$DomainModel->d_domain}/shuku/all">
{/block}

View File

@@ -6,25 +6,25 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<meta property="og:url" content="{$DomainModel->d_domain}" />
<meta property="og:type" content="book" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"@context": "{$DomainModel->d_domain}",
"@type": "book",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
{block name="head-css"}
{eq name="strPageCode" value="boys"}
<link rel="canonical" href="{Request->DomainModel->d_domain}/nansheng-xiaoshuo">
<link rel="canonical" href="{$DomainModel->d_domain}/nansheng-xiaoshuo">
{else}
<link rel="canonical" href="{Request->DomainModel->d_domain}/nvsheng-xiaoshuo">
<link rel="canonical" href="{$DomainModel->d_domain}/nvsheng-xiaoshuo">
{/eq}
{/block}

View File

@@ -2,57 +2,74 @@
<head>
<meta charset="utf-8">
<meta name="robots" content="index, follow" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="robots" content="index, follow" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="keywords" content="{$strKeywords??''}">
<meta name="description" content="{$strDescription??''}">
<title>{$strTitle??''}</title>
<meta name="description" content="{$strDescription??''}">
<title>{$strTitle??''}</title>
<link rel="icon" href="/template/kuangyu/public/img/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="/template/kuangyu/reader/web/css/style.css" type="text/css">
<link rel="stylesheet" href="/public/layer/need/layer.css" type="text/css">
{block name="head-css"}
<link rel="canonical" href='{Request->DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrChapter.c_sort_num ?? 1}'>
<link rel="canonical"
href='{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrChapter.c_sort_num ?? 1}'>
{/block}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<meta property="og:image" content="https://example.com/{$imagePath??'default.jpg'}" />
<meta property="og:site_name" content="我的小说站" />
<meta property="og:title" content="{$arrNovel['og_novel_book_name']??'未知小说'}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' />
<meta property="og:type" content="novel" />
<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.og_novel_category ?? ''}">
<meta property="og:novel:author" content="{$arrNovel.og_novel_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.og_novel_book_name ?? ''}">
<meta property="og:novel:read_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrChapter.n_id}/zhang-1">
<meta property="og:novel:status" content="{$arrNovel.og_novel_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.og_novel_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrChapter.name}">
<meta property="og:novel:latest_chapter_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrChapter.n_id}/zhang-{$arrChapter.c_sort_num}">
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['og_novel_book_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"@context": "{$DomainModel->d_domain}",
"@type": "book",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05T00:00:00Z",
"datePublished": "{$arrNovel.og_novel_update_time ?? ''}",
"author": {
"@type": "Person",
"name": "{$authorName??'佚名'}"
"name": "{$arrNovel['og_novel_author'] ??'佚名'}"
},
"publisher": {
"@type": "Organization",
"name": "我的小说站",
"url": "{Request->DomainModel->d_domain}"
"name": "{$DomainModel->d_name}",
"url": "{$DomainModel->d_domain}"
},
"image": "https://example.com/{$imagePath??'default.jpg'}",
"image": "{$Novel.n_cover_path ?? ''}",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "{Request->DomainModel->d_domain}/chapter/{$chapterId??''}"
"@id": "{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrChapter.c_sort_num ?? 1}"
}
"isPartOf": {
"@type": "Book",
"name": "《仙途漫漫》",
"url": "https://example.com/book/123"
"name": "《{$arrNovel['og_novel_book_name'] ?? '未知小说'}》",
"url": '{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'
}
}
</script>
</head>
<body class="theme-0 w800" data-bid='/pc/xiaoshuo/name-1' >
<body class="theme-0 w800" data-bid='/pc/xiaoshuo/name-1'>
<div class="wrap">
<div class="read-header" id="readHeader">
<div class="wrap-center cf">
@@ -68,32 +85,8 @@
<cite>最近阅读</cite>
<div class="dropdown last-read" id="j_nearList">
<dl>
<!-- <dd>
<div class="book-wrap cf">
<div class="book-cover fl">
<a class="link" href='/pc/xiaoshuo/name-1' >
<img src="https://www.630zw.org/img/176943.jpg"
alt="捻转步舞曲[花滑]"></a>
</div>
<div class="book-info fl">
<h4>
<a href='/pc/xiaoshuo/name-1' >捻转步舞曲[花滑]</a>
</h4>
<p>
<span>分类:</span>
<a href='/pc/shuku/nansheng-dushixiuxian-wanjie-1'>武侠仙侠</a>
</p>
<p>
<span>最新章节:</span>
<a class="blue" href='/pc/xiaoshuo/name-1/zhang-1'>432 番外三</a>
<a class="red" href='/pc/xiaoshuo/name-1/zhang-1'>继续阅读</a>
</p>
</div>
</div>
</dd> -->
</dl>
<a class="all" href='/pc/history' >
<a class="all" href='/pc/history'>
查看全部<em class="iconfont"></em>
</a>
</div>
@@ -102,26 +95,26 @@
<cite>快速导航</cite>
<div class="dropdown type-list">
<div class="type-box">
<h3><a href="/pc/" >首页</a></h3>
<h3><a href="/pc/">首页</a></h3>
</div>
<div class="type-box">
<h3><a href='/pc/shuku/nansheng-xiaoshuo/all/all/page1' >男生</a></h3>
<h3><a href='/pc/shuku/nansheng-xiaoshuo/all/all/page1'>男生</a></h3>
{foreach $arrCategoryAll.man as $key=>$vo }
<a href="/pc/shuku/nansheng-xiaoshuo/{$key}/all/page1" >{$vo}</a>
<a href="/pc/shuku/nansheng-xiaoshuo/{$key}/all/page1">{$vo}</a>
{/foreach}
</div>
<div class="type-box">
<h3><a href="/pc/shuku/nvsheng-xiaoshuo/{$key}/all/page1" >女生</a></h3>
<h3><a href="/pc/shuku/nvsheng-xiaoshuo/{$key}/all/page1">女生</a></h3>
{foreach $arrCategoryAll.women as $key=>$vo }
<a href="/pc/shuku/nvsheng-xiaoshuo/{$key}/all/page1" >{$vo}</a>
<a href="/pc/shuku/nvsheng-xiaoshuo/{$key}/all/page1">{$vo}</a>
{/foreach}
</div>
<div class="type-box">
<h3><a href="/pc/shuku/all" >书库</a></h3>
<h3><a href="/pc/shuku/all">书库</a></h3>
</div>
<div class="type-box">
<h3><a href="/pc/paihang/all" >排行</a></h3>
<h3><a href="/pc/paihang/all">排行</a></h3>
</div>
<!-- <div class="type-box">
<h3><a href="/pc/seo.html" >文章</a></h3>
@@ -133,7 +126,7 @@
<div class="read-login fr">
<ul>
<li id="min-search">
<form action="/pc/search.html" method="get" >
<form action="/pc/search.html" method="get">
<input class="submit-input" type="submit" id="searchSubmit">
<input id="pin-input" class="pin-input hide" name="keyword" type="text" placeholder="">
<label id="pin-search" for="searchSubmit">
@@ -157,19 +150,21 @@
</div>
</div>
<div class="crumbs-nav">
<a href="/pc/" >首页</a>
<a href="/pc/">首页</a>
<em class="iconfont"></em>
{if $arrNovel.category_sex == 'man'}
<a href='/pc/shuku/nansheng-xiaoshuo/all/all/page1' >男生</a>
<em class="iconfont"></em>
<a href='/pc/shuku/nansheng-xiaoshuo/{$arrNovel.category_pinyin}/all/page1' >{$arrNovel.og_novel_category}</a>
<a href='/pc/shuku/nansheng-xiaoshuo/all/all/page1'>男生</a>
<em class="iconfont"></em>
<a
href='/pc/shuku/nansheng-xiaoshuo/{$arrNovel.category_pinyin}/all/page1'>{$arrNovel.og_novel_category}</a>
{else}
<a href='/pc/shuku/nvsheng-xiaoshuo/all/all/page1' >女生</a>
<em class="iconfont"></em>
<a href='/pc/shuku/nvsheng-xiaoshuo/{$arrNovel.category_pinyin}/all/page1' >{$arrNovel.og_novel_category}</a>
<a href='/pc/shuku/nvsheng-xiaoshuo/all/all/page1'>女生</a>
<em class="iconfont"></em>
<a href='/pc/shuku/nvsheng-xiaoshuo/{$arrNovel.category_pinyin}/all/page1'>{$arrNovel.og_novel_category}</a>
{/if}
<em class="iconfont"></em>
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' >{$arrNovel.og_novel_book_name}</a>
<a
href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>{$arrNovel.og_novel_book_name}</a>
</div>
<div class="read-main-wrap font-family01" style="font-size:18px" id="j_readMainWrap">
<div id="j_chapterBox">
@@ -181,11 +176,13 @@
<h3 class="j_chapterName">{$arrChapter.name ?? ''}</h3>
<div class="text-info cf">
<div class="info fl">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' > <em class="iconfont"></em> {$arrNovel.og_novel_book_name}</a>
<a href="javascript:"
> <em class="iconfont"></em> {$arrNovel.og_novel_author}</a>
<a
href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
<em class="iconfont"></em> {$arrNovel.og_novel_book_name}</a>
<a href="javascript:"> <em class="iconfont"></em> {$arrNovel.og_novel_author}</a>
<i><em class="iconfont"></em><span class="j_chapterWordCut">2000</span></i>
<i><em class="iconfont"></em><span class="j_updateTime">{$arrChapter.created_at ?? ''}</span></i>
<i><em class="iconfont"></em><span class="j_updateTime">{$arrChapter.created_at ??
''}</span></i>
</div>
</div>
</div>
@@ -196,14 +193,7 @@
</div>
</div>
</div>
<!-- start 顶部广告 -->
<!-- <div id="page-ops" class="page-ops">
<a href="#" >
<img src="">
<span class="op-tag"></span>
</a>
</div> -->
<!-- end 顶部广告 -->
</div>
<div class="la-ball-pulse j_chapterLoad hidden" style="display: none;">
<span></span>
@@ -214,11 +204,13 @@
{if $arrChapter && $arrChapter.c_sort_num && $arrChapter.c_sort_num == 1}
<a id="j_chapterPrev" href="javascript:void(0);">上一章</a>
{else}
<a id="j_chapterPrev" href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrPreChapter.c_sort_num ?? 1}">上一章</a>
<a id="j_chapterPrev"
href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrPreChapter.c_sort_num ?? 1}">上一章</a>
{/if}
<span>|</span>
{if $arrNextChapter && $arrNextChapter.c_sort_num}
<a id="j_chapterNext" href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrNextChapter.c_sort_num ?? 1}">下一章</a>
<a id="j_chapterNext"
href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrNextChapter.c_sort_num ?? 1}">下一章</a>
{/if}
</div>
</div>
@@ -236,61 +228,18 @@
<i><em class="iconfont"></em><span>设置</span></i>
</a>
</dd>
<!-- <dd id="j_phoneRead">
<a href="javascript:">
<i><em class="iconfont"></em><span>手机</span></i>
</a>
</dd> -->
<dd>
<a class="add-book" href="javascript:" onclick="addBookshelfFun()">
<i><em class="iconfont"></em><span>书架</span></i>
</a>
</dd>
<dd>
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' >
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
<i><em class="iconfont"></em><span>详情</span></i>
</a>
</dd>
</dl>
<!-- start 手机阅读面板浮层 -->
<!-- <div class="panel-wrap cellphone" id="j_cellphone" style="display: none;">
<a class="iconfont close-panel" href="javascript:"></a>
<div class="panel-box">
<h4 class="lang">手机阅读</h4>
<div class="qr-code-wrap">
<h5>手机扫码阅读</h5>
<div id="code"></div>
<div class="scan-bottom cf">
<div class="tip">
<p>使用<a href="#" class="red">手机</a>扫码阅读</p>
</div>
</div>
</div>
</div>
</div> -->
<!-- end 手机阅读面板浮层 -->
<!-- start 目录面板浮层 -->
<!-- <div class="panel-wrap catalog" id="j_catalog" style="display: none;">
<a class="iconfont close-panel" href="javascript:"></a>
<div class="panel-box">
<div class="catalog-tab dib-wrap" id="j_catalogTab">
<span class="lang act">目录</span>
</div>
<div id="j_catalogTabWrap">
<div class="panel-list-wrap catalog-scroll-wrap" id="j_catalogListWrap"
style="max-height: 695px;">
<div class="catalog-list-wrap">
<div class="volume-list">
<ul>
</ul>
</div>
</div>
</div>
</div>
</div>
</div> -->
<!-- end 目录面板浮层 -->
<!-- start 设置面板浮层 -->
<div class="panel-wrap setting" id="j_setting" style="display: none;">
<a class="iconfont close-panel setting-close" href="javascript:"></a>
@@ -378,30 +327,6 @@
</div>
<div class="right-bar-list" id="j_rightBarList" style="bottom: 120px;">
<dl>
<!-- <dd id="navReward" data-showtype="3" data-aid="qd_R87">
<a href="javascript:">
<i>
<em class="iconfont"></em>
<span>打赏</span>
</i>
</a>
</dd>
<dd id="navTicket" data-showtype="2" data-aid="qd_R88">
<a href="javascript:">
<i>
<em class="iconfont"></em>
<span>投票</span>
</i>
</a>
</dd>
<dd id="j_discussHref">
<a href="//forum.qidian.com/NewForum/List.aspx?forumId=1010981643" >
<i>
<em class="iconfont"></em>
<span>评论</span>
</i>
</a>
</dd> -->
<dd class="go-top" id="j_goTop" title="返回顶部" style="display: none;">
<a href="javascript:">
<i>
@@ -415,37 +340,43 @@
</div>
<script src="/public/jquery/jquery-3.7.1.min.js"></script>
<!-- <script type="text/javascript" src="/template/kuangyu/reader/web/js/jquery.qrcode.min.js"></script> -->
<script>
<?php
unset($arrNovel['n_related_novel'], $arrNovel['n_forge_novel'],$arrNovel['n_page_description']); // 直接删除
?>
const strPushApi = `{site:cfg code="PUSH_API_DOMAIN" encode="false"/}`;
</script>
<script>
const strNovelId = `{$arrNovel.n_id}`;
const arrNovel = `<?php echo json_encode($arrNovel); ?>`;
const strChapterSort =`{$arrChapter.c_sort_num}`;
const strChapterName = `{$arrChapter.name}`;
const arrNovel = {
'n_id' : `{$arrNovel['n_id']}`,
'og_novel_pin_yin' : `{$arrNovel['og_novel_pin_yin']}`,
'n_cover_path' : `{$arrNovel['n_cover_path']}`,
'og_novel_book_name' : `{$arrNovel['og_novel_book_name']}`,
'og_novel_author' : `{$arrNovel['og_novel_author']}`,
'og_novel_status' : `{$arrNovel['og_novel_status']}`,
'c_sort_num' : `{$arrChapter.c_sort_num}`,
'c_name' : `{$arrChapter.name}`,
};
</script>
<script type="text/javascript">
var book = {};
book.Info = {
"Id": 332,
"Name": '我真是一条龙',
"authorName": '兔子很淡定'
"Id": `{$arrNovel['n_id']}`,
"Name": `{$arrNovel['og_novel_book_name']}`,
"authorName": `{$arrNovel['og_novel_author']}`
};
book.chapter = {
//页面进入加载的章节id
id: '4b2d5aab58d71',
id: '{$arrPreChapter.c_sort_num ?? 1}',
//章节源id
source_id: 12538,
source_id: '{$arrPreChapter.c_sort_num ?? 1}',
//章节vip标识
vipStatus: 0,
//上一章id
prevId: '-1',
prevId: '{$arrPreChapter.c_sort_num ?? 1}',
//下一章id
nextId: '486ef2abee55d'
nextId: '{$arrNextChapter.c_sort_num ?? 1}'
};
book.chapterUrl = '/book/12538/chapterId.html';
book.chapterUrl = '/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrPreChapter.c_sort_num ?? 1}';
book.nextChapterVip = 0;
</script>
<script type="text/javascript" src="/template/kuangyu/reader/web/js/global.js"></script>

View File

@@ -4,22 +4,59 @@
{block name="description"}{$strDescription??''}{/block}
{block name="head"}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<meta property="og:title" content="{$arrNovel['og_novel_book_name']??'未知小说'}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' />
<meta property="og:type" content="novel" />
<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.og_novel_category ?? ''}">
<meta property="og:novel:author" content="{$arrNovel.og_novel_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.og_novel_book_name ?? ''}">
<meta property="og:novel:read_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrLatestChapter.n_id}/zhang-1">
<meta property="og:novel:status" content="{$arrNovel.og_novel_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.og_novel_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrLatestChapter.name}">
<meta property="og:novel:latest_chapter_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrLatestChapter.n_id}/zhang-{$arrLatestChapter.c_sort_num}">
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['og_novel_book_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"@context": '{$DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"@type": "Book",
"name": "{$arrNovel['og_novel_book_name'] ?? '未知小说'}",
"description": "{$arrNovel['n_page_description'] ??'暂无简介'}",
"author": {
"@type": "Person",
"name": "{$arrNovel['og_novel_author'] ??'佚名'}"
},
"publisher": {
"@type": "Organization",
"name": "{$DomainModel->d_name}",
"url": "https://{$DomainModel->d_domain}"
},
"datePublished": "{$arrNovel['og_novel_update_time'] ?? time()}",
"image": "{$Novel.n_cover_path ?? ''}",
"url": '{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"genre": "{$arrNovel.og_novel_category ??''}",
"inLanguage": "zh-CN",
"bookFormat": "https://{$DomainModel->d_domain}/EBook",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "100",
},
}
</script>
{block name="head-css"}
<link rel="canonical" href='{Request->DomainModel->d_domain}/xiaoshuo/$arrNovel.og_novel_pin_yin-$arrNovel.n_id/mulu/zheng" /}'>
<link rel="canonical" href='https://{$DomainModel->d_domain}/xiaoshuo/$arrNovel.og_novel_pin_yin-$arrNovel.n_id/mulu/zheng" /}'>
{/block}
{block name="head-js"}{/block}

View File

@@ -6,19 +6,30 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$arrNovel['og_novel_book_name']??'未知小说'}" />
<meta property="og:description" content="{$strDescription??'暂无简介'}" />
<meta property="og:url" content='{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' />
<meta property="og:type" content="book" />
<meta property="og:image" content="https://example.com/images/{$Novel.n_cover_path ?? ''}" />
<meta property="og:site_name" content="我的小说站" />
<meta property="og:url"
content='https://{$DomainModel->d_domain}{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' />
<meta property="og:type" content="novel" />
<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.og_novel_category ?? ''}">
<meta property="og:novel:author" content="{$arrNovel.og_novel_author ?? ''}">
<meta property="og:novel:book_name" content="{$arrNovel.og_novel_book_name ?? ''}">
<meta property="og:novel:read_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1">
<meta property="og:novel:status" content="{$arrNovel.og_novel_status ?? ''}">
<meta property="og:novel:update_time" content="{$arrNovel.og_novel_update_time ?? ''}">
<meta property="og:novel:latest_chapter_name" content="{$arrLatestChapter.name ?? ''}">
<meta property="og:novel:latest_chapter_url"
content="https://{$DomainModel->d_domain}/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-{$arrLatestChapter.c_sort_num ?? 1}">
<!-- 可选:支持 Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="{$arrNovel['og_novel_book_name'] ?? '未知小说'}" />
<meta name="twitter:description" content="{$strDescription ?? '暂无简介'}" />
<meta name="twitter:image" content="https://example.com/images/{$Novel.n_cover_path ?? ''}" />
<meta name="twitter:image" content="{$arrNovel.n_cover_path ?? ''}" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://{Request->DomainModel->d_domain}",
"@context": '{$DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"@type": "Book",
"name": "{$arrNovel['og_novel_book_name'] ?? '未知小说'}",
"description": "{$arrNovel['n_page_description'] ??'暂无简介'}",
@@ -28,15 +39,15 @@
},
"publisher": {
"@type": "Organization",
"name": "我的小说站",
"url": "https://{Request->DomainModel->d_domain}"
"name": "{$DomainModel->d_name}",
"url": "https://{$DomainModel->d_domain}"
},
"datePublished": "{$arrNovel['og_novel_update_time'] ?? time()}",
"image": "{$Novel.n_cover_path ?? ''}",
"url": '{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}',
"genre": "{$arrNovel.og_novel_category ??''}",
"inLanguage": "zh-CN",
"bookFormat": "https://{Request->DomainModel->d_domain}/EBook",
"bookFormat": "https://{$DomainModel->d_domain}/EBook",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
@@ -47,7 +58,8 @@
{/block}
{block name="head-css"}
<link rel="canonical" href='{Request->DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
<link rel="canonical"
href='{$DomainModel->d_domain}/{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>
{/block}
{block name="main"}
@@ -67,7 +79,7 @@
<meta itemprop="position" content="2" />
</li>
<li class="breadcrumb-item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' itemprop="item">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' itemprop="item">
<span itemprop="name">{$arrNovel['og_novel_book_name']}</span>
</a>
<meta itemprop="position" content="3" />
@@ -78,10 +90,11 @@
<div class="info">
<div class="info_box">
<div class="info_L">
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' title="{$arrNovel['og_novel_book_name']}" class="book_cov">
<img src="/static/img/default.jpg" data-src="{$Novel.n_cover_path ?? ''}" alt="{$Novel->og_novel_book_name ?? ''}封面"
class="lazyload_book_cover lazyload-img">
<i class="serial">{$arrNovel.og_novel_status ?? ''}</i>
<a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'
title="{$arrNovel['og_novel_book_name']}" class="book_cov">
<img src="/static/img/default.jpg" data-src="{$Novel.n_cover_path ?? ''}"
alt="{$Novel->og_novel_book_name ?? ''}封面" class="lazyload_book_cover lazyload-img">
<i class="serial">{$arrNovel.og_novel_status ?? ''}</i>
</a>
<div class="btn">
<a href="javascript:;" class="sc" onclick="addBookshelfFun()">
@@ -93,7 +106,9 @@
</div>
<div class="info_C book_inf">
<div class="c01">
<h3><a href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}' >{$arrNovel['og_novel_book_name']}</a></h3>
<h3><a
href='/pc{site:nurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" /}'>{$arrNovel['og_novel_book_name']}</a>
</h3>
<!-- <span id="mod_book_star">0分</span> -->
</div>
<p class="c02">
@@ -103,7 +118,7 @@
<div class="c03">
<p class="jianjie">简介</p>
<div class="c03_box">
<p class="jj_con" id="book_desc" >
<p class="jj_con" id="book_desc">
{$arrNovel.n_page_description}</p>
<span class="zk_btn" style="">展开<s></s></span>
<span class="sq_btn" style="display: none;">收起<s></s></span>
@@ -112,7 +127,7 @@
<div class="c03 c03-jjyd">
<p class="jianjie">最新要点</p>
<div class="c03_box">
<p class="jj_con" id="book_desc2" >
<p class="jj_con" id="book_desc2">
{$strFocus}</p>
<span class="zk_btn" style="">展开<s></s></span>
<span class="sq_btn" style="display: none;">收起<s></s></span>
@@ -120,8 +135,8 @@
</div>
<div class="c04">
{if !empty($arrChapter)}
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1" class="read">立即阅读</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/mulu/zheng" class="mulu">目录</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/zhang-1" class="read">立即阅读</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}/mulu/zheng" class="mulu">目录</a>
{/if}
</div>
<!-- <div class="c05">
@@ -137,10 +152,9 @@
<div class="inf02">
<h4>小说信息</h4>
<p>类别:
<a href='/pc/shuku/all/{$arrNovel.category_pinyin}/all/page1'
title="{$arrNovel.og_novel_category}" >
{$arrNovel.og_novel_category}
</a>
<a href='/pc/shuku/all/{$arrNovel.category_pinyin}/all/page1' title="{$arrNovel.og_novel_category}">
{$arrNovel.og_novel_category}
</a>
</p>
<!-- <p>总字数54.20万+</p> -->
<p>总点击量:{$arrNovelClicks.total}</p>
@@ -162,7 +176,8 @@
<div class="zj_con">
{volist name="arrChapter" id="Chapter" key="key"}
<p>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$Chapter.n_id}/zhang-{$Chapter.c_sort_num}" class="zj">{$Chapter.name}</a>
<a href="/pc/xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$Chapter.n_id}/zhang-{$Chapter.c_sort_num}"
class="zj">{$Chapter.name}</a>
<span class="time">{$Chapter.created_at}</span>
<!-- <span class="time">3天前</span>-->
</p>
@@ -176,7 +191,8 @@
<div class="pl_con">
{volist name="arrNovel.n_forge_novel" id="ForgeNovel" key="key"}
<!-- n_forge_id -->
<a href='/pc/kan-xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}-{$ForgeNovel.n_forge_id}' class="red">{$ForgeNovel.n_forge_title}</a>
<a href='/pc/kan-xiaoshuo/{$arrNovel.og_novel_pin_yin}-{$arrNovel.n_id}-{$ForgeNovel.n_forge_id}'
class="red">{$ForgeNovel.n_forge_title}</a>
{/volist}
</div>
@@ -187,28 +203,28 @@
<h4><s></s>精品推荐</h4>
<ul class="info2_C">
{volist name="arrRelateveNovel" id="Novel" key="key"}
<li>
<h3>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="{$Novel['og_novel_book_name'] ?? ''}" >
{$Novel['og_novel_book_name'] ?? ''}
</a>
</h3>
<div>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="$Novel['og_novel_book_name'] ?? ''}" class="book_cov">
<img src="/template/kuangyu/home/bai_web/images/default.png"
data-src="{$Novel['n_cover_path'] ?? ''}"
class="lazyload_book_cover lazyload-img" alt="{$Novel['og_novel_book_name'] ?? ''}">
</a>
<div class="book_inf">
<span class="aut">{$Novel['og_novel_author'] ?? ''}</span>
<span class="tag"><a href="/" >{$Novel['og_novel_category'] ?? ''}</a></span>
<p class="int">
{$Novel['n_page_description'] ?? ''}</p>
</div>
<li>
<h3>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="{$Novel['og_novel_book_name'] ?? ''}">
{$Novel['og_novel_book_name'] ?? ''}
</a>
</h3>
<div>
<a href='/pc{site:nurl n_id="$Novel[n_id]" n_py="$Novel[og_novel_pin_yin]" /}'
title="$Novel['og_novel_book_name'] ?? ''}" class="book_cov">
<img src="/template/kuangyu/home/bai_web/images/default.png"
data-src="{$Novel['n_cover_path'] ?? ''}" class="lazyload_book_cover lazyload-img"
alt="{$Novel['og_novel_book_name'] ?? ''}">
</a>
<div class="book_inf">
<span class="aut">{$Novel['og_novel_author'] ?? ''}</span>
<span class="tag"><a href="/">{$Novel['og_novel_category'] ?? ''}</a></span>
<p class="int">
{$Novel['n_page_description'] ?? ''}</p>
</div>
</li>
</div>
</li>
{/volist}
</ul>
@@ -217,14 +233,17 @@
</div>
</div>
<script>
<?php
unset($arrNovel['n_related_novel'], $arrNovel['n_forge_novel'],$arrNovel['n_page_description']); // 直接删除
?>
const strNovelId = `{$arrNovel.n_id}`;
const arrNovel = `<?php echo json_encode($arrNovel); ?>`;
const strChapterSort = `1`;
const strChapterName = `第一章`;
const arrNovel = {
'n_id' : `{$arrNovel['n_id']}`,
'og_novel_pin_yin' : `{$arrNovel['og_novel_pin_yin']}`,
'n_cover_path' : `{$arrNovel['n_cover_path']}`,
'og_novel_book_name' : `{$arrNovel['og_novel_book_name']}`,
'og_novel_author' : `{$arrNovel['og_novel_author']}`,
'og_novel_status' : `{$arrNovel['og_novel_status']}`,
'c_sort_num' : 1,
'c_name' : `第一章`,
};
</script>
{/block}

View File

@@ -6,21 +6,21 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:url" content="https://{$DomainModel->d_domain}/paihang/all" />
<meta property="og:type" content="article" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@context": "https://{$DomainModel->d_domain}/paihang/all",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
{block name="head-css"}
<link rel="canonical" href="{Request->DomainModel->d_domain}/paihang/all">
<link rel="canonical" href="https://{$DomainModel->d_domain}/paihang/all">
{/block}
{block name="head-js"}{/block}
{block name='body-class'}body-rank-class{/block}

View File

@@ -6,16 +6,16 @@
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:url" content="https://{$DomainModel->d_domain}/search.html?keyword={$strSearchKeywords}" />
<meta property="og:type" content="article" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@context": "https://{$DomainModel->d_domain}/search.html?keyword={$strSearchKeywords}",
"@type": "NewsArticle",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"datePublished": "{:date('Y-m-d')}"
}
</script>
{block name="head-js"}{/block}
@@ -23,22 +23,13 @@
{block name="main"}
<div class="content">
<!--选择搜索 开始-->
<div class="find">
<div class="fi_t">
<div class="result search_tip">搜索<span style="color:red">“{$strSearchKeywords}”</span>相关结果共有 <span style="color:red">{$arrPage.total}</span> 部小说</div>
<!-- <div class="boFi">
<span>{$strKeywords}<s></s></span>
<input type="text" class="search-val" url="/search.html" name="search_keyword" value="1"
placeholder="我要搜.. " maxlength="100" autocomplete="off">
<a href="javascript:;" btn="search_keyword">搜索</a>
</div> -->
</div>
</div>
<!--选择搜索 结束-->
<!--搜索结果 开始-->
<div class="result" mod="search_data_list">
{if empty($arrPage.data)}
<p style="text-align: center;line-height: 60px">没有相关数据</p>
@@ -83,7 +74,6 @@
</div>
<!--页码切换 结束-->
</div>
<!--选择结果 结束-->
</div>
{/block}

View File

@@ -1,144 +0,0 @@
{extend name="basePcUser" /}
{block name="title"}{$strTitle??''}{/block}
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{block name="head-js"}{/block}
{block name="main"}
<div class="i-right">
<!--bot mod -->
<div class="i-bot">
<!--left mod -->
<div class="l-botMod">
<div class="myMod" id="myMod">
<div class="i-title">
我的书架
<a href="/pc/bookshelf" class="clickMore" >查看更多&gt;&gt;</a>
</div>
<ul class="bookUl">
{foreach $arrNewsNovel as $key=>$Novel}
<li>
<a href='/pc/xiaoshuo/name-1' alt="我真是一条龙" title="我真是一条龙">
<img src="https://www.630zw.org/img/176943.jpg">
</a>
<p>
<a href='/pc/xiaoshuo/name-1' >
<span class="bookName">我真是一条龙</span>
</a>
<span class="bookStatus">
<b class="authorSt"><em>已完结</em>
<a href="/search/%E5%85%94%E5%AD%90%E5%BE%88%E6%B7%A1%E5%AE%9A.html"
>
<em class="none">兔子很淡定</em>
</a>
</b>
<b class="authorSt chapterSt"><a href='/pc/xiaoshuo/name-1/zhang-1' >
<em class="ct">最新章节:老读者必看公告!!!</em>
</a>
<em class="time">3天前更新</em></b>
</span>
<a href='/pc/xiaoshuo/name-1/zhang-1' > <i class="goon">阅读</i>
</a>
</p>
</li>
{/foreach}
</ul>
</div>
<div class="myMod">
<div class="i-title">
最近阅读
<a href="/pc/history" class="clickMore" >查看更多&gt;&gt;</a>
</div>
<ul class="bookUl">
{foreach $arrNewsNovel as $key=>$Novel}
<li>
<a href='/pc/xiaoshuo/name-1' alt="捻转步舞曲[花滑]" title="捻转步舞曲[花滑]">
<img src="https://www.630zw.org/img/176943.jpg">
</a>
<p>
<a href='/pc/xiaoshuo/name-1' >
<span class="bookName">捻转步舞曲[花滑]</span>
</a>
<span class="bookStatus">
<b class="authorSt"><em>已完结</em>
<a href="/search/%E6%A2%A7%E6%A1%90%E6%A0%91%E4%B8%8Bwt.html" >
<em class="none">梧桐树下wt</em>
</a>
</b>
<b class="authorSt chapterSt"><a href="/book/12481/09f0ecc3793df.html" >
<em class="ct">最新章节432 番外三</em>
</a>
<em class="time">3天前更新</em></b>
</span>
<a href='/pc/xiaoshuo/name-1/zhang-1' > <i class="goon">继续阅读</i>
</a>
</p>
</li>
{/foreach}
</ul>
</div>
<div class="myMod hotMod">
<div class="i-title">
热读作品
<ul class="tabHd">
<li class=""></li>
<li class="on"></li>
<li class=""></li>
</ul>
</div>
<div class="tabBd">
{foreach $arrNewsNovel as $key=>$Novel}
<ul class="hotBookBd " style="display: none;">
{foreach $arrNewsNovel as $key=>$Novel}
<li>
<a href='/pc/xiaoshuo/name-1' alt="我真是一条龙" title="我真是一条龙">
<img src="https://www.630zw.org/img/176943.jpg">
<span class="bookName">我真是一条龙</span>
<span class="bookAuthor">兔子很淡定</span>
</a>
</li>
{/foreach}
</ul>
{/foreach}
</div>
</div>
</div>
<!--right mod -->
<div class="r-botMod">
<div class="myWorks myLike">
<div class="i-title">推荐作品</div>
<ul>
{foreach $arrNewsNovel as $key=>$Novel}
<li>
<a href='/pc/xiaoshuo/name-1' alt="我真是一条龙" title="我真是一条龙">
<img src="https://www.630zw.org/img/176943.jpg">
</a>
<p>
<a href='/pc/xiaoshuo/name-1' >
<span class="bookName other">我真是一条龙</span>
</a>
<a href="/search/%E5%85%94%E5%AD%90%E5%BE%88%E6%B7%A1%E5%AE%9A.html" >
<span class="bookStatus other">兔子很淡定</span>
</a>
<span class="bookBrief">
我的父亲告诉我,在我出生那一年,天上金光闪耀,隐隐约约中,好像能看到云朵里有条龙在盘旋,紧接着,一道金光照入我们的村子,我便出生了……为寻答案来人间,天龙问世扰乾坤。
无情无义闹天下,千军万马赴黄泉。
本站提示各位书友要是觉得《我真是一条龙》还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦</span>
</p>
</li>
{/foreach}
</ul>
</div>
</div>
</div>
</div>
{/block}
{block name="customize"} {/block}

View File

@@ -2,20 +2,23 @@
{block name="title"}{$strTitle??''}{/block}
{block name="keywords"}{$strKeywords??''}{/block}
{block name="description"}{$strDescription??''}{/block}
{block name="head-css"}
<link rel="canonical" href="https://{$DomainModel->d_domain}/">
{/block}
{block name="head"}
<!-- 社交媒体标签 -->
<meta property="og:title" content="{$strTitle??''}" />
<meta property="og:description" content="{$strDescription??''}" />
<meta property="og:url" content="{Request->DomainModel->d_domain}" />
<meta property="og:url" content="https://{$DomainModel->d_domain}" />
<meta property="og:type" content="article" />
<!-- 结构化数据 -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"@context": "https://{$DomainModel->d_domain}",
"@type": "Article",
"headline": "{$strTitle??''}",
"description": "{$strDescription??''}",
"datePublished": "2025-04-05"
"datePublished": "{:date('Y-m-d')}"
}
</script>
{/block}
@@ -23,6 +26,7 @@
<link rel="canonical" href="/" />
{block name="main"}
<div class="content">
<div class="f1 area2 pdcon">
<div class="f1_L">
@@ -114,12 +118,9 @@
<div class="com_R">
<h2>
<s></s>排行榜
<span class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 40px; cursor: pointer; font-size: 13px; color: #fff; background: #c4c4c4;"></span><span
class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 5px; cursor: pointer; font-size: 13px;"></span><span
class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 5px; cursor: pointer; font-size: 13px;"></span>
<span class="btn_toggle_mod_bang" style="color: #fff; background: #c4c4c4;"></span>
<span class="btn_toggle_mod_bang"></span>
<span class="btn_toggle_mod_bang"></span>
</h2>
<div class="list_wrap">
<ol class="list" mod="rank_data_list">
@@ -192,12 +193,9 @@
<div class="com_R">
<h2>
<s></s>排行榜
<span class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 40px; cursor: pointer; font-size: 13px; color: #fff; background: #c4c4c4;"></span><span
class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 5px; cursor: pointer; font-size: 13px;"></span><span
class="btn_toggle_mod_bang"
style="width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 5px; cursor: pointer; font-size: 13px;"></span>
<span class="btn_toggle_mod_bang" style="color: #fff; background: #c4c4c4;"></span>
<span class="btn_toggle_mod_bang"></span>
<span class="btn_toggle_mod_bang"></span>
</h2>
<div class="list_wrap">
<ol class="list" mod="rank_data_list">

View File

@@ -98,6 +98,10 @@
{block name="customize"}{/block}
<script>
const strPushApi = `{site:cfg code="PUSH_API_DOMAIN" encode="false"/}`;
</script>
<script src="/public/jquery/jquery-3.7.1.min.js"></script>
<!-- <script src="https://code.jquery.com/jquery-3.7.1.min.js" type="text/javascript"></script> -->
<script src="/template/kuangyu/home/new_wap/js/global.js" type="text/javascript"></script>

View File

@@ -6,7 +6,7 @@
<meta name="robots" content="index, follow" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>{block name="title"}{/block}</title>
<meta name="description" content='{block name="keywords"}{/block}'>
<meta name="keywords" content='{block name="keywords"}{/block}'>
<meta name="description" content='{block name="description"}{/block}'>
<link rel="icon" href="/template/kuangyu/public/img/favicon.ico" type="image/x-icon" />
@@ -74,6 +74,10 @@
{block name="customize"}{/block}
<script>
const strPushApi = `{site:cfg code="PUSH_API_DOMAIN" encode="false"/}`;
</script>
<script src="/public/jquery/jquery-3.7.1.min.js"></script>
<script src="/public/layer/layer.js"></script>
<script src="/public/lazyload/jquery.lazyload.min.js"></script>
@@ -85,8 +89,11 @@
<!-- 全局统计 -->
{site:cfg code="PUBLIC_TONGJI_CODE" encode="false"/}
<!-- TODO 站点统计 这个无法渲染 -->
{Request->DomainModel->d_statis}
<!-- TODO 站点统计 这个无法渲染 Request START-->
<!-- {Request->DomainModel->d_statis} -->
<!-- 现在是使用这个 -->
{$DomainModel->d_statis|raw}
<!-- TODO END -->
</body>

View File

@@ -14,6 +14,8 @@ return [
'view_suffix' => 'html',
// 模板文件名分隔符
'view_depr' => DIRECTORY_SEPARATOR,
// 允许 PHP 函数调用
'tpl_deny_php' => false,
// 模板引擎普通标签开始标记
'tpl_begin' => '{',
// 模板引擎普通标签结束标记

View File

@@ -53,6 +53,11 @@ class SystemConfigSeeder
'sc_val' => "dl",
'sc_description' => '代理商API域名-解析前缀dl-open. 后缀是.xyz ,但这里不需要填前缀和后缀',
],
[
'sc_code' => 'PUSH_API_DOMAIN',
'sc_val' => "api.test.com",
'sc_description' => 'api',
],
[
'sc_code' => 'PUBLIC_TONGJI_CODE',
'sc_val' => "",

View File

@@ -61,6 +61,11 @@ s{background: url(../images/iconC.png) no-repeat;}
.headWrap_r .long .search_btn s{background-position: -30px 0;}
.headWrap_r .search .search_btn:hover s{background-position: -30px 0;}
/* 首页 */
.btn_toggle_mod_bang{
width: 33px; line-height: 24px; text-align: center; border-radius: 4px; margin-left: 5px; cursor: pointer; font-size: 13px;
}
/* 登陆 */
.headWrap_r .login{float: right; position: relative; background: #fff; padding-top: 32px;}
.headWrap_r .login .login_before{width: 100px; height: 18px; line-height: 20px; padding-left: 20px; cursor: pointer; display: block;}
@@ -320,6 +325,8 @@ display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}
.find .opt ul li .on:hover{color: #fff;}
.find .opt .no_bor{border-bottom: none;}
/*列表*/
.result{background: #fff; width: 1100px; overflow: hidden;}
.search_tip{text-align: center;}

View File

@@ -126,9 +126,7 @@ function incShouCangFun(intId) {
function addBookshelfFun(NovelInfo) {
if (!NovelInfo) {
NovelInfo = JSON.parse(arrNovel)
NovelInfo['c_sort_num'] = strChapterSort;
NovelInfo['c_name'] = strChapterName;
NovelInfo = arrNovel
}
let arrBookshelf = JSON.parse(localStorage.getItem('strBookshelfKey')) || [];
@@ -251,17 +249,14 @@ function displayBookshelf() {
// 加入阅读记录
function addHistoryFun(NovelInfo) {
// 如果没有传入 NovelInfo则使用 arrNovel 并补充字段
if (!NovelInfo) {
NovelInfo = JSON.parse(arrNovel);
NovelInfo['c_sort_num'] = strChapterSort;
NovelInfo['c_name'] = strChapterName;
NovelInfo = arrNovel
}
// 获取本地存储中的历史记录
let arrBookshelf = JSON.parse(localStorage.getItem('strHistoryKey')) || [];
// 检查书籍是否已存在
const index = arrBookshelf.findIndex(item => item.n_id === NovelInfo.n_id);
@@ -379,7 +374,7 @@ function displayHistory() {
// 方法1使用 fetch API
async function reportStats(data) {
try {
const response = await fetch('http://api.novel2.com/publish', {
const response = await fetch(strPushApi+'/publish', {
method: 'POST',
// mode: 'no-cors', // 添加这行
headers: {