2011-12-01 116 views
2

不工作,我有以下PHP代码中使用全局我的观点:PHP场的Drupal 7 drupal_set_title的意见

<?php 
drupal_set_title($row->title); 
?> 

我的顺序使用PHP面前的标题字段。

我敢肯定,这曾经工作,但不是现在......任何想法为什么。我在视图中需要这个,因为我在加载时获取内容的标题(基于上下文过滤器),我希望它成为页面标题。

如果这是不行的话......还有其他的方法吗?

+1

我需要这个我正在构建的元标记模块,我发现除非标题被设置在预处理钩子中(例如hook_preprocess_html),否则就太迟了。希望别人能够帮助,但这是我在尝试这个时发现的。 – SpaceBeers

+0

我认为它只返回单一结果?此方法在D6中可以正常工作,无论是块还是页面视图(我都快速测试过)。有没有机会再次重写冠军头衔?这可能是一个想法(如果你有xdebug)在''drupal_get_title()''中放入'xdebug_get_function_stack()'。 – Andy

回答

9

不知道这是否是一个错误,但我做了类似的尝试,并尝试使用drupal_set_title()hook_preprocess_views_view(),没有运气。我最终做了这个,而不是为我工作。

<?php 
function my_module_preprocess_views_view(&$vars) { 
    // My view 
    if ($vars['view']->name == 'my_view') { 
    // Code to dynamically set title here... 

    // Override view's title, drupal_set_title() was no longer working 
    // it didn't work in views Global block either. 
    $vars['view']->build_info['title'] = $my_title; 
    } 
} 
?> 
+0

它的工作原理!谢谢!!! – Pupil

+0

不适用于Drupal Commerce – andrewtweber