回答:
デフォルトではあるとは思いませんが、template.phpファイルに簡単に追加できます:
function MYTHEME_preprocess_node(&$vars) {
if($vars['view_mode'] == 'teaser') {
$vars['theme_hook_suggestions'][] = 'node__' . $vars['node']->type . '__teaser';
$vars['theme_hook_suggestions'][] = 'node__' . $vars['node']->nid . '__teaser';
}
}
次のようなテンプレートファイルを使用できます。 node--[type|nodeid]--teaser.tpl.php
これを行うには、エンティティビューモードモジュールを使用する簡単な方法があります。
https://www.drupal.org/project/entity_view_mode
The Drupal 7 successor to Build modes which will allow administrators to
define custom view modes for entities. Custom entities are added to the
entity registry via hook_entity_info_alter() so they are available to any code
that uses entity_get_info() to provide a list of view modes for an entity.
This includes node and user reference fields, Views, etc.
It also ensures consistency for template suggestions for all entity types,
so that you can use any of the template patterns, in order of most specific
to least specific:
entity-type__id__view-mode
entity-type__id
entity-type__bundle__view-mode
entity-type__bundle
entity-type
「ティーザー」ビューモードのテンプレートの提案は次のとおりです。
node--[type]--teaser.tpl.php
デフォルトでは、「ティーザー」表示モードでは通常のnode.tpl.php
テンプレートが使用されるため、そのファイルをコピーして開始できます。
すべてのテンプレートの提案を表示するには、theme_debug
モードをオンにします(https://www.drupal.org/node/223440#theme-debug
あなたはときに、ソースを表示:ページにあなたはDrupalはみなさテンプレートの提案のショーはリスト全体というHTMLのコメントが表示されるはずです。
Cliveのソリューションは正しいです。ただし、デフォルトの提案の後に新しい提案を評価する場合は、配列の最後の位置に追加する必要があります。
function MYTHEME_preprocess_node(&$vars) {
if($vars['view_mode'] == 'teaser') {
array_unshift($vars['theme_hook_suggestions'], 'node__' . $vars['node']->type . '__teaser');
array_unshift($vars['theme_hook_suggestions'], 'node__' . $vars['node']->nid . '__teaser');
}
}
このようにして、teaserノードがnode-[type]-teaser.tpl.phpの前にnode-[type] .tpl.phpに一致する(存在する場合はそれを使用する)ことを回避します。