Summary:
PHPTemplate overrides are ignored when theming nodes that include hook_nodeapi additions

Steps to reproduce:

  1. Using the ecommerce module, create a few products out of image nodes
  2. In template.php, add an override to theme_node_product, without otherwise modifying the code for that theme function:
          function phptemplate_node_product($node, $teaser = 0, $page = 0) {
          	[...original contents of theme_node_product goes here... (from product.module, line 13)]
          	return $node;
          }
    

Result:

  • When viewing a page of teasers (e.g.: ?q=product), the product's price is only appended to node->teaser for the first node.
  • WHen the theme function is left alone, internal to the module, the price is appended to all of the teasers.

configuration:

  • Drupal v4.7 RC1
  • PHPTemplate
  • PHP v5.1.2