我在Drupal 7中有一个视图,它呈现一个nodequeue。现在,如果图像在该节点主体字段内可用,我希望每个节点都使用标题,文本摘要和图像进行渲染。
我正在考虑创建一个使用正则表达式的模块,如:
/<img.+src="([^"]+)/i
...在该节点的正文字段中找到第一个图像,并将其显示为视图字段,并将该字段称为“内容:第一个图像”。
我还希望有图像样式选项等。可用于现有的图像字段。
我应该如何创建这样的模块,我应该使用哪些钩子使该字段可用于视图?
答案 0 :(得分:0)
我会使用字段模板来完成此操作。 创建一个正文字段,然后在其上应用模板。像这样:
<?php
preg_match_all("/<img[^']*?src=\"([^']*?)\"[^']*?>/", $output, $image);
if(isset($image[1][0]) && trim($image[1][0])!='') {
echo theme('image_style', array('style_name' => 'Large', 'path' => $image[1][0]));
}
?>
您还可以使用显示套件代码字段获得相同的结果。