站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
EZ Publish/EZ Publish Pagelayout页头信息
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
{{EZ Publish top}} == pagelayout综述 == [[pagelayout]] 是主模板。除了其他以外内容外,它决定了站点的全局外观。pagelayout 模板必须被命名为"pagelayout.tpl"。它必须被放置在某个界面的"templates"目录下。如果eZ Publish 在当前界面(有[[站点]]入口指定)中找不到这个模板,它会使用备选界面中的第一个匹配的pagelayout 模板。下图演示了"example"界面中的pagelayout 模板的位置。 [[Image:ezpublishPO1.jpg]] Pagelayout 包含[[HTML]],[[HEAD]] 和[[BODY]] [[标签]](外围HTML 框架)。此外,它还决定了站点的全局外观。出了其他用途外,它被用来描述所有页面的视觉结构(主版式,[[logo]],主菜单,页脚等)。下例演示了一个最基本的pagelayout。 <pre> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <style type="text/css"> @import url({'stylesheets/core.css'|ezdesign}); @import url({'stylesheets/debug.css'|ezdesign}); </style> {include uri='design:page_head.tpl'} </head> <body> {$module_result.content} <!--DEBUG_REPORT--> </body> </html> </pre> '''文档类型''' pagelayout 的第一行用来定义页面的文档类型。根据HTML 和[[XHTML]] 标准,[[DOCTYPE]]("document type declaration"的缩写)用来告知[[浏览器]]与语法验证引擎所使用的(X)HTML 文档类型。这个信息必须被放置在每个[[WEB]] 页面的第一行,因此pagelayout 的第一行必须是DOCTYPE。为了确保页面被正确渲染与页面的兼容性,DOCTYPE 定义是必不可少的一个关键元素。一个DOCTYPE包含一个完整的[[URL]] 字段,这个URL 告知浏览器用遵循标准的模式渲染页面,根据标准来对待(X)HTML,[[CSS]] 和[[DOM]]结构。缺失的,不完整的或过期的DOCTYPE 会导致主流的浏览器运行于所谓的“扭曲模式”。在这种模式下,浏览器假定文档是基于老式的,不规范的标记和代码以及20 世纪后期混乱的业界规范来书写的。换言之,页面很可能不会根据现有的工业标准来渲染,因而当然也不规范。 '''html 标签''' HTML 标签封装了真实WEB 页面的标记内容。处标签本身外,上列中的HTML 标签还包含了一个到XHTML 规范的URL。XHTML 是一个现存和未来文档的类型和模块的家族。它可以被用来重新实现,简化和扩展HTML4。XHTML 家族基于[[XML]],这意味着他们可以与基于XML 的用户[[代理]]联动。 在处理文档时,确定内容所使用的自然或官方语言通常会比较有用。"lang"和"xml:lang"属性用来指定整个HTML 元素的语言。xml:lang 的属性值的优先级更高。语言值应该被设置为整个站点使用的语言。语言代码在"[[ISO]] 3166-1"(以及与之相关的ISO 3166-1-alpha-2)标准中定义。 '''head 标签''' head 标签包含文档本身的信息。这里的信息不会在浏览器中显示。只有title 标签的内容会在浏览器窗口的标题栏内显示。head 标签通常包含关于诸如:使用哪些CSS 文件,文档的简介,关键字之类的信息。 '''式样表''' 上列中的pagelayout 用到两个CSS 文件:"core.css"和"debug.css"。大括号封装的代码为eZ Publish 特有的代码。引号里的文本通过管道操作符传送给"ezdesign"模板操作符。这个操作符将当前界面(在"SiteDesign"中指定)目录的路径添加到文本之前。这个技术确保指向CSS 文件的路径总是正确的,与所使用的访问方法无关。例如:如果当前的界面为"my_design"并且它包含一个CSS 文件"example.css",系统会生成以下的输出。 @import url("/design/my_design/stylesheets/example.css"); "core.css"和"debug.css"属于"standard"界面。不需要在自定义界面中包含这些文件。如果eZ Publish 在当前/自定义界面中找不到指定的文件,它会自动使用"standard"界面中的文件。因为备选系统,上例中关于CSS 部分的代码很可能会被生成如下输出: <pre> ... <style type="text/css"> @import url("/design/standard/stylesheets/core.css"); @import url("/design/standard/stylesheets/debug.css"); </style> ... </pre> '''core 式样表''' "core.css"定义了一套用于一般HTML 元素与[[eZ Publish]] 特有的CSS 类的标准风格(字体风格,尺寸,边距,等)。eZ Publish 特有的CSS 类在标准模板中使用。一个站点如果继承使用默认的模板,就应该有"core.css"。否则,缺失的风格定义会导致很多元素无法正确渲染。永远不要修改标准的"core.css"。如果"core.css"中的某些风格不符合需求,可以把一个修改过的"core.css"放置在自定义界面中。当时更好的做法是创建一个新的CSS 文件来重设"core.css"中那些不符合需求的风格。 '''debug 式样表''' "debug.css"包含用于格式化调试信息的风格定义。当调试输出被启用时,调试信息显示在页面底端。"core.css"只在开发过程中需要(特别是需要显示调试信息时),因此它可以在[[网站]]上线后被删除。 '''文档信息''' 系统可以自动生成页面本身的一些信息(标题,[[meta]] 标签,[[关键字]]等)。这可以通过包含页头模板("page_head.tpl")来完成。这个模板位于"standard"界面的"[[templates]]"目录中。如果eZ Publish 在当前/自定义界面中找不到这个模板,它会自动使用"standard"界面中的文件。 '''body 标签''' body 标签以有序的方式定义了文档的主体。文档的主体包含WEB 页面真正内容(文本,图片,等)的标记。eZ Publish 的pagelayout 至少应该包含来自所请求模块的结果。 '''模块结果''' 对于每个[[客户端]]请求,eZ Publish 自动生成一个称为"module_result"的数组。这个[[数组]]只在pagelayout 模板中可用。它包含了所有关于运行的模块,执行的视图,输出的内容等方面的信息。实际的输出(例如:一篇新闻文章的内容)可以通过访问$module_result 数组的"content"元素在pagelayout 中得到显示。语法如下: {$module_result.content} 当生成pagelayout 时,{$module_result.content}会被替换为真正的输出结果。请参阅“[[EZ Publish/EZ Publish Pagelayout变量|EZ Publish Pagelayout变量]]”条目了解更多。 '''调试信息''' 典型pagelayout 模板的最后一部分是一段HTML 注释代码: <!--DEBUG_REPORT--> 如果调试信息被启用,在处理pagelayout 时,eZ Publish 会把这段注释代码替换为实际的调试信息。换言之,调试信息会被作为内容的一部分包含到生成的页面中,因此不会破坏HTML 结构,也不会造成页面的不规范。eZ Publish 的调试输出符合XHTML1.0 Transitional 规范,因而调试输出也是规范的。 == 页头信息 == 标准界面中包含一个页头模板,它可以用来自动生成重要的页头标签(包含在每个页面的head 标签内)。标准页头模板(design/standard/templates/page_head.tpl)的输出包括以下标签: • title 标签 • meta 标签 • link 标签 下例演示了标准页头模板的输出: <pre> <title>Current / Parent / Top - Site name</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="Content-language" content="eng-GB" /> <meta name="author" content="eZ Systems" /> <meta name="copyright" content="eZ Systems" /> <meta name="description" content="Content Management System" /> <meta name="keywords" content="cms, publish, e-commerce, content management, development framework" /> <meta name="MSSmartTagsPreventParsing" content="TRUE" /> <meta name="generator" content="eZ publish" /> <link rel="Home" href="/" title="Front page" /> <link rel="Index" href="/" /> <link rel="Top" href="/" title="Current / Parent / Top - Site name" /> <link rel="Search" href="/content/advancedsearch" title="Search Site name" /> <link rel="Shortcut icon" href="/design/standard/images/favicon.ico" type="image/x-icon" /> <link rel="Copyright" href="/ezinfo/copyright" /> <link rel="Author" href="/ezinfo/about" /> <link rel="Alternate" href="/layout/set/print/content/view/full/64" media="print" title="Printable version" /> </pre> '''title 标签''' title 标签的内容取决于当前显示的位置(内容节点树或系统本身的位置)与站点的名称。当前显示的元素的路径被倒序排列,因此当前元素成为标题的第一部分。路径的各个部分由"/"分割。当某个节点被显示时,路径实际上是当前节点所有祖先节点的名称再追加上当前节点的名称。当某个系统功能被调用时(例如:user 模块的login 视图:"/user/login"),路径很可能是"模块/视图"的倒序排列。站点名称被追加到路径的最后,由"-"分割。站点名称可以在"site.ini"的重设文件中的"SiteName"配置选项中指定。上例演示了当显示一个节点时页头模板的输出。当前节点封装的对象名为"Current"。其他对象的名称为"Parent"和"Top"。站点名称为"Site name"。 '''meta 标签''' 除WEB 页面的真实数据外,页面的HTML 还应包含文档本身的信息。这是通过使用meta 标签来达到的。由meta 标签给出的信息通常不会在浏览器中显示。然而,这些meta 标签的内容会被浏览器和[[检索引擎]]用来对WEB 页面的内容建立索引与排名。标准的页头模板输出最常用的meta 标签。它包括以下三类标签: • [[HTTP]]-EQUIV meta 标签 • 一般meta 标签 • 附加meta 标签 HTTP-EQUIV meta 标签 具有HTTP-EQUIV 属性的meta 标签与HTTP 信息头的作用相同。这些标签通常被用来控制浏览器如何解释文档。这种形式的标签与使用HTTP 信息头的作用相同。某些WEB 服务器会自动将这些标签的内容翻译为真正的HTTP 信息头。页头模板中的HTTP-EQUIV meta 标签确保浏览器(与检索引擎)明了文档使用的字符集和语言。语言和字符集是由eZ Publish 根据站点的语言和字符集自动生成的。 '''一般meta 标签''' 一般meta 标签可以揭示文档本身的信息。尽管规范并没有规定哪些meta 标签必须被包括,包含例如:作者,站点简介,版权声明,关键字等信息确是一种惯例。通过使用"site.ini"重设文件中的"MetaDataArray[...]",站点管理员可以设定一套自定义的一般meta 标签。eZ Publish 将会循环显示这些meta 标签的名称和值。上例演示了没有自定义meta 标签时候,系统默认的输出。 '''附加meta 标签''' 最后一组被标准页头模板设置的meta 标签禁用"智能标签"并揭示了生成输出的软件的名称。 '''link 标签''' head 标签内的link 标签允许可以将文档与其他文档关联起来。这是通过rel 和rev 属性来完成的。"rel"链接用来建立关联,"rev"链接用来建立反向关联。某些浏览器用这些标签来生成快速导航栏。link 标签包含在标准界面的"templates"目录下的"links.tpl“中。标准页头模板使用"links.tpl"模板。标准页头模板的默认输出包含了一组基本的link 标签,可以用来导航到站点的不同部分。下例演示了页头模板生成的标签: [[Image:ezpublishPO2.jpg]] '''link 参数''' 当引入页头模板的时候,可以通过传送参数"enable_link=false()"来禁用这些link 标签。 {include uri='design:page_head.tpl' enable_link=false()} 指向替换/打印机友好版本的link 标签可以在导入页头模板时通过传送参数"enable_print=false()"来达到。 {include uri='design:page_head.tpl' enable_print=false()} ==参考来源== *http://wenku.baidu.com/view/8cf795b665ce05087632138a.html *http://ez.no/eZPublish/New-Release [[category:EZ Publish|E]] {{EZ Publish}}
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:EZ Publish
(
编辑
)
模板:EZ Publish top
(
编辑
)