游客发表
海洋CMS的海洋影视模板,说白了就是视模一套已经写好的前端页面文件,你把它丢进模板目录,海洋后台绑定一下,视模网站就能跑起来。海洋但很多人卡在第一步——下载完模板,视模打开一看,海洋里面几十个文件,视模根本不知道从哪下手改。海洋
我最早接触海洋CMS是视模2018年,那时候想搭个个人影视站,海洋试过织梦、视模苹果CMS,海洋最后选了海洋。视模原因很简单:它的海洋模板标签够直白。比如你想调最新10部电影,直接写 { maccms:vod num="10" type="1" order="desc" by="time"} 就行,不用去翻半天文档。这个标签里的num是数量,type是分类ID,order是排序方向,by是按什么排。一眼就能看懂。
但模板文件的结构得先理清楚。海洋CMS的模板通常放在 /template/ 目录下,每个模板一个文件夹。进去之后你会看到 index.html、list.html、detail.html、play.html 这些核心文件。别被文件名骗了,它们不一定是纯HTML,里面混着CMS自己的标签语法。比如 detail.html 里控制播放地址列表的那段,通常是这样的:
{ maccms:playlist id="1"} <li><a href="{ $vo.url}">{ $vo.name}</a></li> { /maccms:playlist} 这里 { maccms:playlist} 是循环标签,id="1" 对应后台播放组的编号。里面的 { $vo.url} 和 { $vo.name} 就是每条播放地址的链接和名称。你改样式就改 <li> 外面的class,改结构就动里面的标签嵌套。别去碰 { $vo.xxx} 这种变量,除非你确定后台字段名对得上。
有个坑我踩过:模板里的CSS和JS路径。很多下载来的模板用的是绝对路径,比如 /static/css/style.css,但你网站可能装在子目录里,或者开了CDN。这时候页面样式会全乱。解决办法是打开模板文件,把 href="/static/ 改成 href="{ $maccms.path}static/,让CMS自动补全路径。这个 { $maccms.path} 是海洋CMS的内置变量,代表网站根目录。
再说广告位。影视模板通常会在 index.html 的轮播图下面、列表页的每页顶部、播放页的播放器上方留几个广告位。你直接搜 <div class="ad"> 或者 gg 这样的关键词就能找到。替换成自己的广告代码就行。但注意,有些模板把广告写死在JS里,比如用 document.write 输出,这种就得去对应的JS文件里改。
播放器这块得单独提。海洋CMS默认用的是 player.js 或者 ckplayer,模板里通常写 { $player} 来调用。如果你想换播放器,比如换成DPlayer,不是改模板就完事,还得去后台“播放器”设置里改解析接口和播放器代码。模板只负责输出容器,真正干活的还是后台配置。
采集数据进来之后,模板里的图片字段是 { $vo.vod_pic}。有些模板会加懒加载,写成 data-original="{ $vo.vod_pic}",然后靠JS替换src。如果你发现封面图不显示,先检查这个属性名对不对,再去看JS有没有正常加载。
最后说个实际案例。上个月帮朋友改一个海洋CMS模板,他的需求是:首页只显示最近7天更新的电影,而且每部电影要显示“更新至第几集”。第一个需求用 order="desc" by="time" 再加个时间过滤就行,但海洋CMS的标签没有直接的“最近7天”参数。我的做法是在模板里用PHP写个时间判断,或者干脆用 { maccms:vod num="20" order="desc" by="time"} 取20条,然后在循环里用 { if condition="$vo.vod_time gt $maccms_time-604800"} 来过滤。第二个需求更简单,详情页有 { $vo.vod_remarks} 字段,列表页直接调这个字段就行,但前提是采集规则里把“更新至xx集”写进了remarks字段。
海洋CMS的模板改起来不难,难的是搞清楚每个标签背后对应哪个数据表字段。多试几次,把 { $vo} 打印出来看看(用 { $vo|var_dump} 或者 { $vo|print_r}),比看任何文档都管用。
友情链接