🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
##程序内置标签 *** [TOC] ### 全局URL标签 循输出网站默认url地址 调用方式: ~~~ //全局前台页面链接 {JY:url name="album" } //专辑页面链接 {JY:url name="album_type" } //专辑类型页面链接 {JY:url name="artist" } //艺人页面链接 {JY:url name="artist_type" } //艺人类型页面链接 {JY:url name="cate" } //音乐分类页面链接 {JY:url name="tag" } //风格标签页面链接 {JY:url name="ranks" } //排行榜页面链接 {JY:url name="search" } //搜索页面链接 //全局用户链接 {JY:url name="user_captcha" } //用户验证码 {JY:url name="user_pact" } //用户协议 {JY:url name="user_login" } //用户登录展示页面 {JY:url name="user_sign" } //用户提交登录 {JY:url name="user_signup" } //用户注册展示页面 {JY:url name="user_join" } //用户提交登录 {JY:url name="user_logout" } //用户退出登录 {JY:url name="user_findpwd" } //用户找回密码 {JY:url name="oauth_weibo" } //第三方微博登录 {JY:url name="oauth_qq" } //第三方qq登录 {JY:url name="musician_auth" } //音乐人认证展示页 {JY:url name="musician_save" } //音乐认证创建提交 {JY:url name="musician_update" } //音乐人认证更新提交 {JY:url name="user_set" } //用户资料修改展示 {JY:url name="user_send_set" } //用户提交修改资料 {JY:url name="user_avatar" } //用户头像修改展示 {JY:url name="user_send_avatar" } //用户提交头像修改 {JY:url name="user_pwd" } //用户修改密码展示 {JY:url name="user_send_pwd" } //用户提交密码修改 {JY:url name="user_account" } //用户个人账户展示 {JY:url name="user_charge" } //账户充值 {JY:url name="user_upgrade" } //升级用户组 {JY:url name="user_album" } //用户个人专辑 {JY:url name="album_create" } //用户创建专辑 {JY:url name="album_save" } //用户提交创建专辑 {JY:url name="album_edit" } //用户专辑编辑 {JY:url name="album_update" } //用户提交编辑专辑 {JY:url name="user_music" } //用户音乐页面链接 {JY:url name="user_music_audit" } //用户音乐待审 {JY:url name="user_music_back" } //用户音乐驳回 {JY:url name="user_music_down" } //用户音乐下载记录 {JY:url name="music_share" } //用户音乐上传 {JY:url name="music_save" } //用户提交上传音乐 {JY:url name="music_edit" } //用户编辑音乐展示 {JY:url name="music_update" } //用户提交音乐编辑 {JY:url name="user_fav" } //用户收藏 {JY:url name="user_fav_album" } //用户收藏专辑 {JY:url name="user_follow" } //用户关注 {JY:url name="user_fans" } //用户粉丝 {JY:url name="user_msg" } //用户消息 {JY:url name="user_notice" } //系统通知 ~~~ ### songs 歌曲标签 循环输出歌曲数据集 调用方式: ~~~ {JY:songs result="v" 属性名称="属性值" limit="12" order="create_time"} <ul> <li>{$v['name']}</li> </ul> {/JY:songs} ~~~ 示例:输出指定歌手id为123下12条歌曲 并按照收藏排序 ~~~ <ul> {JY:songs result="v" artist="123" limit="12" order="favtime"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定专辑id为123下12条歌曲 并按照id 倒序排序 ~~~ <ul> {JY:songs result="v" album="123" limit="12" order="id"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定歌手id为123下12条歌曲 并按照下载排序 ~~~ <ul> {JY:songs result="v" artist="123" limit="12" cache="downoad"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定分类id为3下所有12条歌曲 并按照点赞排序 ~~~ <ul> {JY:songs result="v" genre="3" limit="12" order="digg"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定用户uid为123下12条歌曲 并指定缓存3600秒 ~~~ <ul> {JY:songs result="v" uid="123" limit="12" cache="3600"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定排行榜id为2下随机12条歌曲 ~~~ <ul> {JY:songs result="v" rank="2" limit="12" order="rank()"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 示例:输出指定风格标签id为2下12条歌曲 ~~~ <ul> {JY:songs result="v" tag="2" limit="12" order="create_time"} <li>{$v['name']}</li> {/JY:songs} </ul> ~~~ 并且标签可以嵌套使用,可以混合嵌套使用, 混合嵌套, 曲风标签和歌曲标签 嵌套,下面的实例,将会输出每个曲风的同时输出其对应下的歌曲数据 ~~~ <ul> {JY:genre result="g" limit="12" order="create_time"} <li>{$g['name']}</li> <ul> {JY:songs result="s" genre="$g['id']" limit="12" order="listens"} <li><a href="{$s['url']}" >{$s['name']}</a></li> {/JY:songs} </ul> {/JY:genre} </ul> ~~~ 或者指定分类id为 1,2,3,4下的歌曲 ~~~ <ul> {JY:genre result="g" id="1,2,3,4" limit="12" order="create_time"} <li>{$g['name']}</li> <ul> {JY:songs result="s" genre="$g['id']" limit="12" order="listens"} <li><a href="{$s['url']}">{$s['name']}</a></li> {/JY:songs} </ul> {/JY:genre} </ul> ~~~ >[warning] 需要注意的是,嵌套使用标签的时候,两个result的值 也就是变量名称 不能重复否则可能出现变量混淆 | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | songs | 任意字母 | 自定义定义循环结果集变量名称例如:v,vo | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20条 之间的数据 | | order | id | 详见下方说明 | 指定排序方式查询数据 | | key | key | 任意字母 | 列表ID 注意调用时 直接使用{$i}即可,将会输出 1,2,3,4......| | artist | 无 | 艺术家ID | 遍历指定艺术家所有歌曲,属性出现必须指定值 | | album | 无 | 专辑ID | 遍历指定专辑所有歌曲,属性出现必须指定值 | | genre | 无 | 曲风ID | 遍历指定曲风下所有歌曲,属性出现必须指定值 | | uid | 无 | 会员ID| 遍历指定会员下所有歌曲,属性出现必须指定值 | | pos | 无 | 数字|遍历指定推荐位下所有歌曲,属性出现必须指定值,多个推荐位将其值相加| | page | 无 | 混合|1或任意字符,赋值后将会开启分页,对应page变量将会是,$xx['page']| | id | 无 | 混合 | 输出指定id或多个id下的歌曲,例如:11或11,22,33,44 | | cache | 无 | 数字 | 缓存时间单位秒,强烈建议使用缓存,缓存一些网站不经常更新的数据以便提升访问速度 | >[info] songs标签 order属性可以设置的值有: create_time 添加时间、listens 试听次数、download 下载次数、favtimes 收藏、likes喜欢 等。 可混合使用使用 英文 , 号隔开 变量输出,输入变量的名称是根据 result 属性值而来 例如我们定义了` result='v'` 那么调用时就是 `{$v['name']}`: | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | id | `{$v['id']}` | 输出歌曲id| | name |` {$v['name']}` | 输出歌曲名称| | url | `{$v['url']}` | 输出歌曲连接| | down_url | `{$v['down_url']}` | 输出歌曲下载连接| | up_uid | 同上 | 输分享者id | | up_uname | 同上 | 分享者昵称 | | user_url | 同上 | 分享者空间地址 | | album_id | 同上 | 输出专辑id | | album_name | 同上 | 输出专辑名称 | | album_url | 同上 | 输出专辑连接 | | artist_id | 同上 | 输出艺术家id | | artist_name | 同上 | 输出艺术家名称 | | artist_name | 同上 | 输出艺术家连接 | | genre_id | 同上 | 输出曲风id | | genre_name | 同上 | 输出曲风名称 | | genre_url | 同上 | 输出曲风连接 | | cover_url | 同上 | 输出封面地址 | | download | 同上 | 下载次数 | | rater | 同上 | 评分值 | | listens | 同上 | 试听次数 | | favtimes | 同上 | 收藏次数 | | digg | 同上 | 点赞次数 | | create_time | 同上 | 添加时间 | | update_time | 同上 | 添加时间 | ### album 专辑标签 循环输出专辑数据集 ,同样可以嵌套,嵌套方式参考歌曲标签详解 单个调用方式: ~~~ <ul> {JY:album result="v" 属性名称="属性值" limit="12" order="create_time"} <li>{$v['name']}</li> {/JY:album} </ul> ~~~ 示例:输出艺人id为12的所有专辑 按照创建时间排序 ~~~ <ul> {JY:album result="v" artist="12" order="create_time"} <li>{$v['name']}</li> {/JY:album} </ul> ~~~ 示例:输出专辑类型id为3的所有专辑 按照创建时间排序 ~~~ <ul> {JY:album result="v" type="3" order="create_time"} <li>{$v['name']}</li> {/JY:album} </ul> ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | album | 任意字母 | 自定义定义循环结果集变量名称 | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20条之间的数据 | | order | id | 详见下方说明 | 指定递减排序方式查询数据 | | artist | 无 | 艺术家ID | 遍历指定艺术家下专辑,属性出现必须指定值 | | type | 无 | 专辑分类ID | 遍历指定定分类下专辑,属性出现必须指定值 | | id | 无 | 混合 | 输出指定id或多个id下的专辑,例如:11或11,22,33,44 | | pos | 无 | 数字| 遍历指定推荐位下所有专辑,属性出现必须指定值| | cache | 无 | 数字 | 缓存时间单位秒 | >[info] album标签 order属性可以设置的值有: create_time 添加时间、hits 点击次数、favtimes 收藏、likes喜欢 等。 可混合使用使用 英文 , 号隔开 | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | id | `{$v['id']} ` | 输出专辑id| | name | `{$v['name']} ` | 输出专辑名称| | url | `{$v['url']} ` | 输出专辑连接地址| | type_id | 同上 | 输分类型id | | type_uname | 同上 | 分享类型昵称 | | artist_id | 同上 | 输出所属艺术家id | | artist_name | 同上 | 输出所属艺术家名称 | | artist_url | 同上 | 输出所属家艺术家连接 | | genre_id | 同上 | 输出所属曲风id | | genre_name | 同上 | 输出所属曲风名称 | | genre_url | 同上 | 输出所属曲风家连接 | | company | 同上 | 输出所属唱片公司 | | pub_time | 同上 | 输出发行时间 | | hits | 同上 | 点击次数 | | favtimes | 同上 | 收藏次数 | | rater | 同上 | 评分值 | | likes | 同上 | 喜欢次数 | | introduce | 同上 | 专辑描述 | | cover_url| 同上|专辑封面地址| | create_time | 同上 | 添加时间| | update_time | 同上 | 更新时间 | ### artist 艺术家标签 循环输出艺术家数据集 调用方式: ~~~ <ul> {JY:artist result="v" 属性名称="属性值" limit="12" order="create_time"} <li>{$v['name']}</li> {/JY:artist} </ul> ~~~ 示例:输出艺人类型id为3的所有专辑 按照创建时间排序 ~~~ <ul> {JY:artist result="v" type="3" order="create_time"} <li>{$v['name']}</li> {/JY:artist} </ul> ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | artist | 任意字母 | 自定义定义循环结果集变量名称 | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20 之间的数据 | | order | id | 详见下方说明 | 指定递减排序方式查询数据 | | type | 无 | 类型ID | 遍历指定类型下艺术家,属性出现必须指定值 | | id | 无 | 混合 | 输出指定id或多个id下的艺术家,例如:11或11,22,33,44 | | pos | 无 | 数字| 遍历指定推荐位下所有艺术家,属性出现必须指定值 | | cache | 无 | 数字 | 缓存时间单位秒 | >[info] artist标签 order属性可以设置的值有: add_time 添加时间、listens 试听次数、download 下载次数、rater 评分。 可混合使用使用 英文 , 号隔开 | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | id | `{$v['id']}` | 输出艺人id| | name | `{$v['name']}` | 输出艺人名称| | url | `{$v['url']}` | 输出艺人链接| | type_id | 同上 | 输分类型id | | type_name | 同上 | 类型名称 | | type_url | 同上 | 类型链接地址 | | region | 同上 | 输出所地区名称 | | hits | 同上 | 点击次数 | | favtimes | 同上 | 收藏次数 | | introduce | 同上 | 艺人描述 | | cover_url| 同上|艺术家封面地址| | create_time | 同上 | 添加时间 | | update_time | 同上 | 更新时间 | ### genre 分类标签 循环输出分类数据集 调用方式: ~~~ <ul> {JY:genre result="v" 属性名称="属性值" limit="12" order="add_time"} <li>{$v['name']}</li> {/JY:genre} </ul> ~~~ 示例:输出类型id为3,6,9的所有曲风分类 按照创建时间排序 ~~~ <ul> {JY:genre result="v" id="3,6,9" order="create_time"} <li>{$v['name']}</li> {/JY:genre} </ul> ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | genre | 任意字母 | 自定义定义循环结果集变量名称 | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20 之间的数据 | | order | id | 详见下方说明 | 指定递减排序方式查询数据 | | pid | 无 | 父ID | 遍历指定父级分类下曲风,属性出现必须指定值 | | id | 无 | 混合 | 输出指定id或多个id下的曲风,例如:11或11,22,33,44 | | tree | 无 | 混合 |设置为1或任意值 将会生成曲风树 ,子变量名称将会是$xxx【'_child'】 注意他是个数组 | | cache_time | 无 | 数字 | 缓存时间单位秒 | >[info] artist标签 order属性可以设置的值有: add_time 添加时间、 等。 可混合使用使用 英文 , 号隔开 | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | id | `{$v['id']} ` | 输出曲风id| | name | `{$v['name']}` | 输出曲风名称| | url | `{$v['url']} ` | 输出曲风连接地址| | pid | 同上 | 输出父级id | | description | 同上 | 曲风描述 | | cover_url| 同上|曲风封面地址| | create_time | 同上 | 添加时间 | | update_time | 同上 | 更新时间 | ### tag 音乐标签 循环输出音乐标签数据集 调用方式: ~~~ <ul> {JY:tag result="v" 属性名称="属性值" limit="12" order="add_time"} <li><{$v['name']}></li> {/JY:tag} </ul> ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | genre | 任意字母 | 自定义定义循环结果集变量名称 | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20 之间的数据 | | order | id | 详见下方说明 | 指定递减排序方式查询数据 | | group | id | 标签组ID | 遍历指定父级分类下曲风,属性出现必须指定值 | | cache | 无 | 数字 | 缓存时间单位秒 | >[info] tag标签 order属性可以设置的值有: add_time , 号隔开 | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | id | `{$v['id']}` | 输出标签id| | name | `{$v['name']} ` | 输出标签名称| | url | `{$v['url']} ` | 输出标签连接地址| | count | 同上 | 输出标签下所有歌曲数 | | create_time | 同上 | 添加时间 | ### member 会员标签 循环输出会员数据集 调用方式: ~~~ <ul> {JY:member result="v" 属性名称="属性值" limit="12" order="reg_time"} <li>{$v['nickname']}</li> {/JY:member} </ul> ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | result | member | 任意字母 | 自定义定义循环结果集变量名称 | | limit | 10 | 数字 | 指定查询结果数量:如20 会 10,20 将会输出第10-20 之间的数据 | | order | id | 详见下方说明 | 指定递减排序方式查询数据 | | cache | 无 | 数字 | 缓存时间单位秒 | >[info] tag标签 order属性可以设置的值有: reg_time desc | 输出属性 | 输出方式 | 输出说明 | | -- | -- | -- | | uid | `{$v['uid']}` | 输出会员id| | nickname | `{$v['nickname']}` | 输出会员名称| | url | `{$v['url']} ` | 输出会员连接地址| | songs | 同上 | 输出会员所有歌曲数 | | listens | 同上 | 输出会员所有歌曲试听数 | |follows | 同上 | 输出会员所有关注数 | | fans | 同上 | 输出会员所有粉丝数 | | sex | 同上 | 输出会员性别 0:男 1:女 | | birthday | 同上 | 输出会员生日 | | qq | 同上 | 输出会员qq | | signature | 同上 | 输出会员个人签名 | | reg_time | 同上 | 添加时间 | ##以下全局通用标签 ### count 统计标签 输出对应数据总数量 调用方式: ~~~ {JY:count name="album" /} ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | name| songs |字母|不填写将会输出歌曲总量,可填参数:album,artist,member,genre,tag... | >[info] 注意此标签 无需闭合 也就是不需要</JY:count>,仅仅输出数字 ### 下一个标签 循环输出下一个数据集 调用方式: ~~~ {JY:next result="c" name="album"} <a>{$c['name']}</a> .... {/JY:next} ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | name| songs |字母|输出那个类型,可填参数:album,artist,member,genre,tag... | >[info] 注意此标签,在默认各个详细页面下比如歌曲详细页面下可以不用填写data的值 程序自动获取, 输出的内容请参照 以上标签的输出 ### 上一个标签 循环输出上一个数据集 调用方式: ~~~ {JY:prev result="p" name="album" } <a><{$p['name']}></a> ..... {/JY:prev} ~~~ | 属性名称 | 默认值 | 值类型 | 说明 | | -- | -- | -- | -- | | name| songs |字母|输出那个类型,可填参数:album,artist,member,genre,tag... | >[info] 注意此标签,在默认各个详细页面下比如歌曲详细页面下可以不用填写data的值 程序自动获取, 输出的内容请参照 以上标签的输出 ### nav 导航标签 循环输出导航标签数据集 调用方式: ~~~ <ul> {JY:nav name="v" tree="1"} <li> {$v['title']} //如果子导航不为空循环子导航结果 {notempty name="v['_child']"} {JY:loop name="v['_child']" result="c"> <li>{$c['title']}</li> {/JY:loop} {/notempty} </li> {/JY:nav} </ul> ~~~ >[info] 导航标签比较简单 就这样调用即可 >[success] 如果你觉得不足以满足你要求我们还内置 很多函数供标签调用终有一种函数是你想要的,下节我们会讲 内置的一些,函数和调用方式