昨天给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服务,查看效果:
 
 
 
         
            
             
            
             
            
             
            
            