标 题 - Drupal 社区团队

Download Report

Transcript 标 题 - Drupal 社区团队

Drupal建站布局介绍
Drupal 社区团队
流云
2012.09.12
提
•
•
•
•
纲
Panels
区块配置
模板布局
Context模块
2
Panels
• 使用Panels模块可以让你不用写任何代码就可以
创建定制化的页面,已有多种排版格式供你选择:
3
Panels
• 使用图形化界面工具来操作,为各版块填充内容
4
Panels
• 可选内容来源丰富多样
5
Panels
• 适合用Panels的情形
首先考虑设计图的内容结构是否适合
1.中小型网站,快速建站
2.大型网站,多个特殊排版页面,维护方便
• 不适合用Panels的情形
1.设计图内容结构不适合
2.对页面HTML代码的质量要求高
3.大型网站,只有首页需要特殊排版
6
区块配置-缺点
1.区块不能复用
2.不能满足复杂的布局环境
3.维护性差
7
模板布局-Page-front
• 适用情形:
大型网站只有首页需要特殊排版。
或其它不适合用Panles的情形。
8
模板布局-按照内容类型布局
• 适用情形:
某些内容类型的节点页面,需要特殊排版
• 参考文章:
按照内容类型设计页面布局:
http://drupalchina.cn/content/drupaltheme-zhao-nei-rong-lei-xing-she-ji-yemian-bu-ju
9
Context-Drupal建站布局利器
• 为什么要用它?
为了系统合理的搭建并管理整站的布局方案
• 关于此模块的简单介绍:
常用用途:
让不同的页面根据不同的条件显示不同的区块
更详细的介绍:
http://www.drupalla.com/project/context
10
Context-理解
像理解rules一样理解context:
• 事件:访问页面时,
• 条件:当页面的上下文环境满足设定的条件,
• 行为:触发一个显示类的行为。
题外话:
• 规则(rules)模块允许网站管理员基于正在发生
的事件,定义有条件的行为,详见:
• http://drupal.org/project/rules
11
Context-复杂应用范例
需求:
区块A和B的显示位置是区域sidebar-right,并要
求除了在内容类型-新闻(news)的节点页面不
显示之外,其它页面全部显示。
解决方案:
首先为内容类型新闻设置特定的路径别名格式:
news/[title],然后->(见下页)
12
Context-复杂应用范例
1.选中 Require all conditions
2.选择Sitewide context(全局)
.选择Sitewide context(全局)
13
Context-复杂应用范例
3.选择Path,设置:~news/*(反选)
14
Context-复杂应用范例
4.设置区块显示-选择区块行为
15
Context-复杂应用范例
4.设置区块显示-挑选区块放入不同区域
16
Context-其它有用的行为
• Menu
当正在访问的页面满足当前context设置的条
件,可以让某个菜单显示为激活状态。
17
Context-其它有用的行为
• Theme HTML
为body标签添加CSS类名(修改$classes变量)
18
Context-其它扩展模块
• Context Plugin Extras
•
•
•
•
•
•
•
http://drupal.org/project/context_extras
Context Add Assets
Context Block Classes
Context content profile
Context error
Context GeoIP
......
19
Context-其它扩展模块
• Content Profile Type condition
• http://drupal.org/project/context_content_profile
20
演讲者简介
常用昵称:流云
真实姓名:贾士凯
Q - Q:879078689
个人博客:http://www.incollege.cn
作者简介:
从事Drupal开发三年有余,具有颇
为丰富的Drupal项目开发经验,擅长
Drupal项目的架构,主题及模块开发。
对于架构设计和代码编写都追求极高的
规范性和维护性,现暂居北京做全职
SOHO,梦想是将来能运营自己的产品
。
21
谢 谢!
官方主页:http://www.drupalct.org
腾讯微博:http://t.qq.com/drupalct
新浪微博:http://weibo.com/drupalct
22