Drupal自带的一些主题设置,可以在管理界面配置。这是大部分网站定义个性化的地方,以及一些其他设置。全局设置页位于“admin/appearance/settings”路径下包含这些设置。当个别主题的设置页面上应用主题设置时,它们将覆盖全局设置。以下章节将详细介绍这些,以及在你的主题什么地方会碰到。
其中一些设置确定是否将位于模板文件中的变量因此输出出来。在图15-6中描绘的设置代表Drupal提供的默认值。这些都可以通过定义主题中的info文件里定义features来覆写,这将在“定义主题元数据”一节中进一步讨论。当在info指定一些功能时,你需要确保包含了所有你将要支持的功能,如只是一个的话,将会覆盖所有Drupal提供的默认值。以下是他们会在info文件中一些设置的快速参考:
features[] = logo
features[] = name
features[] = slogan
features[] = favicon
features[] = main_menu
features[] = secondary_menu
features[] = node_user_picture
features[] = comment_user_picture
features[] = comment_user_verification
图15-6. 全局设置页面
Logo
默认情况下,Drupal会在主题的根目录下寻找一个名为logo.png的文件。另外也有一个选项可以指定一个不同文件的路径作为logo,也可以上传一个logo。当Logo复选框选中时,一个叫做$logo的变量,它的路径将会输出在page.tpl.php里,若没有选中,logo将不会输出。
名字和口号
网站的名字是在安装过程中定义的。站点名字和口号都可以在“admin/config/system/site-information”页面进行修改。在主题设置页,你可以切换他们是否可见。两者都可用在page.tpl.php中,分别为$site_name和$site_slogan。
快捷图标
快捷图标,也称为favicon,是一个Drupal的小图标,出现在地址栏、书签和大多数浏览器的标签。和标志一样,快捷图标可以切换是否可见,也可用自定义的文件。默认的文件是“misc/ favicon.ico”。
在发布和评论中的用户图片
这些设置控制变量$user_picture和变量$picture是否分别在node.tpl.php和comment.tpl.php里输出,从而决定当查看节点和评论时图片是否显示。
评论中的用户验证状态
当用户没有一个验证的账号时,此项将显示在用户名字的旁边“(未验证)”。该文本是在template_preprocess_username()函数中定义,作为变量$variables[‘extra’]打印在theme_username()函数中。见“预处理和处理函数”和“主题函数”部分,了解如何改变它。
主菜单和次级菜单
当主菜单和次级菜单的复选框被选中时,变量$main_menu 和$secondary_menu就会以数组形式包含每个菜单的菜单链接在page.tpl.php中输出。在位于“admin/structure/menu/settings”菜单设置页,你可以选择每个用于哪个菜单。默认情况下,主菜单是用作填充$main_menu源的,可以通过在“admin/structure/menu/manage/main-menu”页来管理。默认的次级菜单源用作用户菜单,可以在“admin/structure/menu/manage/user-menu”页来管理。
这些都是在page.tpl.php中使用theme_links()函数(将在本章稍后介绍)简单的单级菜单输出。
这使得他们很难样式复杂的导航设计时使用。因为往往需要复杂的导航的,很多主题开发人员为导航创建区域和使用的区块来输出菜单,而不是使用这些菜单。我们强烈推荐Menu Block模块(http://drupal.org/project/menu_block),它允许你很容易地去使用菜单做几乎任何东西。
自定义主题设置
自定义主题设置与全局主题设置很相似,它可以由主题或者模块来提供。一个自定义主题设置的例子可以在Garland主题中的garland.info文件里看到。它创建了一个叫做“garland_width”的可以用来设置固定或者流体的设置。快捷方式模块还提供了设置在Seven主题里的遮罩层内的标题旁边提供小图标以显示“添加或删除快捷方式链接”。要学习如何为您的主题创建自定义主题设置,请访问http://drupal.org/node/177868。