根据url命名Drupal 7模板文件

时间:2011-07-03 02:41:08

标签: drupal templates

如果我的网址的网址别名为“/ api / user / create”,我如何根据网址命名模板文件,例如“page-api-user-create.tpl.php”。

2 个答案:

答案 0 :(得分:4)

您需要为其命名:

page--api--user--create.tpl.php

(注意文件名中的双击)。

有关详细信息,请参阅http://drupal.org/node/1089656

答案 1 :(得分:0)

您可以设置页面级模板文件以反映网址,正如Maciej Zgazdaj所解释的那样。

要对节点级模板文件执行相同操作,您必须将其添加到template.php文件中:

function YOURTHEME_preprocess_node(&$variables) {

    $url = str_replace("-", "", $variables['node_url']);
    $urlParts = explode("/", $url);
    unset($urlParts[0]);

    if($urlParts[1] !== false) {
    $out = array();
    $sug = "node";

    foreach($urlParts as $val) {
        $sug .= "__".$val;
        $out[] = $sug;
    }

    $variables['theme_hook_suggestions'] = 
        array_merge($variables['theme_hook_suggestions'], $out);

    }
}

将你的主题替换为你的主题。使用devel_themer检查提供的建议。