Drupal 7 开发内部培训资料, 分头诗人

做主题遇到个问题,不懂 模板绝对路径

赞成!
0
否决!

使用zen主题时<?php print $base_path . $directory ?> 可以输出模板的绝对路径

但是使用stark无法输出模板的绝对路径 需要<?php  print base_path() . drupal_get_path("theme","stark"); ?>使用这种模式

1 个回答

赞成!
0
否决!

在Zen 里面的 template.php 定义了

1
2
3
4
5
6
7
8
function zen_preprocess_html(&$variables, $hook) {
  // Add variables and paths needed for HTML5 and responsive support.
  $variables['base_path'] = base_path();
  $variables['path_to_zen'] = drupal_get_path('theme', 'zen');
  $html5_respond_meta = theme_get_setting('zen_html5_respond_meta');
  $variables['add_respond_js']          = in_array('respond', $html5_respond_meta);
  $variables['add_html5_shim']          = in_array('html5', $html5_respond_meta);
  $variables['default_mobile_metatags'] = in_array('meta', $html5_respond_meta);

 

1
2
3
4
5
  // If the user is silly and enables Zen as the theme, add some styles.
  if ($GLOBALS['theme'] == 'zen') {
    include_once './' . $variables['path_to_zen'] . '/zen-internals/template.zen.inc';
    _zen_preprocess_html($variables, $hook);
  }

 

看到:

1
$variables['base_path'] = base_path();

 

1
include_once './' . $variables['path_to_zen'] . '/zen-internals/template.zen.inc';