Drupal主题文件分析
一个主题就是使用一堆文件来定义网站的外观你不仅可以制作一个或者多个“子主题”也可以只改原主题的某一部分。而这一切仅要求创建info文件当然还是有必要创建其他文件否则新主题就会变得无意义了。下面图片展示了一个典型主题或者“子主题”中各文件的作用域。
Drupal6
Drupal7
.info(require)
Drupal主题必须要有一个info文件这个文件用来预设mate数据,css文件,JavaScripts,块区域和很多可以设置的属性这些属性都是可选的。
主题内部定义的主题名字也是由info文件定义的例如如果命名为drop info那么Drupal系统就视drop为主题的名字在Drupal5之前的版本主题的名字都是由主题文件夹定义的例如/s ites/al l/themes/mytheme mytheme就是主题名字。info文件在Drupal6之前是没有的 以前仅用于模块之中
模版文件template files(. tp l .php)
这个模板使用(x)html符号和php变量除了一般输出html数据之外一些情况下也可以输出成其他格式例如 xml ress等等。每个内置tpl php模板文件都会输出页面中的某一块区域但在一些情况下可以使用"suggestions"方法令一个模板文件同时替换输出几个模板文件区域。这是可选的意思是说假如你的主题文件夹里没有这些模板 drupal就会直接返回内置模板输出区域内容。为了防止令这些文件产生复杂的罗辑关系大多情况下模板文件应直接使用(x)html符号和php变量。
内置模板一般存在于系统和模块文件夹里例如/sites/al l/modules或者/modules/ 你可以从这些文件夹里复杂这些模板文件然后粘贴到你的主题文件夹里例如
/sites/al l/themes/mythemes/template下 这样你就可以尽情去修改成你的版本了。
注意 drupal的themes registry会缓存你的主题变量和数据因此当你增加、删除、修改模板或者改变主题函数之后你都应该清除缓存使更改生效。template.php
这个文件是用于输出内容之前进行处理数据和判断逻辑条件。这个template php并不是必须的但是为了使tpl php文件整齐易打理建议创建一个它不仅可以在输出内容之前使用函数产生变量、合并到模板当中也可以自定义函数、复写主题的内置函数还可以令原始数据进行组织后再输出。这个文件必须以php的开始符号 《?php开始但不一定以php的?》结尾我的建议是直接把它忽略了。
子主题(sub-themes)
表面看来子主题跟别的主题没什么不一样唯一不同就是他继承了“父主题”所有内容。如果你想创建一个子主题那个info文件还是必须要有的这个文件就是用来指定“父主题”然后从“父主题”那里继续内容。有意思的是一个子主题也可以是另一个子主题的父主题意思就是说主题可以有多级继承而且没有级数的限制。
在drupal5之前子主题必须创建于父主题文件夹内但之后就不再需要这么做了
其他
不做Lo go和主题预览图对主题功能没什么影响但我建议你做出来。特别是你如果想到
Drupal.org或者本站分享你的主题别人安装之后在主题管理页面会出现你的主题预览图假如
没有就会变成空白 如果在网民使用网站的切换主题功能时如果有权限的话 也会在用户
设置页面的主题选项中出现你的主题预览图。可以前往S c ree nsho t g u ide lin es查看更多相关信息。 为了提供管理页面的UI或者“特写(fe atures)”包括LOGO、搜索、任务等等你可以使用
“theme-settingsphp“这个文件这是一个高级的功能想了解更多请查看Advanced s ettings.手
册。
如果你想使用颜色模块你可以到"co lo r"文件夹内探索里面有一个必须的"c o lo r.in f"文件
还有其他支持文件。
如果你想修改系统的核心主题你可以建一个子主题又或者把核心主题里的文件复制到你
的主题文件夹里。我非常不支持你直接在内置的核心主题Bartik,Gar lan,minn e li中修改原文件因
为这些文件是用在系统安装和升级过程中。
所有的非核心主题或者自制主题都必须放到/s ites/all/themes/之下 以此把自制主题与核心主
题分开。如果你计划在一个Drupal代码上运行多网站建议你在每个站点上使用独立的主题而
不是所有站点使用同一主题如果想知道更多关于“多网站”的信息可以查看Multi-sitein st allat ions.
Letbox 云服务商在前面的文章中其实也有多次介绍,这个服务商其实也算是比较老牌的海外服务商,几年前我也一直有使用过他们家的VPS主机,早年那时候低至年付15-35美元左右的VPS算式比较稀缺的。后来由于服务商确实比较多,而且也没有太多的网站需要用到,所以就没有续费,最近这个服务商好像有点活动就躁动的发布希望引起他人注意。这不有看到所谓的家中有喜事,应该是团队中有生宝宝了,所以也有借此来发布一些...
优林怎么样?优林好不好?优林 是一家国人VPS主机商,成立于2016年,主营国内外服务器产品。云服务器基于hyper-v和kvm虚拟架构,国内速度还不错。今天优林给我们带来促销的是国内东北地区哈尔滨云服务器!全部是独享带宽!首月5折 续费5折续费!地区CPU内存硬盘带宽价格购买哈尔滨电信2核2G50G1M53元直达链接哈尔滨电信4核4G50G1M83元直达链接哈尔滨电信8核8G50G1M131元直...
现在宝塔面板真的是越来越过分了,删除文件、删除数据库、删除站点等操作都需要做计算题!我今天升级到7.7版本,发现删除数据库竟然还加了几秒的延时等待,也无法跳过!宝塔的老板该不会是小学数学老师吧,那么喜欢让我们做计算题!因此我写了个js用于去除各种计算题以及延时等待,同时还去除了软件列表页面的bt企业版广告。只需要执行以下命令即可一键完成!复制以下命令在SSH界面执行:Layout_file="/w...