在上篇中主要详细的叙述了代码的编写,这一篇主要讲解配置。可能有人会有疑问,在上一篇的代码里只有对数据的展示部分的编写,并没有提供数据源。这就是Orchard的强大之处,数据源是通过在后台配置的,那有人又会问了数据存放在哪里呢?在这里我自己定义了ContentPart 和ContentType来存储放自己想要展示的数据,怎样才能让上一篇的布局代码展示自己存储的数据呢? 首先需要创建展示的数据,数据字段定义如下图:

因为这个布局比较简单只是展示一些新产品的图片,所以我把展示的产品图片都放在一条记录里面,现在要展示的记录已经准备好啦,接下来我需要定义Queries让Widgets能够知道如何展示我们的数据,Queries需要配置有三部分如下图:

第一个配置项Filters是用来限定数据的范围,第二个配置项Sort Criteria用来规定数据展示的排序,第三个配置项Layouts是来定义数据展示的形式,在这里需要注意的是在点击Add a new Layout 链接时系统会让你选择布局,这时就会出现我们在上篇文章里定义布局名称ProductsList,还记得他是在哪里定义的吗?是在ProductsListLayout类的 Describe方法中。

ProductsListLayoutForms表单具体配置如下图:

到此我们已经配置好了需要展示的数据源和怎样展示,接下来我们需要让其在首页显示,点击Orchard后台管理的左侧导航的Widgets,进入Widgets的配置界面,把当前布局定义调整到首页,在首页BeforeMain上新增一项Widget配置如下图:

到此配置部分也就结束了。Orchard中widgets是不是有些像asp.net webForm里的webpart。可它没有webpart使用起来方便,不过给我们更多的发挥空间,我也就是抛砖引玉,如果大家感觉文章对你有点帮助,请点击一下本站www.ubof.cn

在Orchard CMS Theme 用代码定义布局Widgets 配置的更多相关文章

  1. 在Orchard CMS Theme 用代码定义布局Widgets

    因为公司业务需要,经过本人几个月尝试,使用Orchard CMS 开发一个简单的企业门户(地址是http://www.ubof.cn).在刚开始接触Orchard CMS,对于个性化的网页布局不知道怎 ...

  2. [Orchard CMS系列] 创建主题(Writing a new theme)

    本文需要对Orchard CMS有基本了解. 开启模块 code generation 创建新的主题工程骨架 Codegen theme MyTheme 创建主题样式 src\Orchard.Web\ ...

  3. Orchard CMS中如何打包不带源码的模块

    在Orchard CMS的官网已经提供了文档说明如何打包,但是如果使用它的打包方式,打好的nuget包是带源代码的.如果是为开源系统写模块,不需要关注源代码是否可见.但是如果是用Orchard CMS ...

  4. SharePoint 2013 图文开发系列之代码定义列表

    在SharePoint的开发中,用Visual Studio自定义列表是经常会用到的,因为很多时候,我们并不会手动创建列表,而手动创建列表在测试服务器和正式机之间同步字段,也很麻烦,所以我们经常用代码 ...

  5. WPF中通过代码定义模板

    WPF中可以再XAML中定义模板,也可以通过C#代码定义模板,通过代码可能更清楚的看清其逻辑,而且代码的好处就是可以随时动态的去操作,而在XAML中定义的一般都是静态的. //控件呈现的显示内容1(这 ...

  6. SharePoint 2013 设置自己定义布局页

    在SharePoint中.我们常常须要自己定义登陆页面.错误页面.拒绝訪问等:不知道大家怎样操作,曾经自己常常在原来页面改或者跳转.事实上SharePoint为我们提供了PowerShell命令,来改 ...

  7. 在 Windows Azure 网站 (WAWS) 上对 Orchard CMS 使用 Azure 缓存

    编辑人员注释: 本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 如果您当前的 OrchardCMS 网站在 Windows Azure 网站 ...

  8. Orchard CMS -Migration文件更新后数据库不更新的问题 new properties not updating after migrationData migration is not working?

    Orchard CMS - new properties not updating after migrationData migration is not working? If your mapp ...

  9. cucumber java从入门到精通(2)用代码定义步骤

    cucumber java从入门到精通(2)用代码定义步骤 上一节里我们定义了feature文件,feature文件就是自然语言描述的用例文件,它有一定的章法,具体的潜规则是: 使用Feature关键 ...

随机推荐

  1. 【转】玩玩负载均衡---在window与linux下配置nginx

    最近有些时间,开始接触负载均衡方面的东西,从硬件F5再到Citrix Netscalar.不过因为硬件的配置虽然不复杂,但昂贵的价格也让一般用户望而却步(十几万到几十万),所以只能转向nginx,sq ...

  2. 数据库服务器的监控 赛门铁克 Veritas i3 APM 查找指定时间段最耗服务器资源的TopSQL

  3. Leetcode 309.最佳买卖股票时机含冷冻期

    最佳买卖股票时机含冷冻期 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格.​ 设计一个算法计算出最大利润.在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不 ...

  4. codeforces #299 div 2

    (总算是5题都做完了- -) 暂时做了4题,先放一下有时间做最后一题(当然如果我真的能做出的话...)(看了大神的代码总算是理解了E题,做完发现也没那么难,果然想出一个思路的过程对于我这种弱渣来说还是 ...

  5. 【模板】manacher算法

    传送门 某篇好文章 #include <cstdio> #include <cstring> #define N 22200000 #define min(x, y) ((x) ...

  6. [codevs3622] 假期(单调队列)

    传送门 首先考虑暴力做法,可以先求一遍前缀和 sum,然后ans = max(ans, sum[i] - sum[k]) (i - q <= k <= i - p) 但这个肯定会超时. 仔 ...

  7. hiho一下 第四十五周 博弈游戏·Nim游戏·二 [ 博弈 ]

    传送门 题目1 : 博弈游戏·Nim游戏·二 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Alice和Bob这一次准备玩一个关于硬币的游戏:N枚硬币排成一列,有的正面 ...

  8. POJ 1753 Flip Game【枚举】

    题目链接: http://poj.org/problem?id=1753 题意: 由白块黑块组成的4*4方格,每次换一个块的颜色,其上下左右的块也会被换成相反的颜色.问最少换多少块,使得最终方格变为全 ...

  9. loj6165 一道水题(线性筛)

    题目: https://loj.ac/problem/6165 分析: 最直接的想法就是把1~n的所有数分解质因数,然后每个素数的幂取max 我们首先来看看一共可能有哪些素数? 实际上这些素因数恰好就 ...

  10. PostgreSQL 9.3.1 中文手册(解决关键词报错的问题)

    http://www.postgres.cn/docs/9.3/sql-keywords-appendix.html