昨天给DoraCMS添加了友情链接模块,突然发现,把各个模块分开后,添加模块带来很大便利,由于广告模块的功能已经存在,在上面加以改造,就实现了友情链接的功能,下面简单介绍下实现:
1、查看广告模块的 model (Ads.js)
var ads = new Schema({ _id: { type: String, unique: true, 'default': shortid.generate }, mkey : String, //广告位标识 title: String, category: String, // friendlink表示友情链接,默认default为广告 state : {type : Boolean , default :true}, type: { type: String, default: "0" }, // 展示形式 0文字 1图片 date: { type: Date, default: Date.now }, content: String // 内容 });
category 属性可以作为友情链接和广告的区分。
2、查看广告模块新增界面:
3、我们在广告类别下添加一个友情链接的选项,设置value为friendLink,涉及到文件(addAds.ejs):
<div class="form-group"> <label class="control-label col-sm-3">广告类别</label> <div class="col-sm-2"> <select name="" id="" class="form-control" ng-model="formData.category" required> <option value="default" selected>默认分类</option> <option value="friendlink">友情链接</option> </select> </div> </div>
4、后台添加友情链接:
5、接口获取友情链接数据:
getFriendLink : function(){ return Ads.find({'category' : 'friendlink'}); }
6、在 /views/web/public 中新增 friendLink.ejs :
<!--友情链接模块--> <div class="friendLink"> <h3>友情链接</h3> <ul> <%for(var i=0;i<friendLinkData.length;i++){var linkObj = friendLinkData[i].content;var link = eval("(" + linkObj + ")");%> <li><a href="<%=link.link%>" target="_blank"><%=link.title%></a></li> <%}%> </ul> </div>
7、打开首页模板,加入友情链接模块:
<% include public/friendLink %>
加到你需要的位置,注意路径。
8、重启node服务,查看效果: