2011-07-22 86 views
1

...好的......所以......我只是需要“清除缓存”之后。我认为,因为我没有缓存(网站正在开发),我不需要清除它。错误。drupal 7自定义内容类型和模板

的解决方案是:

添加文件节点 - 我的内容,type.tpl.php,去管理»配置»开发然后单击清除缓存按钮。

我希望这可以帮助别人不花时间解决这个相同的问题!

使用Drupal 7.2,我创建了一个自定义内容类型'my_custom_type,我不能为我的生活弄清楚如何为我的自定义类型创建自定义模板。目前我的模板文件只是打印“你好世界”,但没有运气显示它。我试过这些组合的东西:

  1. 把node-my-custom-type.tpl.php放到我的主题的templates目录中。这没有用。所以我研究后,在templates.php将此添加到我的THEME_preprocess_page()函数:

    if (isset($variables['node'])) { 
    
        $variables['template_files'][] = 'node--'. 
                str_replace('_', 
                   '-', 
                   $variables['node']->type); 
    
    } 
    
  2. 把同样的代码在THEME_preprocess_node()没有如果,所以:

    $variables['template_files'][] = 'node--'. 
                str_replace('_', 
                   '-', 
                   $variables['node']->type); 
    
  3. 两个但在我的tpl.php文件在基本模板目录中:/ modules/node/

任何帮助将非常感激。我完全丧失了。

此外,我在/modules/node/node.tpl.php中添加了“what what”,并打印了..也许这是因为内容类型不是节点?但那么如何为内容类型创建默认模板?

回答

4

不建议修改核心文件。请参阅http://drupal.org/best-practices/do-not-hack-core。我不知道这是你在做什么,但如果你是...

你应该做的,而不是创建一个subtheme。请参阅参考指南http://drupal.org/node/225125http://drupal.org/node/171194

通常您会将您的自定义主题文件放入/sites/all/themes/custom/subtheme_name/ node--my-custom-type.tpl.php

请记住清除您的缓存在http://yoursite.com/admin/config/development/performance,以便您的新模板文件被识别。

+0

实际上,没有。这非常简单:......好的......所以......我只需要在所有这些之后“清除缓存”。我认为,因为我没有缓存(网站正在开发),我不需要清除它。错误。 解决方案是: in/sites/all/themes/mytheme/templates /添加文件节点--my-content-type.tpl.php和Administration»Configuration»Development»clear cache。 我希望这可以帮助别人不花时间解决这个相同的问题! – Rebecca

0

如果您想避免必须始终清除缓存,则可以安装http://drupal.org/project/devel并选择在每个请求中重建主题注册表。

请务必在您的网站上线之前将其关闭,因为启用它会导致其巨大的性能。