【问题标题】:What is the correct way to change the active Drupal theme programmatically?以编程方式更改活动 Drupal 主题的正确方法是什么?
【发布时间】:2010-10-21 19:00:44
【问题描述】:

以编程方式更改活动 Drupal 主题的正确方法是什么?

【问题讨论】:

  • “以编程方式更改主题”是什么意思。为网站自定义可下载主题?更改主题而不修改其文件或其他内容?
  • 已编辑问题以澄清。我的意思是如何更改活动主题。

标签: php drupal drupal-themes


【解决方案1】:

编辑:这是一个更简单的例子。

无论主题设置如何,它都使用 Garland。请注意,这也会覆盖管理员主题设置。

function MODULENAME_init(){
    global $custom_theme;
    $custom_theme = 'garland';
}

编辑:全局更改。

如果您的意思是更改数据库中的主题设置,而不仅仅是在当前页面上,方法如下:

// Changes the theme to Garland
variable_set('theme_default', 'garland');

// Changes only the administration theme to Garland
variable_set('admin_theme', 'garland');

【讨论】:

  • 全局 $custom_theme 变量可能是您正在寻找的,但应该尽早修改它以使整个页面只使用一个主题,而 hook_init 是一个很好的位置。
  • 如果您只想激活管理主题怎么办?
猜你喜欢
  • 1970-01-01
  • 2013-09-07
  • 1970-01-01
  • 2019-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多