尽管与 Drupal 打交道很长时间,但我对 Drupal7 模板感到很陌生。我正在编写一个 node--product.tpl.php ,我需要完整版本的节点正文和要显示的预告片。如果网站所有者没有专门定义预告片,我希望出现一个修剪版本的正文而不是那个预告片。
每个的代码是这样的:
全身
print render($content['body']);
修剪过的身体
print "substr(render($content['body']), 0, 100);
预告片
$body = field_get_items('node', $node, 'body');
$teaser = field_view_value('node', $node, 'body', $body[0],'teaser');
print render($teaser]);
一切都还好,直到这里。
现在的问题是猜测是否有任何预告片。第一次在没有预告片的情况下创建节点时, $teaser="" 所以我检查它
if (strlen(render($teaser])) > 1) { //there's a teaser -> print teaser }
但是,如果有预告片并且它已被删除,那么它会显示出预告片与全身相同。:-(
所以,简而言之:检查是否创建了预告片的正确方法是什么?
提前感谢,臀部
顺便说一句:我发誓我已经检查过 Stackoveflow.com 内外的论坛,我创建的只是模块、复杂的问题......