Drupal 7 覆盖自定义内容页标记Drupal 7

Drupal 7 覆盖自定义内容页标记Drupal 7,drupal-7,overriding,content-type,Drupal 7,Overriding,Content Type,虽然我在这里看到了关于这个主题的一些“干净”的答案,但在我的案例中仍然不起作用,具体如下:在Drupal 7中,有一个完全定制的主题,我创建了一个机器名为cco_product的定制内容。我要覆盖为此内容类型生成的页面的页面标记。我试过了,根据文件, page--tmemes文件夹中的cco_product.tpl.php,基于/module/system/page.tpl.php,但此文件顶部的“我的Hello world”不会显示。 感谢您的帮助首先,请尝试清理缓存,如果没有帮助,我建议您查

虽然我在这里看到了关于这个主题的一些“干净”的答案,但在我的案例中仍然不起作用,具体如下:在Drupal 7中,有一个完全定制的主题,我创建了一个机器名为cco_product的定制内容。我要覆盖为此内容类型生成的页面的页面标记。我试过了,根据文件, page--tmemes文件夹中的cco_product.tpl.php,基于/module/system/page.tpl.php,但此文件顶部的“我的Hello world”不会显示。
感谢您的帮助

首先,请尝试清理缓存,如果没有帮助,我建议您查看页面的模板数组。可能您的某个模块或自定义主题会覆盖模板数组,如下所示:

function MYTHEME_preprocess_page(&$variables, $hook) {   
   //Add multiple suggestions for pages based on Node
   if(arg(1) == 3) {  //For node 3
    $variables['theme_hook_suggestions'][] =  'page__contact';
   } if(arg(1) == 4) {   //For node 4
    $variables['theme_hook_suggestions'][] =  'page__about';
   }
}

完成后,是node--cco_product.tpl.php。而且,根据自己的经验,在测试覆盖是否有效之前,请清除缓存!!谢谢,从建议中获取信息是真的。我指的是为这些案例找到一种Drupal命名约定。最终,我很快就找到了正确的匹配节点--product.tpl.php。