我知道如何做到这一点在D6,使用一个图像缓存功能的覆盖。
但是现在,在D7中,我只是使用核心的图像字段(如我们在文章内容类型中)。
在我的template.php,我补充说
function bartik_image($variables) {
$variables['attributes']['target'] = "_blank";
$attributes = $variables['attributes'];
$attributes['src'] = file_create_url($variables['path']);
foreach (array('width', 'height', 'alt', 'title', 'target') as $key) {
if (isset($variables[$key])) {
$attributes[$key] = $variables[$key];
}
}
return '<img' . drupal_attributes($attributes) . ' />';
}
我得到新的属性,但它不会改变链接。
如何进行?
注释
评论#1
bfroehle 信用归属: bfroehle评论实际的链接是用图像周围的A标签完成的。
产生图像和链接的主题函数是
theme_image_formatter()。
你能用一个预处理器函数来完成这个吗?就像是
评论#2
sahuni 信用归属: sahuni评论正是这样,非常感谢!
评论#3
bfroehle 信用归属: bfroehle评论听到那个消息很开心。:)
评论#5
Peasoup 信用署名: Peasoup评论嘿:)
对不起重新打开一个封闭的问题,但这正是我也想做,但显然我做错了。我在我的template.php的末尾添加了bfroehle的代码(当然除了php标签),但没有改变。我究竟做错了什么?
(我使用bartik的“subheme”,基本上只是一个克隆的网站/所有/主题,有小的更改,这适用)
谢谢!
评论#6
贾维斯武库夫 信用署名:贾维斯武库夫评论嘿,
我在寻找类似的东西,但不想添加'_blank'目标到所有“a”标签,所以我在我的模块中添加了以下代码。希望这有助于别人。
谢谢,
评论#7
jond 信誉归属: jond评论jarvislukow,你添加这个作为一个自定义模块,或在template.php文件?
来自 https://www.drupal.org/node/1096228