Answers:
您也可以通过创建自定义模块来执行此操作。
方法1
如果要基于Drupal的内部路径(即路径源)为现有页面设置主题,请使用此样式。本示例使用hook_custom_theme。
<?php
function MYMODULE_custom_theme() {
// match node/1
if (arg(0) == 'node' && arg(1) == '1') {
return variable_get('admin_theme');
}
}
方法2
如果要基于URL路径(也称为路径别名)为现有页面设置主题,请使用此选项。此示例还使用hook_custom_theme。
<?php
function MYMODULE_custom_theme() {
// get arguments
$arg = explode('/', substr(request_uri(), strlen(base_path())));
// match {wildcard}/path
// Using strpos as $arg[1] may end up having stuff like so ?order=title&sort=asc
if (isset($arg[1]) && strpos($arg[1], 'path') !== false && !isset($arg[2])) {
return variable_get('admin_theme');
}
}
方法3
如果要主题化和创建页面,请使用此选项。本示例使用hook_menu。要了解更多信息,请查看关于hook_menu的另一篇很棒的文章。
<?php
function MYMODULE_menu() {
$items = array();
// match some/path
$output['some/path'] = array(
'title' => t('Page Title'),
'page callback' => 'MYMODULE_page',
'theme callback' => 'variable_get',
'theme arguments' => array('admin_theme'),
)
}
function MYMODULE_page() {
return 'Hello world.';
}
如果您是模块开发人员,则可以使用hook_admin_paths定义要使用管理主题呈现的路径。