Mat*_*man 2 drupal-7 imagefield
我已将图像字段添加到内容类型"基本页面",并使用"管理显示"选项将其显示在页面顶部.然而,图像上没有样式,我不能为我的生活弄清楚如何在图像中添加一个类,以便我可以添加样式.
小智 19
如果定位CSS是您唯一的需求,上述答案会有所帮助.但我需要在IMG标签中添加一个类句.这是我解决问题的方式.这可能不是最好的方式,当然不是唯一的方式,但它是一种有效的"Drupal方式"并且有效.打开模板的template.php文件.
粘贴以下功能,您必须修改并根据您的使用场景进行自定义.例如,您必须替换<TEMPLATENAME>
为模板名称,并根据需要添加或减去类,以及其他内容,如您所见.
function <TEMPLATENAME>_preprocess_image(&$variables) {
// If this image is of the type 'Staff Photo' then assign additional classes to it:
if ($variables['style_name'] == 'staff_photo') {
$variables['attributes']['class'][] = 'lightbox';
$variables['attributes']['class'][] = 'wideborder';
}
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个"if"语句来确定何时应该将类添加到图像中,但是你必须自定义它,如果你想在所有图像场图像上使用类,或者你可能会说"如果drupal_is_front_page()",如果你只想在首页上应用它等.
在我的例子中,我为Staff Photos创建了一个图像样式(Configuration> Media> Image Styles),并添加了if子句,仅将我喜欢的类应用于指定图像样式的图像.我认为这是一个很好的方式,但你可以做你喜欢的事.
现在,每当我查看包含图像样式为"Staff Photo"的图像字段的节点时,这些类就会神奇地出现在IMG标记中,这正是我所需要的.