35 KiB
35 KiB
# 系统配置
{site:cfg code="YONG_JIU_DOMAIN" encode="false"/}
// YOUQING_LIANJIE_GUANG_GAO
{ad:list code="YOUQING_LIANJIE_GUANG_GAO" order="asc" limit=10 /}
{ad:list count="10"
code="YOUQING_LIANJIE_GUANG_GAO"
order="asc"
d_key="d_key" d_val="Ad" cache_life="86400"}
<li>
Index: {$d_key}
Title: {$Ad.gg_wen_zi}
Img: {$Ad.gg_tu_pian}
Href: {$Ad.gg_tiao_zhuan_di_zhi}
</li>
{/ad:list}
# 广告配置
{site:adcfg code="JIAO_YOU_XIA_ZAI" encode="false"/}
# 获取seo tdk
{site:seotdk code="index" valcode="stc_title" encode="false"/}
# 获取 站点信息
{site:site valcode="site_name" encode="false"/}
# 转码
{site:wz wz="保存永久访问二维码" /}
# 小说分类 url
{site:nflurl gender="$arrNovel[gender]" category="$arrNovel[category]" status="$arrNovel[status]" page="1"/}
{site:nflurl gender="all" category="$arrNovel[category_pinyin]" status="all" page="1"/}
{site:nflurl order="tuijian" page="1"/}
# 小说详情 url
{site:nurl n_id="$Novel->n_id" n_py="$Novel->n_name_pinyin"/}
# 伪造小说详情 url
{site:nnurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" n_fid="$ForgeNovel[n_forge_id]"/}
# 小说目录 url
{site:nclurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" order="zheng" page="1"/}
# 小说章节 url
{site:cpurl n_id="$arrNovel[n_id]" n_py="$arrNovel[og_novel_pin_yin]" c_sort="$Chapter[c_sort_num]" c_page="1"/}
# 小说最新章节 url
{site:lcpurl n_id="$arrNovel.n_id" n_py="$arrNovel.n_name_pinyin" /}
# 搜索详情 url
{site:souurl key="哈哈" p="1"/}
# 排行榜列表url
{site:rankurl gender="$arrNovel[gender]" category="$arrNovel[category]" status="$arrNovel[status]" order="$arrNovel[order]" page="1"/}
{site:rankurl status="$arrNovel[status]" order="$arrNovel[order]" page="1"/}
# 干扰码
{site:grm domain="Request->DomainModel->d_domain" code="kuangyu-pc-index" line="50" diff="0" start="5" end="20" type="2" /}
# 视频分类 首页 url
{site:vciurl parent_category="dianying" /}
{site:vciurl parent_category="dianying" export_name="strVciurl" /}
# 视频详情 url
{site:vurl v_id="$Video.v_id" v_py="$Video.v_name_en"/}
# 视频播放 url
{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}
{site:vpurl v_id="$Video.v_id" v_py="$Video.v_name_en" play_type="$Request.route.strPlayType" play_index="$Request.route.intPlayIndex" /}
# 视频分类 分页 url
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
'vclurl' => ['attr' => 'category,class,area,lang,year,order,page', 'close' => 0],
# 样例
{site:vclurl parent_category="dianying" category="all" area="all" lang="all" year="all" order="all" page="1"/}
{site:vclurl parent_category="$Request.route.strClass" category="$arrChildrenCategory.v_category_en" area="all" lang="all" year="all" order="all" page="1" export_name="strVclurl"/}
# 视频排行榜 列表 url
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$sort_type ?? "daily"; # 排序方式:
# * * 'daily' => '天',
# * * 'weekly' => '周',
# * * 'monthly' => '月',
# * * 'total' => '总',
'vrlurl' => ['attr' => 'category,class,sort_type,page', 'close' => 0],
# 样例
{site:vrlurl class="dianying" category="all" sort_type="all" page="1"/}
{site:vrlurl class="$Request.route.strClass" category="$arrChildrenCategory.v_category_en" sort_type="all" page="1"/}
# 视频详情 url
{site:nurl n_id="$Novel->n_id" n_py="$Novel->n_name_pinyin"/}
# 视频搜索详情 url
{site:vsurl key="哈哈" p="1"/}
# 图片加密
<img class="pre-img lozad" loading="lazy" src="/assets/images/loading_img_bg_default.jpg?v={site:cfg code='STATIC_FILE_VERSION' encode='false'/}"
data-encrypted="true"
data-src="{$vo.sp_fengmian_url}">
<!-- <div class="page_num">
{if condition='$intPage > 1 '}
<a href='{$strPcPath}{site:nclurl n_id="$arrNovel[n_id]" n_py="$arrNovel[n_name_pinyin]" order="zheng" page="1"/}'
class="z">
{else}
<a href="{if condition='$intPage > 1 '}/{$strFirstPath}/{$intNovelId}{if condition='$intPage > 2'}-{$intPage - 1}{/if}.html
{else}/{$strFirstPath}/{$intNovelId}.html{/if}"
class="z">
{/if}
上一页</a>
<select onchange="self.location.href=this.value">
{volist name="arrChapterPages" id="page"}
<option value="/{$strFirstPath}/{$intNovelId}{if condition='$page.index neq 0'}-{$page.index+=1}{/if}.html"
{if condition="$page.index == $intPage" }selected="selected" {/if}>
第{$page.start}-{$page.end}章
</option>
{/volist}
</select>
<a href="{if condition='$intPage < $intTotalPages'}/{$strFirstPath}/{$intNovelId}-{$intPage + 1}.html{else}/{$strFirstPath}/{$intNovelId}-{$intTotalPages}.html{/if}"
class="y">下一页</a>
</div> -->
```php
```php
# 01、 获取多个小说数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$n_category ?? "all"; # 查询分类
$sort_type ?? "all"; # 排序方式 news tuijian update
$n_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$n_sex ?? "all"; # 查询性别:
# * * 'all' => '所有',
# * * 'man' => '男生',
# * * 'women' => '女生',
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:list count="10" n_category="$Request.route.category" d_key="d_key" d_val="Novel" cache_life="1000"}
<li>
Index: {$d_key}
Title: {$novel.n_name}
Author: {$novel.n_category}
</li>
{/novel:list}
# 02-1、 获取分页小说数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$n_category ?? "all"; # 查询分类
$sort_type ?? "all"; # 排序方式
$n_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$n_sex ?? "all"; # 查询性别:
# * * 'all' => '所有',
# * * 'man' => '男生',
# * * 'women' => '女生',
$key ?? ""; # 查询 搜索
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel) generateCategoryPager generateSearchPager
# 样例
{novel:pager page="1" limit="10" n_category="$Request.route.category" d_key="d_key" d_val="novel" p_val="page_data" button_num="3" cache_life="1000" func="generateSearchPager"}
<li>
Index: {$d_key}
Title: {$novel.n_name}
Author: {$novel.n_category}
</li>
{/novel:pager}
{php}var_dump($page_data);{/php}
# 02-2、 获取分页小说数据不遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$n_category ?? "all"; # 查询分类
$sort_type ?? "all"; # 排序方式
$n_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$n_sex ?? "all"; # 查询性别:
# * * 'all' => '所有',
# * * 'man' => '男生',
# * * 'women' => '女生',
$key ?? ""; # 查询 搜索
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$export_name ?? 'n_num'; # 查询出来的 所有数据集合,所有数据都可以在里面取。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel) generateCategoryPager generateSearchPager
# 样例
{novel:pagerexp page="$Request.get.page" limit="30"
key="$Request.get.keyword"
d_key="d_key"
d_val="Novel" n
p_val="page_data" button_num="10" cache_life="86400" func="generateSearchPager" export_name="resData" /}
结构
resData = [
data = []
p_data = [
'total' => $intTotal,
'page' => $intPage,
'limit' => $intLimit,
'pages' => ceil($intTotal / $intLimit)
],
]
{php}var_dump($resData['p_data']);{/php}
# 03、获取替换模板替换后的数据
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$code ; # 替换模板编码
# 样例
{site:replace code="INDEX@INDEX@TITLE"}
# 04、获取小说详情数据
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$n_id ; # 传入的小说ID
$n_forge_id ; # 传入的伪造小说ID,默认值0,不伪造
$n_key ; # 查询出来的数据待使用的变量名称
# 样例
{novel:info n_id="33" n_key="arrNovel01" n_forge_id="1125940" /}
{$arrNovel01.n_name}
# 05、获取小说状态筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:status d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/novel:status}
# 06、获取小说性别筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:sex d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/novel:sex}
# 07、获取小说排序筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:sort d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/novel:sort}
# 08、获取小说排行榜排序筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:ranksort d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/novel:ranksort}
# 09、获取小说分类筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:category d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/novel:category}
# 10、 获取指定小说多个章节数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$n_id ; # 小说ID
$sort_type ?? "all"; # 排序方式
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{chapter:list count="10" n_id="$Request.get.n_id" d_key="d_key" d_val="chapter" cache_life="1000"}
<li>
Index: {$d_key}
章节名称: {$chapter.c_name}
章节序号: {$chapter.c_sort_num}
</li>
{/chapter:list}
# 11、 获取小说章节详情数据
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$n_id ; # 传入的小说ID
$c_sort_num ; # 传入的章节索引
$c_page ; # 传入的章节页码
$n_key ; # 查询出来的数据待使用的变量名称
# 样例
{chapter:info n_id="1" c_sort_num="200" c_page="0" c_key="arrChapter01" /}
{$arrChapter01.c_name}
# 12-1、 获取指定小说章节分页数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$n_id ; # 小说ID
$sort_type ?? "all"; # 排序方式
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel)
# 样例
{chapter:pager page="$Request.get.page" limit="10" n_id="$Request.get.n_id" d_key="d_key" d_val="chapter" cache_life="1000" button_num="3" sort_type="dao" func="generateChapterPager"}
<li>
Index: {$d_key}
章节名称: {$chapter.c_name}
章节序号: {$chapter.c_sort_num}
</li>
{/chapter:pager}
# 12-2、 获取分页小说章节数据不遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$n_id ; # 小说ID
$sort_type ?? "all"; # 排序方式
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$export_name ?? 'n_num'; # 查询出来的 所有数据集合,所有数据都可以在里面取。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel) generateCategoryPager generateSearchPager
# 样例
{chapter:pagerexp page="$Request.get.page" page="1" limit="10" n_id="$Request.get.n_id" d_key="d_key" d_val="chapter" cache_life="1000" button_num="3" sort_type="$Request.route.strOrder" func="generateChapterPager" export_name="resData" /}
结构
resData = [
data = []
p_data = [
'pager' => []
'total' => $intTotal,
'page' => $intPage,
'limit' => $intLimit,
'pages' => ceil($intTotal / $intLimit)
],
]
{php}var_dump($resData['p_data']);{/php}
# 13、 获取干扰码
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page_code ?? ""; # 页面编码
$diff ?? ""; # 差异值
$limit ?? '1'; # 查询条数
# 样例
{site:grm page_code="fdasfadsf" diff="fadsfdsa" num="10" g_key="arrGrm" /}
{php}var_dump($arrGrm);{/php}
# 14、 获取指定类型小说排行榜并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$sort_type ?? "daily"; # 排序方式:
# * * 'daily' => '天',
# * * 'weekly' => '周',
# * * 'monthly' => '月',
# * * 'total' => '总',
$n_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$n_sex ?? "all"; # 查询性别:
# * * 'all' => '所有',
# * * 'man' => '男生',
# * * 'women' => '女生',
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{novel:ranklist count="10" sort_type="total" n_status="wanjie" n_sex="man" d_key="key" d_val="Novel" cache_life="86400"}
<li>
Index: {$d_key}
Title: {$novel.n_name}
Author: {$novel.n_category}
</li>
{/novel:ranklist}
# 15、 获取随机伪造小说列表并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{site:forgelist count="10" d_key="d_key" d_val="novel" cache_life="1000"}
<li>
Index: {$d_key}
N ID: {$novel.n_id}
N NAME PINYIN: {$novel.n_name_pinyin}
N FORGE ID: {$novel.n_forge_id}
N FORGE TITLE: {$novel.n_forge_title}
</li>
{/site:forgelist}
# 16、 视图反向控制器(注释函数),在视图开头调用,用来初始化一些操作。这里尽量不要复杂逻辑
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$func # SiteContext 里面的方法名
# 样例
{site:helper func="initHomeTKD" /}
# 17、 获取公共替换变量的值
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$code # ConverterMovel 里面的arrMap 的key
# 样例
{site:getval code="strNovelCategoryName" /}
# 18、 获取多个视频数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$v_category_en ?? "all"; # 查询分类
$v_parent_category_en ?? "all"; # 查询父分类
$v_lang_en ?? "all"; # 查询语言
$v_area_en ?? "all"; # 查询地区
$v_year ?? "all"; # 查询年份
$sort_type ?? "all"; # 排序方式 news tuijian update 'piaofang' => '票房',
$v_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例1
{video:list count="10"
v_parent_category_en="$Request.route.strParentCategory"
v_category_en="$Request.route.strCategory"
v_lang_en="$Request.route.strLang"
v_area_en="$Request.route.strArea"
v_year="$Request.route.strYear"
sort_type="piaofang"
d_key="d_key" d_val="Video" cache_life="86400"}
<li>
Index: {$d_key}
Title: {$video.n_name}
Author: {$video.v_category}
</li>
{/video:list}
# 样例
{video:list count="10" v_category="$Request.route.category" d_key="d_key" d_val="Video" cache_life="1000"}
<li>
Index: {$d_key}
Title: {$video.n_name}
Author: {$video.v_category}
</li>
{/video:list}
# 19-1、 获取分页视频数据并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$v_category_en ?? "all"; # 查询分类
$v_parent_category_en ?? "all"; # 查询父分类
$v_lang_en ?? "all"; # 查询语言
$v_area_en ?? "all"; # 查询地区
$v_year ?? "all"; # 查询年份
$sort_type ?? "all"; # 排序方式
# 'all' => '全部排序',
# 'news' => '最新入库',
# 'tuijian' => '推荐',
# 'update' => '最新更新',
$v_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$key ?? ""; # 查询 搜索
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel) generateCategoryPager generateSearchPager
# 样例1
{video:pager page="1" limit="30" button_num="3" cache_life="86400" func="generateVideoPager"
v_parent_category_en="$Request.route.strParentCategory"
v_category_en="$Request.route.strCategory"
v_lang_en="$Request.route.strLang"
v_area_en="$Request.route.strArea"
v_year="$Request.route.strYear"
sort_type="$Request.route.strOrder"
d_key="d_key" d_val="video" p_val="page_data" export_name="resData" /}
# 样例2
{video:pager page="1" limit="10" v_category="$Request.route.category" d_key="d_key" d_val="video" p_val="page_data" button_num="3" cache_life="1000" func="generateSearchPager"}
<li>
Index: {$d_key}
Title: {$video.n_name}
Author: {$video.v_category}
</li>
{/video:pager}
{php}var_dump($page_data);{/php}
# 19-2、 获取分页视频数据不遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$page ?? '1'; # 页码
$limit ?? '10'; # 查询条数
$v_category_en ?? "all"; # 查询分类
$v_parent_category_en ?? "all"; # 查询父分类
$v_lang_en ?? "all"; # 查询语言
$v_area_en ?? "all"; # 查询地区
$v_year ?? "all"; # 查询年份
$sort_type ?? "all"; # 排序方式
$v_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$key ?? ""; # 查询 搜索
$button_num ?? "10"; # 分页按钮数量
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$p_val ?? 'p_val'; # 分页页码数据,这是一个数组。和之前控制器渲染的那个数组一致的。
$export_name ?? 'n_num'; # 查询出来的 所有数据集合,所有数据都可以在里面取。
$func ; # 这个参数是一个回调方法名,用来渲染分页页码数据的,该方法需要在 NovelService 类里面实现,func(array $arrParams, array $arrSort, array $arrNovel) generateCategoryPager generateSearchPager
# 样例
{video:pagerexp page="$Request.get.page" limit="30" button_num="10"
key="$Request.get.keyword"
v_parent_category_en="$Request.route.strParentCategory"
v_category_en="$Request.route.strCategory"
v_lang_en="$Request.route.strLang"
v_area_en="$Request.route.strArea"
v_year="$Request.route.strYear"
sort_type="$Request.route.strOrder"
d_key="d_key" d_val="Video" p_val="page_data" cache_life="86400" func="generateSearchPager" export_name="resData" /}
结构
resData = [
data = []
p_data = [
'total' => $intTotal,
'page' => $intPage,
'limit' => $intLimit,
'pages' => ceil($intTotal / $intLimit)
],
]
{php}var_dump($resData['p_data']);{/php}
# 20、获取替换模板替换后的数据
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$code ; # 替换模板编码
# 样例
{site:replace code="INDEX@INDEX@TITLE"}
# 21、获取视频详情数据
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$n_id ; # 传入的视频ID
$n_forge_id ; # 传入的伪造视频ID,默认值0,不伪造
$n_key ; # 查询出来的数据待使用的变量名称
# 样例
{video:info n_id="33" n_key="arrVideo" /}
{$arrVideo.n_name}
# 22、获取视频状态筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:status d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:status}
# 23、获取视频排序筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:sort d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:sort}
# 24、获取视频排行榜排序筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:ranksort d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:ranksort}
# 25、获取视频分类筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:category d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:category}
# 25-2、获取视频分类筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
$category_type ?? 'category_type'; # 自定义 分类类型
# 样例
{video:categorytype category_type="ONE" d_key="key" d_val="val"}
<li class="{if $key == 1}active{/if}">
<a style="color: rgb({:mt_rand(0,255)}, {:mt_rand(0,255)}, {:mt_rand(0,255)});"
href="">
{$val.v_category}
</a>
{foreach $val.children as $intChildrenKey=>$arrChildrenCategory }
{$arrChildrenCategory.v_category}:{$arrChildrenCategory.v_category_en}
{/foreach}
</li>
{/video:categorytype}
# 26、 获取指定类型视频排行榜并且遍历
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$count ?? '10'; # 查询条数
$sort_type ?? "daily"; # 排序方式:
# * * 'daily' => '天',
# * * 'weekly' => '周',
# * * 'monthly' => '月',
# * * 'total' => '总',
$v_status ?? "all"; # 查询状态:
# * * 'all' => '所有',
# * * 'lianzai' => '连载中',
# * * 'wanjie' => '已完结',
$v_category_en ?? ""; # 分类拼音
$v_parent_category_en ?? ""; # 父分类拼音
$diff_key ?? ""; # 缓存键值差异
$cache_life ?? '0'; # 缓存时间,如果需要开启缓存,这个字段必须传,而且必须大于0
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例1
{video:ranklist count="10"
v_category_en="$arrChildrenCategory.v_category_en"
sort_type="weekly"
d_key="key" d_val="Video" cache_life="86400"}
{/video:ranklist}
# 样例2
{video:ranklist count="10" sort_type="total" v_status="wanjie" v_category_en="分类拼音" v_parent_category_en="父分类拼音" d_key="key" d_val="Video" cache_life="86400"}
<li>
Index: {$d_key}
Title: {$video.n_name}
Author: {$video.v_category}
</li>
{/video:ranklist}
# 27、获取视频语言筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:lang d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:lang}
# 28、获取视频地区筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:area d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:area}
# 29、获取视频年份筛选条件
# 传参与默认值(传参用下面的变量名,名称不需要$符号, 值的话如果用第三方变量作为值,需要带$符号):
$d_key ?? 'd_key'; # 查询出来的数据遍历的时候, 下标键变量的名称
$d_val ?? 'd_val'; # 查询出来的数据遍历的时候, 值的名称
# 样例
{video:year d_key="key" d_val="val"}
<li> 键: {$key} - 值: {$val} </li>
{/video:year}
{video:imgalt video="$arrVideo" slot="detail_cover" item_type="poster" export_name="strAlt" /}
<img src="{$arrVideo.v_pic|default=''}" alt="{$strAlt}">
{video:imgalt video="$Video" slot="list_poster" item_type="$listCfg.item_type" export_name="strAlt" /}
<img src="{$Video.v_pic|default=''}" alt="{$strAlt}">