Drupal面板,缺少“编辑面板”选项卡

问题描述

| 切换主题时,我发现有些奇怪的地方。在花环中,我可以看到“视图”和“编辑面板”标签按钮;但是当我切换回自定义主题时,它消失了。 我已经有了选项卡行:
<?PHP if ($tabs): print \'<ul class=\"tabs primary\">\'. $tabs .\'</ul></div>\'; endif; ?>
但是它只是没有出现。这是为什么? 这是page.tpl.PHP的一些代码
    <div class=\"main-container\">
<div class=\"mcontent\">
        <div id=\"content-header\">
      <?PHP if ($mission): print \'<div id=\"mission\">\'. $mission .\'</div>\'; endif; ?>
      <?PHP if ($tabs): print \'<div id=\"tabs-wrapper\" class=\"clear-block\">\'; endif; ?>
      <?PHP if ($title): print \'<h2\'. ($tabs ? \' class=\"with-tabs\"\' : \'\') .\'>\'. $title .\'</h2>\'; endif; ?>
      <?PHP if ($tabs): print \'<ul class=\"tabs primary\">\'. $tabs .\'</ul></div>\'; endif; ?>
      <?PHP if ($tabs2): print \'<ul class=\"tabs secondary\">\'. $tabs2 .\'</ul>\'; endif; ?>
      <?PHP if ($show_messages && $messages): print $messages; endif; ?>
      <?PHP print $help; ?>
        </div> <!-- /#content-header -->

<?PHP print $content; ?> 
</div>
</div>
    

解决方法

        到目前为止,我已经在许多自定义主题中使用了该代码,而没有任何问题。 在没有看到站点/您的代码的情况下很难知道,但是有两种可能: 清除缓存(性能>清除站点缓存) 确保$ tabs变量位于
page.tpl.php
中,而不是
node.tpl.php
中。 可能是其他情况(但如果其他主题正在工作,则可能不会): 您的用户无权使用该输入格式(PHP代码,完整HTML等) 该会话无法正常工作,或者您在这些页面上被注销了(当然,例如,如果显示管理菜单,您会立即看到此消息。我已经看到这种情况发生在某些设置中,虽然) 通常,代码位于错误的位置,被隐藏/模糊(通过CSS /页面格式设置)或该人无权查看。 如果以上方法均无效,则可能要重建权限(在Drupal 6中,“内容管理”>“帖子设置”>“重建权限”),或尝试启用现有权限来查看这是否是罪魁祸首。     ,        我雇了一个人解决此问题,这是完成的操作:
    <?php
/**
* Override of theme_menu_local_tasks().
* Add argument to allow primary/secondary local tasks to be printed
* separately. Use theme_links() markup to consolidate.
*/
function kidstoria_menu_local_tasks($type = \'\') {
  if (module_exists(\'ctools\')) {

    if ($primary = ctools_menu_primary_local_tasks()) {
        $primary = $primary;
      }
      if ($secondary = ctools_menu_secondary_local_tasks()) {
        $secondary = $secondary;
      }
  }
  else
  {

    if ($primary = menu_primary_local_tasks()) {
        $primary = $primary;
      }
      if ($secondary = menu_secondary_local_tasks()) {
        $secondary = $secondary;
      }

  }

  switch ($type) {
    case \'primary\':
      return $primary;
    case \'secondary\':
      return $secondary;
    default:
      return $primary . $secondary;
  }
}