开源框架DNN使用01
我先简单地介绍下我个人对于DNN的浅显理解吧。
我觉得对于刚接触的人来说首先理解DNN的原理,大框架是很重要的。它整个网站其实是没几个页面的,从源码上就可以看出,
一个Default页、一个Error页、keepalive页。最重要,最主要的,当然就是default了。可以说不管你之后创建多少个页面,每个页面上有多复杂的内容,其实都是放在这一个页面上的。你后续自己创建的页面也不过是他的用户控件罢了。它就是封装无数个用户控件,可以说你所有在网站上看到的,都是一个一个的用户控件,你可以对它直接使用,也可以进行二次开发。随意。
接下来我就开始介绍下使用咯。
用host登陆进去之后,首页是这个样子的(选了默认template的话)注:我都是用的host账户登陆的哦
一、如何增删改页面?
1.1新增页面
会弹出一个框,就是填一些页面信息之类的,我就不多说了。需要注意的地方就是页面权限要设置一下,每个新增的页面都要设置一下的哦。
1.2删除页面
如果是删除页面,直接点击delete就ok了。需要注意的就是如果误删了,可以去andmin->recyclebin 找到就可以了,DNN网站是自带的有回收站的,关于这个回收站,它也是一个用户控件啦,是它定义好的,如果你把回收站也误删了,可以在module->add new module->recyclebin,这个回收站模块是只属于管理员的,其他人是添加不了的。
1.3 修改页面
修改页面信息的话,你可以点击Page Settings ,不过他只可以让你修改页面的名称、样式、模块名称之类的,总之里面的具体内容的话,是只能动模块里面修改的。
二、增删改模块
2.1新增模块
Add New Module就是添加一个新的模块 ,Add Existing module就是添加一个已经存在的模块,也就是你曾经添加过的模块(在当前页或者其他页的都可以),需要注意的就是,通过第二种途径添加的模块,会连动的哦,也就是你改当前的,会同时影响你之前添加的。
Create module是DNN开发的一个供开发人员进行使用的自定义module的一个用户控件。
2.2删除模块
如果是要删除页面上的某一个模块,点击Edit this Page 使得页面处于可编辑状态,你会看到页面上是一个一个的模块组成的,你可以单独对每个模块进行编辑里面的内容或者删除。
2.3修改,也就是先点击Edit page 是页面处于可编辑状态,然后点击你要修改的模块右上方所呈现的那个Eit-editcontent,里面也就是对html的编辑了,不多说。
-----------------------------------以上对页面以及模块的更改都是在当前页进行操作的,如果你是管理员的话,管理员永远是老大,你可以在admin->page mangement对页面,以及各个模块进行批量编辑啦。(鄙人推荐这种)
二、接下来说一下黑框栏里的User吧
如字面意思,就是新增用户、管理用户、管理角色。当然这个模块是指对管理员可见的。
具体操作我就不多说了。关于角色,我想说一点就是如果你是要把网站做成多语言,那么后续你本地化的到时候,系统会自动生成各个语言的翻译角色的(后面我会专门说一下这个本地化的问题的)
三、Tools
工具栏里有三个按钮,一个是上传文件、清除网站缓存、回收程序池。功能我就不用说了,大家都懂得。
四、Host栏
这一栏的话,其实具体用起来的话,没有几个模块是你用得到的。
Host-Host setting还是有点用的。需要注意的就是有一个重启应用程序的键。
其他的自己研究研究就好了。
五、admin栏
admin也就是管理员以及超级账户或者由管理员角色的用户可以看到的了
1、admin-file management 不用多说啦,就是对你网站文件的管理啦,增删改,创建文件夹,whatever you want .
2、admin-page management 就是对页面以及其上的模块的管理。
左侧是页面列表,点击的话右边会显示出页面的信息。
直接右击页面名称,也可以直接对其更改的
需要注意的就是每个页面名称的小图标是代表不同含义的
从上往下依次是:
1网站首页
2页面对任何人可见
3只对注册用户可见
4对指定角色可见
5只对管理员可见
6页面不显示在菜单中
7页面不可用
3、admin -site setting
比较需要指出的就是设置网站网址的地方啦
还有就是对设置网站皮肤的地方
Site skin 是设置网站的皮肤。你如果没有花钱买的话,那就只能那个是默认的咯。或者你也可以自定义一套皮肤。
site container, 是网站上容器的皮肤,每个模块都是放在container里面的。
edit skin 就是编辑状态下网站的皮肤。
edit container 就是编辑状态下容器的皮肤。
4 admin-languages 这里才是我想说的地方。现在什么都要国际化了,网站也不例外。
我就讲解下如何添加新的语言以及如何实现本地化吧。其实也很简单的。
add new language.然后随便你选择你要的语言,之后你的语言就会出现在列表中。
Enabled 勾上表示该语言可用。
edit没什么讲的
Static resources便是修改资源文件的地方了。然后之后你就会发现海量的资源文件,如果你要找一个字段,那真的是超级难找,是不是很恶心,是不是很恶心?没关系的,还好还有别的方式,现在是不是有一种觉得世界好美好的赶脚。
DNN有个好处是可以自动本地化,如果你已经安装了你要的语言资源文件(每个字段都是尤其对应的资源文件的),那么你本地化完,你的页面内容就直接是native内容了。
它的结果就是会在每种语言下都创建相同数量的页面,也就是把你系统默认语言下的所有页面都copy。
如果你要开始本地化了,你要决定你的系统默认语言到底是什么,因为你一旦点了本地化,就不可以再更改了哦。下面就开始本地化吧。
首先找到Host->host setting->other settings ->allow content localization.勾上它
另外如果你host email 没填,那就在basic setting填一下吧
保存之后。。。。。。。。在找到admin->languages。请相信你的眼睛,右上角会出现一个button ----------enable localized content
点击Enable LocalizedContent
接着点击 Enable Lcalized Content
耐心等待就好了。
接下来选择其他语言你就可以看到你的网站呈现这样子了
这样就可以通过直接对页面进行本地化了。
对模块进行本地化的话,就直接编辑那个页面上的模块就可以咯。
开源框架DNN使用01的更多相关文章
- 开源框架DNN简介以及安装
donetnuke 是一款免费的开源cms框架,目前也有收费版,不过免费版也可以适应大家大部分的需求.我前些阵子是老板让我在20天内,做好一个官网并且发布,并且指定使用dnn这个框架,考虑到又可以学习 ...
- Pyhton开源框架(加强版)
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/39057201),请尊重他人的辛勤劳动成果,谢谢! 本篇文章 ...
- Android开源框架:Universal-Image-Loader解析(一)
之前花了一些时间,好好看了下这个框架,于是决定再重新梳理一下,把整个处理方法和流程过一遍,俗话说:温故而知新嘛 关于Universal-Image-Loader此框架的各种优点,稍微介绍下,网上应该也 ...
- Android开源框架ImageLoader的完美例子
本文转载于:http://blog.csdn.net/wwj_748/article/details/10079311 2013年8月19日开源框架之Universal_Image_Loader学习 ...
- Android(java)学习笔记214:开源框架的文件上传(只能使用Post)
1.文件上传给服务器,服务器端必然要写代码进行支持,如下: 我们新建一个FileUpload.jsp的动态网页,同时我们上传文件只能使用post方式(不可能将上传数据拼凑在url路径下),上传数据Ap ...
- 2018年终总结之AI领域开源框架汇总
2018年终总结之AI领域开源框架汇总 [稍显活跃的第一季度] 2018.3.04——OpenAI公布 “后见之明经验复现(Hindsight Experience Reply, HER)”的开源算法 ...
- 数据库开源框架GreenDao的使用解析
数据库开源框架GreenDao的使用解析 1,GreenDao概述 1),greenDao是一个当下十分火热的数据库开源框架,或者说是一个帮助Android开发者将数据存到SQLite中的一个开源项目 ...
随机推荐
- Windows下获取高精度时间注意事项
Windows下获取高精度时间注意事项 [转贴 AdamWu] 花了很长时间才得到的经验,与大家分享. 1. RDTSC - 粒度: 纳秒级 不推荐优势: 几乎是能够获得最细粒度的计数器抛弃理由: ...
- C++:对象声明
(一)类与对象的关系: c++把类的变量叫做类的对象,对象也称类的实例 (二)对象的定义: 1.在声明类的同时,直接定义对象,即在声明类的右花括号“}”后,直接写出 属于该类的对象名表.例如:clas ...
- proc_dir_entry
struct proc_dir_entry { unsigned int low_ino; unsigned short namelen; const cha ...
- th固定 td滚动的表格实现
为什么这样? 体验好 原理 通过两个表格,使其th td 对应,产生一种错觉. 代码 1.html <div class="content"> <div clas ...
- 函数fsp_alloc_from_free_frag
/**********************************************************************//** Allocates a single free ...
- ElasticSearch Remote Code Execution (CVE-2014-3120)
Elasticsearch is a powerful open source search and analytics engine. The vulnerability allows attack ...
- Jqgrid入门-显示基本的表格(一)
首先对Jqgrid网格插件做个简要的说明.在众多的表格插件中,Jqgrid的特点是非常鲜明的. 特点如下: 完整的表格呈现与运算功能,包含换页.栏位排序.grouping.新增.修改及 ...
- [POJ 3498] March of the Penguins
March of the Penguins Time Limit: 8000MS Memory Limit: 65536K Total Submissions: 4378 Accepted: ...
- cocos2d-x之 CCSpriteBatchNode 用法总结
例子1: CCSpriteBatchNode* batch = [CCSpriteBatchNode batchNodeWithFile:@"table.png"]; ...
- PNG文件结构分析 ---Png解析
PNG文件结构分析 ---Png解析 为了实现更高级的应用,我们必须充分挖掘PNG的潜力. PNG的文件结构 根据PNG文件的定义来说,其文件头位置总是由位固定的字节来描述的: 十进制数 13 ...