正如标题所说,
我需要知道任何drupal页面中使用的主题的名称。
例如,我们可以基本为drupal站点设置默认主题和管理主题。现在,我们只考虑这一部分,而不是进入用户特定的主题。
所以在上面的例子中,主页将使用default_theme加载,当你对任何管理页面进行加载时,它们将加载到admin_theme(7 / bartik)。
现在我的问题是当我导航到网站的任何页面时,我需要知道正在加载什么主题。可以是节点/添加或节点/编辑或admin / *或页面/ *或任何页面。
当我转到任何页面时,我都知道该页面中使用的主题名称以及我可以写出条件的挂钩。
基于此我想做一些改变。
我尝试使用globals $ theme,path_to_theme,drupal_get_path等
当我使用它们时,它们总是返回默认主题名称,而不是特定页面中使用的主题。
我在hook_preprocess_html中为$ variables编写了exit语句,只有当页面是普通用户页面时才退出返回值。但不是像sitename / admin / content等。,
这样的管理页面任何可以提供帮助的人。
提前致谢
答案 0 :(得分:1)
创建一个自定义模块,并将您的代码放在 .module 中的 function hook_init(){} 中。
没有参数。
function example_init() {
global $theme;
print $theme.'<br />'; // current theme name
print $GLOBALS['theme'].'<br />'; // current theme name
$theme_path = drupal_get_path('theme', $GLOBALS['theme']);
print $theme_path.'<br />'; // path to current theme
}